mcpField
M
MCP Server for ServiceNow

MCP Server for ServiceNow

Local
github.com/mady22070AI & Agents0Updated 31w ago

About MCP Server for ServiceNow

An MCP server that exposes ServiceNow operations to Claude and other MCP clients. Its domain-based tool packs cover ITSM, CMDB, development, integrations, and workflow tasks, with stdio and HTTP transports.

Key features

  1. 01ITSM incident and change tools
  2. 02CMDB and discovery operations
  3. 03Development and data-management tools
  4. 04Workflow and integration tools
  5. 05Optional RAG knowledge search
  6. 06stdio and HTTP transports

Use cases

  1. 01Handling incidents and service requests
  2. 02Managing CMDB and discovery tasks
  3. 03Working with ServiceNow development tools
  4. 04Searching ServiceNow knowledge semantically

MCP support

Exposes ServiceNow functionality as tools for MCP clients. Supports stdio and HTTP transports.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

servicenow-mcp

An MCP (Model Context Protocol) server that lets Claude interact with a ServiceNow instance. Exposes ServiceNow functionality as tools Claude can call directly from Claude Desktop or any MCP-compatible client.

Requirements

  • Python 3.10+
  • A ServiceNow instance (developer instance works fine)
  • Claude Desktop or another MCP client

Installation

pip install -r requirements.txt

For RAG-based knowledge search (optional):

pip install chromadb sentence-transformers

Configuration

Set the following environment variables (or copy .env.example to .env):

SERVICENOW_INSTANCE_URL=https://your-instance.service-now.com
SERVICENOW_USERNAME=your-username
SERVICENOW_PASSWORD=your-password

# Optional — enables semantic knowledge search
OPENAI_API_KEY=your-openai-key

Choosing a transport

The server supports two transports:

TransportWhen to use
stdio (default)Claude Desktop — the standard local setup
httpCursor, Cline, LangChain, OpenAI Agents SDK, any web client

Claude Desktop setup

Add this to your claude_desktop_config.json:

{
  "mcpServers": {
    "servicenow": {
      "command": "python",
      "args": ["-m", "servicenow_mcp"],
      "env": {
        "SERVICENOW_INSTANCE_URL": "https://your-instance.service-now.com",
        "SERVICENOW_USERNAME": "your-username",
        "SERVICENOW_PASSWORD": "your-password"
      }
    }
  }
}

HTTP transport (Cursor, Cline, LangChain, OpenAI Agents SDK)

Start the server in HTTP mode:

MCP_TRANSPORT=http python -m servicenow_mcp

The MCP endpoint is at http://localhost:8000/mcp.

To require an API key on all requests:

MCP_TRANSPORT=http MCP_API_KEY=your-secret-key python -m servicenow_mcp

Clients must then include Authorization: Bearer your-secret-key in every request.

Cursor / Cline config
{
  "mcpServers": {
    "servicenow": {
      "url": "http://localhost:8000/mcp",
      "headers": {
        "Authorization": "Bearer your-secret-key"
      }
    }
  }
}
Docker + HTTP mode
docker run -p 8000:8000 \
  -e MCP_TRANSPORT=http \
  -e MCP_API_KEY=your-secret-key \
  -e SERVICENOW_INSTANCE_URL=https://your-instance.service-now.com \
  -e SERVICENOW_USERNAME=your-username \
  -e SERVICENOW_PASSWORD=your-password \
  servicenow-mcp

What's included

Tools are grouped into packs by domain:

CategoryPacks
Core developmentscripts, dev, background scripts, senior dev
Data / configtables, data import/export, update sets, attachments
ITSMincidents, changes, problems, requests, approvals
CMDB / discoveryCMDB, CSDM, discovery, ITAM, ITOM, SAM/HAM
WorkflowFlow Designer, pipelines, planner
IntegrationsScripted REST APIs, integration hub
UIUI Builder, service catalog, UX
App developmentscoped apps, best practices, naming conventions
TestingATF, troubleshooting
Knowledgedocs search, knowledge base, RAG search
Securitygovernance, impersonation, events

Running with Docker

If you don't want to deal with Python environments, you can run the server inside Docker instead.

  1. Make sure you have Docker Desktop installed and running.

  2. Copy .env.example to .env and fill in your ServiceNow credentials:

    cp .env.example .env
    # then open .env and set SERVICENOW_INSTANCE_URL, SERVICENOW_USERNAME, SERVICENOW_PASSWORD
    
  3. Build and start the container:

    docker-compose up --build
    

    The first run will take a minute to download and build everything. After that it's fast.

  4. To stop it:

    docker-compose down
    

That's it. Logs are saved to a logs/ folder in the project directory.

If you want to use it with Claude Desktop, you still need to run it via python -m servicenow_mcp (the Claude Desktop integration talks over stdin/stdout, not HTTP). Docker is more useful if you're running this as a standalone service or testing it independently.

Running tests

pytest

Contributing

See CONTRIBUTING.md.

License

MIT — see LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.