MCP server/cloud

ServiceNow MCP Server

Secure, enterprise-ready MCP server for ServiceNow

★ 4windoze95/servicewow-mcp ↗by windoze95updated
1

Add it to Claude Code

claude mcp add --transport http servicenow-mcp-a89f https://your-host:8080/mcp
Required:TOKEN_ENCRYPTION_KEY
2

Make your agent remember this setup

servicenow-mcp-a89f's config, env vars, and the gotchas you hit — recalled in every future Claude Code, Cursor, and Codex session.

npx conare@latest

Free · one command · indexes the sessions already on disk. Set up in the browser instead →

What it does

  • Per-user OAuth 2.0 delegation with PKCE
  • AES-256-GCM encrypted token storage in Redis
  • Enforces native ServiceNow ACLs and roles
  • Streamable HTTP MCP transport
  • Per-user rate limiting via Redis token bucket

Tools 3

incident_managementManage and triage ServiceNow incidents
change_request_planningPlan and manage change requests
catalog_requestBuild and submit service catalog forms

Environment Variables

TOKEN_ENCRYPTION_KEYrequiredKey used for AES-256-GCM encrypted token storage in Redis

Try it

/servicenow:incident_triage
/servicenow:change_request_planning
/servicenow:build_catalog_form
Find my open incidents in ServiceNow and summarize their status.
Create a new change request based on the provided technical requirements.
Original README from windoze95/servicewow-mcp

ServiceNow MCP Server

Secure, enterprise-ready MCP server for ServiceNow where every action runs as the authenticated user.

No shared service accounts. No ACL bypass. Full audit-trail fidelity.


⚡ Why This Exists

Instead of funneling every request through a shared service account, this server executes actions as the actual human user.

Because it uses per-user OAuth tokens, ServiceNow still enforces:

  • each user's ACLs and roles,
  • their approval authority,
  • and native user-level audit logging.

Result: safer automation, cleaner compliance, fewer permission hacks.


🔥 Core Capabilities

  • MCP-spec OAuth 2.0 with PKCE — clients like Claude Code auto-discover and re-auth natively
  • Per-user OAuth delegation to ServiceNow (Authorization Code flow + refresh)
  • AES-256-GCM encrypted token storage in Redis
  • Streamable HTTP MCP transport with per-session lifecycle
  • Bearer token auth on every MCP request (Authorization: Bearer)
  • Tool-level identity protections for sensitive operations
  • Per-user rate limiting via Redis token bucket
  • Input validation + normalized error responses
  • CI-enforced build + test + coverage gate

🚀 Quick Start

npm install
cp .env.example .env
npm run generate-key    # paste into TOKEN_ENCRYPTION_KEY
npm run dev

Health check: curl -s http://localhost:8080/health

For full setup instructions including ServiceNow OAuth configuration, see the Getting Started guide.


📚 Documentation

Comprehensive documentation lives in `docs/`:

  • Getting Started — Prerequisites, local dev, OAuth setup, first tool call
  • Architecture — System design, session lifecycle, request flow, Redis schema
  • Authentication — OAuth flow, token storage, refresh
  • Security — Identity enforcement, input validation, rate limiting, error handling
  • Tools (35) — All tools: incidents, change requests, knowledge, update sets, and more
  • Resources (5) — MCP resources for direct record access
  • Prompts (7) — Guided workflows for incidents, change requests, knowledge, and catalog
  • HTTP API — Endpoints and client configuration
  • Deployment — Docker, Caddy, native TLS, setup script, environment variables
  • Development — Adding tools, testing, CI pipeline
  • Troubleshooting — Common issues and debug cheat sheet

✅ Testing and Quality

npm run build
npm test
npm run test:coverage
  • Coverage thresholds are configured in vitest.config.ts
  • CI runs build + tests + coverage gate on PRs and main

🖥️ Client Config (Claude Desktop / Claude Code)

{
  "mcpServers": {
    "servicenow": {
      "type": "streamablehttp",
      "url": "https://your-host:8080/mcp"
    }
  }
}

MCP clients automatically discover the OAuth endpoints via /.well-known/oauth-authorization-server and handle PKCE-based authentication. No manual link-opening required.

See Client Configuration for deployment-specific examples.


💡 Using Prompts and Resources

Once connected, the AI agent has access to tools, resources, and prompts.

Prompts are guided workflow templates the agent uses to walk through multi-step operations. In Claude Code, invoke them with a slash command:

/servicenow:incident_triage
/servicenow:change_request_planning
/servicenow:build_catalog_form

In Claude Desktop, use the prompt picker to browse and select from available prompts.

Resources give the agent read-only access to ServiceNow records by URI. The agent reads these automatically when it needs context — for example, reading servicenow://me for your profile or servicenow://incident/{sys_id} for an incident record.

See Prompts docs and Resources docs for the full list and SDK usage examples.


🤖 Agent Instruction Files

  • AGENTS.md
  • CLAUDE.md
  • .github/copilot-instructions.md

Alignment workflow validates expected consistency.


Built for secure, user-scoped AI operations in ServiceNow.

Frequently Asked Questions

What are the key features of ServiceNow MCP Server?

Per-user OAuth 2.0 delegation with PKCE. AES-256-GCM encrypted token storage in Redis. Enforces native ServiceNow ACLs and roles. Streamable HTTP MCP transport. Per-user rate limiting via Redis token bucket.

What can I use ServiceNow MCP Server for?

Automating incident triage while respecting individual user permissions. Planning change requests through AI-guided workflows. Submitting service catalog requests via natural language prompts. Accessing ServiceNow records securely without shared service accounts.

How do I install ServiceNow MCP Server?

Install ServiceNow MCP Server by running: npm install && cp .env.example .env && npm run generate-key && npm run dev

What MCP clients work with ServiceNow MCP Server?

ServiceNow MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Conare · memory for coding agents

Turn this server into reusable context

Keep ServiceNow MCP Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Set up free$npx conare@latest