MCP server
The Model Context Protocol is an open standard for connecting LLM agents to tools. Nopaque exposes 14 curated tools - IVR mapping, mission testing, compliance probes, and workspace usage - through a public MCP server that bridges to the underlying REST API.
Overview
| Server URL | https://mcp.nopaque.co.uk |
| Transport | Streamable HTTP (single endpoint, JSON-RPC 2.0 over POST) |
| Protocol version | 2025-06-18 |
| Tools | 14 tools bridged to the REST API |
| Capabilities | tools/list, tools/call (no prompts or resources yet) |
Authentication
The MCP server uses the same workspace-scoped x-api-key header as the REST API. See Authentication for how to create a key, tier requirements, and key format.
- Tenant isolation: requests for resources outside your workspace return an MCP-formatted
404 Not Found- indistinguishable from a resource that doesn't exist. The server never leaks whether a resource belongs to a different tenant. - Discovery is unauthenticated by design: the
initializeandtools/listmethods do not require an API key. Onlytools/callis authenticated. This is intentional for compatibility with MCP client probes (Smithery scanner, Claude Desktop, MCP Inspector) that need to discover the tool surface before a user supplies credentials.
Tool catalog
Each MCP tool wraps one REST operation. Tool descriptions are written for LLM decision-making - see the linked REST page for full request/response schemas.
| Tool | Title | REST endpoint | Behavior |
|---|---|---|---|
createMapping | Create IVR Mapping Job | POST /mapping | Real call |
getMapping | Get Mapping Job | GET /mapping/{id} | Read-only |
listMappings | List Mapping Jobs | GET /mapping | Read-only |
cancelMapping | Cancel Mapping Job | POST /mapping/{id}/cancel | Cancels jobs |
getMappingTree | Get Discovered IVR Tree | GET /mapping/{id}/tree | Read-only |
runMissionTest | Run Mission Test | POST /mission-test-configs/{id}/launch | Real call |
getMissionTestRun | Get Mission Test Run | GET /testing/runs/{id} | Read-only |
listMissionTestConfigs | List Mission Test Configs | GET /mission-test-configs | Read-only |
getMissionTestConfig | Get Mission Test Config | GET /mission-test-configs/{id} | Read-only |
getRunResults | Get Run Results | GET /testing/runs/{id} | Read-only |
listLoadTests | List Load Tests | GET /testing/load-tests | Read-only |
listComplianceCatalogue | List Compliance Catalogue | GET /testing/compliance-catalogue | Read-only |
runComplianceTest | Run Compliance Test | POST /testing/compliance/runs | Real call |
getWorkspaceUsage | Get Workspace Usage | GET /workspaces/{workspaceId}/usage | Read-only |
Real call tools spend Telnyx minutes against your workspace's free pool or token packs. Cancels jobs terminates in-flight calls but is safe to retry (idempotent).
Quickstart - connect a client
Pick the client you want to connect from. All four routes hit the same server and tools.
Claude Desktop
Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) and add the server below, then restart Claude Desktop. The mcp-remote bridge is auto-installed by npx on first run - Claude Desktop doesn't speak Streamable HTTP natively yet.
{
"mcpServers": {
"totalpath": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://mcp.nopaque.co.uk",
"--header", "x-api-key:YOUR_API_KEY"
]
}
}
}MCP Inspector
The official debugger from the MCP team - useful for exploring tools/list, inspecting input schemas, and running tool calls interactively.
# Launch the MCP Inspector UI
npx @modelcontextprotocol/inspector
# Then in the browser UI:
# Transport: Streamable HTTP
# URL: https://mcp.nopaque.co.uk
# Headers: x-api-key: YOUR_API_KEY
# Connect.Smithery
Smithery is a public MCP server registry. Our listing is at smithery.ai/servers/nopaque/totalpath and all 14 tools are auto-scanned.
# Option 1 - via the Smithery CLI
npm install -g @smithery/cli
smithery mcp add nopaque/totalpath
# Option 2 - add directly via the web UI
# https://smithery.ai/servers/nopaque/totalpathRaw JSON-RPC (curl)
Useful for scripting or sanity-checking from CI. Send a single initialize POST to confirm the server speaks the right protocol version. Both application/json and text/event-stream must be in Accept per the Streamable HTTP spec.
curl -sX POST https://mcp.nopaque.co.uk \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-H "x-api-key: $API_KEY" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"cli","version":"0"}}}'Discovery
- Smithery listing: smithery.ai/servers/nopaque/totalpath - auto-scanned, all 14 tools listed.
- Server card: /.well-known/mcp/server-card.json - a static mirror of the live tool catalogue. Useful when a scanner can't authenticate against the live server.
- llms.txt: /llms.txt - cross-references this docs page and the MCP server URL so crawlers and agents can discover both.
Limitations & roadmap
prompts/listcapability is not yet implemented - clients calling it receive-32601 Method not found.resources/listcapability is not yet implemented - clients calling it receive-32601 Method not found.- WebMCP (browser-side execution against an authenticated session) is deferred. The current server is HTTPS-only Streamable HTTP.
- The 14 exposed tools cover the highest-value REST operations, not the full REST surface. Notably absent today:
startMapping(usecreateMapping, then call RESTPOST /mapping/{id}/start) and per-run cancellation of test runs (cancelTestRunoperationId is missing inopenapi.yaml, tracked). - Smithery misattribution: see our disclosure about the unrelated
easyreg/private-number-plateslisting.
Last updated: 2026-05-14