ServiceNow Incident MCP
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@ServiceNow Incident MCPfind all open incidents assigned to me and list their numbers"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
ServiceNow Incident MCP
FastMCP server exposing 6 ServiceNow incident tools over streamable HTTP at /mcp.
The caller's bearer token is forwarded straight to ServiceNow — no credentials are stored server-side, and every call runs under the ACLs of whoever the token belongs to.
Tool | Purpose |
| search with a ServiceNow encoded query |
| fetch by |
| new incident |
| patch arbitrary fields |
| append a work note or customer comment |
| state=6 + close_code + close_notes in one write |
Run it
uv sync
uv run --env-file .env server.py # http://localhost:8000/mcpOr in a container:
docker build -t servicenow-mcp .
docker run -p 8000:8000 -e SERVICENOW_INSTANCE_URL=https://dev12345.service-now.com servicenow-mcpCall it with Authorization: Bearer <servicenow-oauth-token>:
eval "$(uv run --env-file .env login.py)" # browser login, returns a token
SERVICENOW_TOKEN=$SERVICENOW_TOKEN uv run test_client.py.env needs SERVICENOW_INSTANCE_URL, plus SN_CLIENT_ID / SN_CLIENT_SECRET for login.py.
The server itself only reads SERVICENOW_INSTANCE_URL.
Related MCP server: ServiceNow MCP Server
Test
uv run test_server.py # offline self-check: token extraction, path-traversal rejectionDocs
uv run --group docs mkdocs serve -a 127.0.0.1:8001Covers the passthrough pattern, ServiceNow setup and its traps, the tool reference, troubleshooting, design decisions, and a build log.
Branches
master— this: a plain HTTP MCP server, no cloud couplingbedrock-agentcore— a working deployment to AWS Bedrock AgentCore Runtime, with IAM SigV4 inbound auth and one-command teardownjwt-inbound-auth— an experiment in using the ServiceNow token as the AgentCore inbound JWT. It does not work, and the branch records why
This server cannot be deployed
Maintenance
Related MCP Connectors
Manage incidents and on-call: list/create/update incidents, who is on call, on-call overrides.
Connect AI agents to ProductNow's context engine to search, create, review, and act.
Task management for people and AI agents, with scoped OAuth access to issues, projects, and docs.
Task management for people and AI agents, with scoped OAuth access to issues, projects, and docs.
Related MCP Servers
- AlicenseBqualityNot gradedmaintenanceEnables Claude to interact with ServiceNow instances through the ServiceNow API. Supports comprehensive ServiceNow operations including incident management, service catalog management, change requests, user management, and workflow automation through natural language.82MIT
- AlicenseNot gradedqualityNot gradedmaintenanceEnables Claude to interact with ServiceNow instances for incident management, service catalog operations, change requests, knowledge base management, user administration, and agile project workflows through various authentication methods.MIT
- AlicenseNot gradedqualityDmaintenanceEnables authenticated interaction with ServiceNow via its REST API using per-user OAuth 2.0 tokens. It provides tools for managing incidents, tasks, knowledge articles, and service catalog requests while maintaining user-specific permissions.16 npm4MIT
- FlicenseNot gradedqualityDmaintenanceEnables Claude to interact with ServiceNow instances for incident management, knowledge base search, and JWT authentication.-