Installation¶
servicenow-api is a standard Python package and a prebuilt container image. Pick the
path that matches how you want to run it.
Requirements¶
- Python 3.11 – 3.14.
- A reachable ServiceNow instance and credentials — ServiceNow is a managed SaaS platform, so only connection configuration is required (see Deployment).
From PyPI (recommended)¶
Optional extras¶
The base install ships the typed REST client. Install the extra for what you need:
| Extra | Install | Pulls in |
|---|---|---|
mcp |
pip install "servicenow-api[mcp]" |
FastMCP MCP-server runtime (agent-utilities[mcp]) |
agent |
pip install "servicenow-api[agent]" |
Pydantic-AI agent server + Logfire tracing |
all |
pip install "servicenow-api[all]" |
Everything above (MCP + agent + Logfire) |
test |
pip install "servicenow-api[test]" |
pytest, pytest-asyncio, pytest-cov, pytest-xdist |
From source¶
git clone https://github.com/Knuckles-Team/servicenow-api.git
cd servicenow-api
pip install -e ".[all]" # editable install with every extra
With uv:
Prebuilt Docker image¶
A multi-stage, slim image is published on every release (entrypoint servicenow-mcp):
docker pull knucklessg1/servicenow-api:latest
docker run --rm -i \
-e SERVICENOW_INSTANCE=https://your-instance.service-now.com \
-e SERVICENOW_USERNAME=admin \
-e SERVICENOW_PASSWORD=your_password \
knucklessg1/servicenow-api:latest # stdio transport (default)
For an HTTP server with a published port and the agent server, see Deployment.
Verify the install¶
Next steps¶
- Deployment — run it as a long-lived MCP / agent server behind Caddy + DNS.
- Usage — call the tools, the API, and the command line.
- Configuration — every environment variable.