servicenow-api
ServiceNow MCP Server and API Wrapper
claude mcp add --transport stdio knuckles-team-servicenow-api uvx servicenow-api \ --env SNOW_INSTANCE="ServiceNow instance URL (e.g., https://instance.service-now.com)" \ --env SNOW_PASSWORD="ServiceNow password for authentication" \ --env SNOW_USERNAME="ServiceNow username for authentication" \ --env SNOW_API_TOKEN="Optional API token for authentication"
How to use
This MCP server wraps the ServiceNow API suite into a modular, agent-based interface that can be accessed by any MCP-capable LLM or agent framework. It exposes a set of MCP Tools corresponding to common ServiceNow domains (e.g., Incident, CMDB, Change Management, Knowledge Base, and more). You can use the Supervisor Agent to route queries to specialized child agents, each focused on a domain like incidents or CMDB, enabling parallel, context-aware tool usage without exposing the full API surface to the语言 model. The server is designed to work behind authentication middleware and with optional policy controls, so you can tailor access to different tools and endpoints as needed.
To interact with it, start the server using uvx servicenow-api (as configured in your environment). Once running, you can invoke MCP tools by specifying the tool name (for example, get_cmdb, batch_install, or full_scan) through your MCP-enabled client. If a direct MCP tool call isn’t exposed or you need to reach a non-mapped endpoint, you can fall back to the generic api_request tool to perform GET/POST/PUT/DELETE requests against a ServiceNow endpoint. The A2A (Agent-to-Agent) interface is available for composing complex workflows where multiple child agents handle subtasks in parallel, improving speed and reducing token usage for long conversations.
How to install
Prerequisites:
- Python 3.8+ installed on the host
- Network access to the ServiceNow instance (per your SNOW_INSTANCE config)
Installation steps:
-
Create and activate a Python virtual environment (optional but recommended): python -m venv venv source venv/bin/activate # on Unix/macOS venv\Scripts\activate # on Windows
-
Install the MCP server package from PyPI: pip install servicenow-api
-
Start the MCP server using the uvicorn/uvx route as described in your environment: uvx servicenow-api
-
Verify the server is running and listening on the configured host/port, then connect your MCP client to the server URL and begin issuing MCP Tool calls like get_cmdb, full_scan, or batch_install.
Notes:
- Ensure your environment variables for SNOW_INSTANCE, SNOW_USERNAME, SNOW_PASSWORD (or SNOW_API_TOKEN) are set prior to starting the server.
- If you need to customize middleware, authentication, or policy controls, adjust the server configuration accordingly.
Additional notes
Tips and common considerations:
- Carefully manage credentials; prefer API tokens or OAuth where possible to reduce credential exposure.
- When using A2A with multiple child agents, ensure each child agent has access only to the tools it needs to minimize token usage and isolate capabilities.
- If you encounter connectivity issues, verify that the SNOW_INSTANCE URL is reachable from the host running the MCP server and that firewall rules allow outbound API calls.
- Use the api_request tool for endpoints not explicitly wrapped by MCP Tools to maintain flexibility.
- Review tool names and tags in the MCP Tools catalog (e.g., get_cmdb, batch_install, full_scan) to craft precise queries and workflows.
Related MCP Servers
mcp-neo4j
Neo4j Labs Model Context Protocol servers
Gitingest
mcp server for gitingest
zotero
Model Context Protocol (MCP) server for the Zotero API, in Python
fhir
FHIR MCP Server – helping you expose any FHIR Server or API as a MCP Server.
sympy
A MCP server for symbolic manipulation of mathematical expressions
mcp-oi-wiki
🌟 Wiki of OI / ICPC for LLMs. (面向大模型的某大型游戏线上攻略,内含炫酷算术魔法)