cucm-emulator-mcp
@calltelemetry/cucm-emulator-mcp
OpenAPI-gesteuerter Model Context Protocol (MCP)-Server für Cisco Unified Communications Manager (CUCM) Emulator.
Übersicht
@calltelemetry/cucm-emulator-mcp ist ein OpenAPI-gesteuerter MCP-Server, der KI-Assistenten und Automatisierungsagenten direkt mit Cisco CUCM Emulator-Instanzen verbindet. Er parst die OpenAPI-3.1.0-Kontraktspezifikation des Emulators, um dynamisch stark typisierte, diskrete MCP-Tools über alle 6 Kern-Telefonie-Domänen zu generieren:
Fixtures & Topologie:
emu_seed_fixtures,emu_reset_store,emu_inspect_fixturesKnoten & Cluster-Health:
emu_list_nodes,emu_set_node_status(ADR 0120/0122-Failover)Telefone & Registrierung:
emu_list_phones,emu_set_phone_status,emu_get_phone_webAnrufsimulation & Gesprächsabschnitte:
emu_simulate_call,emu_call_action,emu_list_active_callsCURRI / ECC-Routing-Richtlinien:
emu_evaluate_curri,emu_get_curri_historyCDR / CMR-Puffer:
emu_generate_cdrs,emu_get_cdr_historyDynamische OpenAPI-Operationen: 46+ automatisch kompilierte Operationen (
emu_get_summary,emu_get_topology,emu_query_sql,emu_list_inventory,emu_upsert_inventory, usw.)
Related MCP server: packet-tracer-mcp
Architektur
┌─────────────────────────────────────────────────────────────┐
│ AI Agents / MCP Clients │
│ (Claude Code, Cursor, Windsurf) │
└──────────────────────────────┬──────────────────────────────┘
│ JSON-RPC 2.0 (Stdio / SSE)
┌──────────────────────────────▼──────────────────────────────┐
│ CucmEmulatorMcpServer │
│ │
│ ┌───────────────────────┐ ┌────────────────────────┐ │
│ │ Tool Registry │ │ OpenAPI Spec Parser │ │
│ │ (15 Domain + Dynamic) │◄─────┤ (Dereferencer/Build) │ │
│ └───────────┬───────────┘ └────────────────────────┘ │
│ │ │
│ ┌───────────▼───────────────────────────────────────────┐ │
│ │ ICucmEmulatorClient Abstraction │ │
│ └───────────┬───────────────────────────┬───────────────┘ │
└──────────────┼───────────────────────────┼──────────────────┘
│ │
┌──────────────▼────────────┐ ┌────────────▼──────────────────┐
│ HttpCucmClient │ │ DirectStoreCucmClient │
│ Live In-Guest / Container│ │ In-Memory Mock Store State │
│ (http://127.0.0.1:8443) │ │ (100% Offline Zero-Config) │
└───────────────────────────┘ └───────────────────────────────┘Installation & Schnellstart
Globale CLI
npm install -g @calltelemetry/cucm-emulator-mcpStdio-Server ausführen (für KI-Agenten / Claude Desktop)
cucm-emulator-mcp --transport stdioSSE-Server ausführen
cucm-emulator-mcp --transport sse --port 3000 --host 127.0.0.1Konfigurationsoptionen
Option | Flag | Umgebungsvariable | Standard | Beschreibung |
Transport |
|
|
| Transporttyp: |
Port |
|
|
| Port für den SSE-HTTP-Server |
Host |
|
|
| Bind-Host für den SSE-Transport |
Ziel-URL |
|
|
| Ziel-URL des Live-Emulators |
Spezifikationspfad |
|
| Gebündelt | Pfad oder URL zur OpenAPI-3.1.0-Spezifikation |
Mock-Modus |
|
|
| Erzwingt den prozessinternen In-Memory-Mock-Store |
Seed-Profil |
|
|
|
|
Auth-Token |
|
|
| Bearer-Auth-Token für den Live-Emulator |
Geheimnisse schwärzen |
|
|
| Schwärzt vertrauliche Zeichenfolgen in Protokollen |
MCP-Client-Konfiguration
Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"cucm-emulator": {
"command": "cucm-emulator-mcp",
"args": ["--transport", "stdio", "--mock", "--seed-profile", "lab-small"]
}
}
}SSE-Integration
{
"mcpServers": {
"cucm-emulator-sse": {
"url": "http://127.0.0.1:3000/sse"
}
}
}Verfügbare Tool-Referenz
Fixtures & Topologie
emu_seed_fixtures: Seedet deterministische Cluster-Topologie, Knoten, Telefone, Dial-Plan-Partitionen, CSS und CURRI-Richtlinien.emu_reset_store: Setzt den Emulatorzustand zurück oder löscht ihn und seedet ihn erneut mit dem angegebenen Topologieprofil.emu_inspect_fixtures: Inspiziert und gibt eine umfassende Zusammenfassung des aktiven CUCM-Clusterzustands zurück.
Knoten & Failover
emu_list_nodes: Listet alle CUCM-Clusterknoten (Publisher, Subscriber, TFTP) mit Rollen und RIS-Rückgabecodes auf.emu_set_node_status: Setzt den Knotenstatus (Online,Offline,NotFound,SearchLimitExceeded) für ADR 0120/0122-Failover-Tests.
Telefone & Registrierung
emu_list_phones: Listet konfigurierte und registrierte Cisco-IP-Telefon-Endpunkte mit Verzeichnisnummern und MAC-Adressen auf.emu_set_phone_status: Aktualisiert den Telefonregistrierungsstatus (Registered,UnRegistered,Rejected,Unknown).emu_get_phone_web: Ruft XML-, HTML- oder JSON-Serviceability-/Status-Webantworten des Telefons ab.
Anrufsimulation & Gesprächsabschnitte
emu_simulate_call: Simuliert einen End-to-End-Telefonanruf durch das CUCM-Dial-Plan-Routing mit RTP-Mediendaten.emu_call_action: Führt Mid-Call-Aktionen aus (answer,hold,resume,drop).emu_list_active_calls: Listet aktive, laufende Anrufsitzungen im Emulator auf.
CURRI / ECC-Routing-Richtlinien
emu_evaluate_curri: Bewertet externe Anrufrouting-Richtlinien über CURRI / ECC und gibt Entscheidungen wiepermit,denyoderdivertzurück.emu_get_curri_history: Ruft das Protokoll vergangener CURRI-Routing-Entscheidungen ab.
CDR / CMR-Puffer
emu_generate_cdrs: Generiert Stapel synthetischer CDR-Datensätze (normal, abgebrochen, CURRI-blockiert, Burst).emu_get_cdr_history: Ruft aktuelle CDR-Datensätze im strukturierten JSON- oder Roh-CSV-Exportformat ab.
Entwicklung & Verifizierung
# Typecheck
npm run typecheck
# Build TypeScript
npm run build
# Run Full Test Suite (155 Tests)
npm test
# Run with Coverage
npm run test:coverage
# Verify Packaging
npm pack --dry-runLizenz
MIT © Call Telemetry
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 Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to make real-world phone calls with AI voice technology and provides tools to track call status, transcripts, and summaries. It supports automated communication with both live numbers and simulated businesses for testing and demonstration purposes.
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to control Cisco Packet Tracer in real time, allowing natural language-driven creation and configuration of network topologies.4MIT
- AlicenseNot gradedqualityAmaintenanceAn MCP server that enables AI assistants to manage Cisco Unified Communications Manager (CUCM) via AXL SOAP API, supporting provisioning, configuration, and database queries through natural language.117MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to interact with Cisco Modeling Labs (CML) using natural language, allowing creation, management, and automation of network labs.69BSD 2-Clause "Simplified"
Related MCP Connectors
Simulation, evaluation and monitoring for voice agents.
Phone, SMS & email for AI agents — one remote MCP endpoint, OAuth login, zero install.
Give your AI agent a phone: place calls, navigate IVRs, wait on hold, get structured answers.
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/calltelemetry/cucm-emulator-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server