Skip to content

Supported MCP Methods

mcpr parses every JSON-RPC 2.0 message and classifies it against the MCP specification (2025-03-26). This page lists every supported method, what mcpr does with it, and what fields are logged.

MethodProxy BehaviorLogged Fields
initializeExtracts clientInfo (name, version, platform), tracks session state, captures server metadata and capabilitiessession_id, client_name, client_version, client_platform
notifications/initializedTransitions session to Active statesession_id
pingForwarded as-is
MethodProxy BehaviorLogged Fields
tools/listCSP rewriting + schema capture with change trackingmcp_method
tools/callCSP rewriting, extracts tool name, per-tool metricsmcp_method, tool, latency_ms, error_code, error_msg
notifications/tools/list_changedMarks schema as stale
MethodProxy BehaviorLogged Fields
resources/listCSP rewriting + schema capturemcp_method
resources/templates/listCSP rewriting + schema capturemcp_method
resources/readCSP rewriting, extracts resource URImcp_method
resources/subscribeForwarded as-ismcp_method
resources/unsubscribeForwarded as-ismcp_method
MethodProxy BehaviorLogged Fields
prompts/listSchema capture (names, descriptions, arguments)mcp_method
prompts/getExtracts prompt name for loggingmcp_method
MethodProxy BehaviorLogged Fields
logging/setLevelForwarded as-is, classified for loggingmcp_method
completion/completeForwarded as-is, classified for loggingmcp_method
notifications/cancelledExtracts requestIdmcp_method
notifications/progressExtracts progressTokenmcp_method

These methods are forwarded as passthrough (not actively classified):

MethodDirectionNotes
sampling/createMessageServer → ClientSampling request
roots/listServer → ClientRoot listing request
notifications/resources/list_changedServer → ClientResource change notification
notifications/resources/updatedServer → ClientResource update notification
notifications/prompts/list_changedServer → ClientPrompt change notification
notifications/roots/list_changedClient → ServerRoot change notification
notifications/messageServer → ClientLog message notification

Unknown methods are forwarded as-is and appear as Unknown in observability output.

mcpr produces an McpMethod enum value for each recognized method. This value appears in:

  • Terminal output (the MCP method column)
  • SQLite storage (mcp_method field)
  • Cloud sync events
  • Event bus ProxyEvent::Request events

The classification happens at the JSON-RPC parsing layer (mcpr-protocol crate) before any routing or CSP logic runs.