MCP Servers

模型上下文协议服务器、框架、SDK 和模板的综合目录。

Intelligent ITSM MCP — agentic ticket handling, TF-IDF knowledge base, configurable classification, duplicate detection, 25 tools

创建于 5/24/2026
更新于 about 5 hours ago
Repository documentation and setup instructions

ITSM MCP Server

Crates.io License ADK-Rust Enterprise Registry Ready

Intelligent IT Service Management for ADK-Rust Enterprise agents. 25 MCP tools with agentic workflows — auto-classifies tickets, resolves from knowledge base, detects duplicates, and routes intelligently. No hardcoded rules — everything is configurable at runtime.

What It Does

Your AI agent becomes an L1/L2 support operator. It can resolve common issues from the knowledge base without creating tickets, detect duplicate incidents, auto-classify and route, and escalate when needed — all learning from the KB and rules you feed it.

Architecture

ITSM MCP Architecture

Key Principles

  • No hardcoded logic — classification rules and KB articles are added at runtime via tools.
  • KB-first resolution — searches knowledge base before creating tickets. Grows smarter over time.
  • TF-IDF scoring — relevance-ranked KB search (pluggable for adk-rag semantic search).
  • Duplicate detection — 30% word-overlap threshold against all non-closed tickets.
  • Priority escalation — urgency keywords ("outage", "all users", "critical") auto-escalate regardless of rule defaults.
  • Full audit trace — every agentic decision is traced and returned.

Verified Output

Setup: 3 classification rules + 2 KB articles added

1. "How do I reset my password?"
   → resolved_with_kb ✓ (KB: "How to reset your password", score: 13.3)

2. "Help VPN connection timeout"
   → resolved_with_kb ✓ (KB: "VPN troubleshooting", score: 13.3)

3. "VPN is down for all users in Nairobi office"
   → ticket_created | INC-1001 | critical | Network Team ✓

4. "VPN down for all users here too"
   → linked_to_existing ✓ (linked to INC-1001, no duplicate created)

5. "My laptop screen is flickering"
   → ticket_created | INC-1002 | Hardware Support ✓

Tools (25)

Agentic Workflows (3)

| Tool | What It Does | When To Use | |------|-------------|-------------| | handle_support_request | End-to-end: classify → deduplicate → KB search → resolve or create ticket | "Handle this user's issue" | | auto_triage | Reclassify, check SLA risk, find related incidents | "Triage this ticket" | | diagnose_ticket | Search KB, find patterns, recommend next action | "What should we do about this?" |

Knowledge Base (5)

| Tool | What It Does | |------|-------------| | create_kb_article | Add article (title, body, category, tags) | | update_kb_article | Update existing article | | delete_kb_article | Remove article | | list_kb_articles | List all, optionally by category | | search_knowledge_articles | TF-IDF scored search |

Classification (1)

| Tool | What It Does | |------|-------------| | add_classification_rule | Add keywords → category/queue/priority mapping |

Ticket Lifecycle (11)

| Tool | What It Does | |------|-------------| | create_ticket | Create incident/request/task | | get_ticket | Full details with history | | search_tickets | Search by keyword/status/assignee/queue | | update_ticket_fields | Change priority/category/service | | transition_ticket_status | Move through workflow states | | assign_ticket | Assign to user/team | | recommend_ticket_route | Suggest queue (advisory) | | route_ticket | Move to queue | | add_ticket_note | Internal or customer-facing note | | close_ticket | Close with resolution | | get_ticket_sla_status | SLA deadlines and breach risk |

Change & Catalog (5)

| Tool | What It Does | |------|-------------| | create_change_request | Open CHG with risk/impact/plans | | get_change_request | Read CHG details | | get_service_catalog_item | Look up catalog offering | | create_service_request | Submit catalog request | | link_knowledge_article | Attach KB to ticket |

Installation

1. Build

git clone https://github.com/zavora-ai/mcp-itsm
cd mcp-itsm
cargo build --release

2. Add to your MCP client

Claude Desktop / Kiro / Cursor / Windsurf:

{
  "mcpServers": {
    "itsm": {
      "command": "/path/to/mcp-itsm"
    }
  }
}

3. Configure (via tools)

> add_classification_rule(keywords: ["vpn","network","dns"], category: "Network", queue: "Network Team", default_priority: "high")
> add_classification_rule(keywords: ["password","login","access"], category: "Access", queue: "Identity Team", default_priority: "medium")
> create_kb_article(title: "VPN troubleshooting", body: "1. Restart client 2. Try alternate server", category: "Network", tags: ["vpn","timeout"])

4. Use it

> handle_support_request(message: "I can't connect to VPN", requester: "james")

How It Gets Smarter

  1. Add KB articles → more issues resolved without tickets
  2. Add classification rules → better routing and priority
  3. Close tickets with resolution notesdiagnose_ticket learns from past resolutions
  4. Duplicate detection → fewer redundant tickets as the system sees more patterns

Pluggable for adk-rag

The TF-IDF search is designed to be swapped for semantic search:

// Current: TF-IDF (built-in, no dependencies)
let results = store.search_articles("vpn timeout");

// Future: adk-rag with Gemini embeddings
let pipeline = RagPipeline::builder()
    .embedding_provider(Arc::new(GeminiEmbeddingProvider::new(key)))
    .vector_store(Arc::new(InMemoryVectorStore::new()))
    .build()?;
let results = pipeline.query("kb", "vpn timeout").await?;

MCP Server Manifest

server_id = "mcp_itsm"
display_name = "ITSM MCP"
version = "1.0.0"
domain = "it_operations"
risk_level = "medium"
writes_allowed = "gated"
transports = ["stdio"]
governance_gates = ["change_requires_cab", "closure_requires_resolution"]

Contributors

| jkmaina - MCP Itsm by zavora-ai
James Karanja Maina
| |:---:|

License

Apache-2.0 — see LICENSE for details.


Part of the ADK-Rust Enterprise MCP server ecosystem.

Registry Compliance

This server implements the ADK MCP SDK contract:

  • HealthCheck — async health probe for registry monitoring
  • mcp-server.toml — manifest declaring tools, risk classes, and credentials
  • Structured tracingRUST_LOG env-filter for observability
快速设置
此服务器的安装指南

安装命令 (包未发布)

git clone https://github.com/zavora-ai/mcp-itsm
手动安装: 请查看 README 获取详细的设置说明和所需的其他依赖项。

Cursor 配置 (mcp.json)

{ "mcpServers": { "zavora-ai-mcp-itsm": { "command": "git", "args": [ "clone", "https://github.com/zavora-ai/mcp-itsm" ] } } }