Caravela.MCP.Router (Caravela v0.13.1)

Copy Markdown View Source

Method dispatch for the Caravela MCP server.

Takes a decoded JSON-RPC request map and returns either a response map (for request-id-carrying messages) or :notification (notifications are fire-and-forget — we write nothing back).

Supported MCP methods:

  • initialize — handshake, returns protocol version + server capabilities.
  • notifications/initialized — post-handshake notification. Acknowledged silently.
  • tools/list — enumerate registered tools.
  • tools/call — dispatch to the named tool.

Anything else returns a method_not_found error.

Summary

Functions

Handle a decoded request map. Returns either a response map to write back, or :notification / :no_response if nothing should be sent.

Functions

handle(arg1)

@spec handle(map()) :: map() | :notification | :no_response

Handle a decoded request map. Returns either a response map to write back, or :notification / :no_response if nothing should be sent.