home / mcp / servicenow mcp server
MCP Server for ServiceNow
Configuration
View docs{
"mcpServers": {
"echelon-ai-labs-servicenow-mcp": {
"command": "python",
"args": [
"-m",
"servicenow_mcp.cli"
],
"env": {
"MCP_TOOL_PACKAGE": "catalog_builder",
"SERVICENOW_PASSWORD": "your-password",
"SERVICENOW_USERNAME": "your-username",
"SERVICENOW_AUTH_TYPE": "basic",
"SERVICENOW_INSTANCE_URL": "https://your-instance.service-now.com"
}
}
}
}You can connect Claude to ServiceNow through a dedicated MCP (Model Completion Protocol) server, enabling you to query data, manage records, and run workflows from within Claude. This server acts as a bridge between ServiceNow and your MCP client, providing a secure, streamlined way to interact with ServiceNow data and operations.
You run the MCP server locally and connect your MCP client (such as Claude) to it. Use the standard or SSE (Server-Sent Events) transport to send requests for incidents, service catalog items, changes, knowledge articles, users, and more. Start in standard mode to communicate over a simple local process, or start in SSE mode to expose a web endpoint for broader integration. Use the available tools to create, read, update, and delete records, or run catalog optimizations and workflow actions as needed.
To begin, ensure you have your ServiceNow instance URL, a valid set of credentials, and the correct authentication method. Configure the MCP client to point at your local MCP server process. Then issue natural language or structured prompts to perform actions such as creating incidents, querying catalog items, or updating change requests. You can also use the example prompts to guide your workflow and test responses.
Prerequisites
- Python 3.11 or higher
- A ServiceNow instance with appropriate access credentials
Setup steps
# 1) Clone the MCP server repository
git clone https://github.com/echelon-ai-labs/servicenow-mcp.git
cd servicenow-mcp
# 2) Create and activate a virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# 3) Install the MCP server package in editable mode
pip install -e .
# 4) Create a configuration file with ServiceNow credentials
# Example values should be replaced with real credentials
cat > .env << 'ENV'
SERVICENOW_INSTANCE_URL=https://your-instance.service-now.com
SERVICENOW_USERNAME=your-username
SERVICENOW_PASSWORD=your-password
SERVICENOW_AUTH_TYPE=basic # or oauth, api_key
ENVTool packaging and environment variables help tailor what you expose to Claude. You can enable a subset of tools by setting MCP_TOOL_PACKAGE to a named package (for example, catalog_builder). If you don’t set this variable, the full package is loaded by default. You can also explicitly load none of the tools by setting MCP_TOOL_PACKAGE=none (which disables most tools except list_tool_packages).
Environment variables you may need include the ServiceNow credentials and the authentication type, plus optional variables for tool packaging. The following are shown as examples:
# Example environment configuration
SERVICENOW_INSTANCE_URL=https://your-instance.service-now.com
SERVICENOW_USERNAME=your-username
SERVICENOW_PASSWORD=your-password
SERVICENOW_AUTH_TYPE=basic
# Optional: limit exposed tools to a package
MCP_TOOL_PACKAGE=catalog_builderIf you encounter issues starting the server, verify that your credentials are correct and that the chosen authentication type matches what your ServiceNow instance accepts. Ensure the environment is using Python 3.11 or newer and that the virtual environment is activated when launching the MCP server.
After starting the MCP server, you can ask Claude to perform actions such as creating incidents, listing catalog items, or updating change requests. For example: create an incident for a network outage, or list catalog items in the Hardware category.
Create a new incident in ServiceNow
Update an existing incident in ServiceNow
List incidents from ServiceNow
List service catalog items from ServiceNow
Get a specific service catalog item from ServiceNow
List service catalog categories from ServiceNow
Create a new service catalog category in ServiceNow
Update an existing catalog category in ServiceNow
List knowledge articles with filtering options
Get a specific knowledge article by ID
Create a new change request in ServiceNow
Update an existing change request
List change requests with filtering options
Get detailed information about a specific change request
Approve a change request
Reject a change request
Create a new workflow in ServiceNow
List workflows from ServiceNow
Get a specific workflow from ServiceNow
Update an existing workflow
Delete a workflow from ServiceNow
List script includes from ServiceNow
Get a specific script include from ServiceNow
Create a new script include in ServiceNow
Update an existing script include in ServiceNow
Delete a script include from ServiceNow
List changesets from ServiceNow with filtering options
Get detailed information about a specific changeset
Create a new changeset in ServiceNow
Commit a changeset
Publish a changeset
Add a file to a changeset
List knowledge bases with filtering options
Create a new knowledge base in ServiceNow
List users with filtering options
Create a new user in ServiceNow
Get a specific user by ID, username, or email
List groups with filtering options
Create a new group in ServiceNow
Add members to a group in ServiceNow
Remove members from a group in ServiceNow
List all variables for a catalog item
Update an existing variable for a catalog item
Create a new variable for a catalog item
List changesets from ServiceNow with filtering options
Get a specific catalog item from ServiceNow