ServiceNow MCP Demo — Incident Assistant
ServiceNow MCP Demo — Incident Assistant
Eine End-to-End-Demo zum Model Context Protocol, die Claude mit ServiceNow Incident Management verbindet. Entwickelt, um MCP-Grundlagen (Server, Clients, Tools, Ressourcen, stdio-Transport, Agent-Loops) anhand eines echten ITSM-Workflows zu veranschaulichen.
Architektur
┌─────────────────────────────┐ ┌───────────────────────────────┐ ┌────────────────┐
│ Web Client (Streamlit) │ MCP │ MCP Server (FastMCP) │ REST │ ServiceNow │
│ - MCP host + client │◄──────►│ - create_incident │◄──────►│ Table API │
│ - Claude agent loop │ stdio │ - get_incident │ │ (or mock mode)│
│ - Incident cards in UI │JSON-RPC│ - list_recent_incidents │ │ │
│ │ │ - update_incident_state │ │ │
│ │ │ - resolve_incident │ │ │
│ │ │ - search_knowledge_articles │ │ │
│ │ │ - resource: priority │ │ │
│ │ │ matrix reference │ │ │
└─────────────────────────────┘ └───────────────────────────────┘ └────────────────┘Der Ablauf für „Mein Laptop bootet nicht, öffne ein Ticket“:
Der Web-Client sendet deine Nachricht zusammen mit den Tool-Schemas an Claude, die er beim Start vom MCP-Server entdeckt hat (
tools/list).Claude entscheidet sich,
create_incidentmit abgeleiteter Dringlichkeit/Auswirkung/Kategorie aufzurufen.Der Client leitet den Aufruf über MCP weiter (
tools/call); der Server ruft die ServiceNow Table API (oder den In-Memory-Mock) auf.Das Ergebnis fließt zurück; Claude bestätigt die Incident-Nummer; die UI rendert eine Incident-Karte.
Related MCP server: ServiceNow MCP Server (SSE)
Schnellstart
# 1. Create a virtual environment
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
# 2. Install dependencies
pip install -r requirements.txt
# 3. Configure
cp .env.example .env # then edit: add your ANTHROPIC_API_KEY
# leave SERVICENOW_MODE=mock for a no-setup demo
# 4. Run the web client (it launches the MCP server automatically)
streamlit run client/app.pyÖffne http://localhost:8501 und probiere Folgendes:
„Mein Laptop bootet nicht und ich habe in einer Stunde eine Kundendemo — öffne ein Ticket.“
„Zeig mir die 5 neuesten Incidents.“
„Verschiebe INC0010001 auf In Progress mit einer Work Note, dass der Techniker unterwegs ist.“
„Gibt es KB-Artikel zu einem Laptop, der sich nicht einschalten lässt?“
„Das hat es behoben — löse INC0010001 auf, dauerhaft gelöst, das Ladegerät wurde ersetzt.“
Live-ServiceNow-Modus
Fordere eine kostenlose Personal Developer Instance (PDI) unter https://developer.servicenow.com an (dauert ~2 Minuten).
Setze in
.envSERVICENOW_MODE=liveund fülleSERVICENOW_INSTANCE,SERVICENOW_USER,SERVICENOW_PASSWORDaus.Starte die App neu. Erstellte Incidents erscheinen in deiner PDI unter Incident > All — ideal, um das Ticket während der Demo in der echten ServiceNow-UI zu präsentieren.
PDIs schlafen nach Inaktivität ein. Weck sie ~15 Minuten vor deinem Vorstellungsgespräch auf und behalte den
mock-Modus als Fallback.
search_knowledge_articlesfragt diekb_knowledge-Tabelle der PDI direkt ab — lege vor der Demo im Live-Modus 2–3 veröffentlichte KB-Artikel dort an, deren Titel zu deinem Demo-Szenario passen (z. B. „Laptop lässt sich nicht einschalten“), sonst kommt die Live-Suche leer zurück. Der Mock-Modus bringt bereits 3 vorab angelegte Artikel mit und ist damit sofort einsatzbereit.
Den Server eigenständig testen (ohne UI)
Der MCP Inspector ist der schnellste Weg, um zu beweisen, dass der Server eigenständig funktioniert:
npx @modelcontextprotocol/inspector python server/servicenow_server.pyDu kannst den Server auch zu Claude Desktop hinzufügen (claude_desktop_config.json):
{
"mcpServers": {
"servicenow": {
"command": "python",
"args": ["/absolute/path/to/server/servicenow_server.py"]
}
}
}Projektstruktur
servicenow-mcp-demo/
├── server/servicenow_server.py # FastMCP server: 6 tools + 1 resource, mock/live backends
├── client/app.py # Streamlit web app: MCP client + Claude agent loop
├── requirements.txt
├── .env.example
├── PROJECT_PLAN.md # Phase-by-phase build plan and status
└── DEMO_SCRIPT.md # 5-minute recorded-demo scriptDemonstrierte MCP-Konzepte
Server erstellt mit FastMCP: Tools mit typisierten Parametern und Docstring-basierten Schemas
Resource (
servicenow://reference/priority-matrix) — schreibgeschützter Kontext im Unterschied zu Toolsstdio-Transport — der Client startet den Server-Subprozess und spricht JSON-RPC
Capability Discovery — der Client hardcodiert Tools nie; er ruft
tools/listaufAgent-Loop — Tool-Nutzung über mehrere Runden mit Claude, bis eine endgültige Textantwort vorliegt
Separation of Concerns — derselbe Server funktioniert unverändert mit diesem Web-Client, Claude Desktop oder dem MCP Inspector
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Build and manage AI-native customer support agents from Claude or any MCP client.
Connect Claude AI to UluP Spaces via MCP — create projects, nodes, and tasks with OAuth 2.0.
A Model Context Protocol (MCP) application for automated GitHub PR analysis and issue management.…
Enable secure connectivity between Sentry issues and debugging data, and LLM clients, using a Model Context Protocol (MCP) server.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables AI assistants and development tools to interact with ServiceNow instances, providing comprehensive API coverage for incident management, change management, CMDB, and other ServiceNow modules.3MIT
- FlicenseNot gradedqualityDmaintenanceA browser-accessible Model Context Protocol server that enables AI assistants to manage ServiceNow incidents using Server-Sent Events. It provides comprehensive tools for creating, listing, retrieving, and updating incidents through a type-safe RESTful interface.
- AlicenseBqualityAmaintenanceConnect Claude AI to ServiceNow with 19 tools and 5 resources for incidents, CMDB, update sets, and more, accessible from any MCP client over stdio or Streamable HTTP.1916MIT
- FlicenseNot gradedqualityBmaintenanceA local gateway that exposes ServiceNow REST APIs as MCP tools, enabling natural language interaction with ServiceNow incidents, changes, CMDB, and scripts via Claude and other MCP clients.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/darrylsarkisian-debug/servicenow-mcp-demo'
If you have feedback or need assistance with the MCP directory API, please join our Discord server