scala-mcp

[md]MCP feature support

Targeting MCP spec 2025-11-25. The "Client support" column reflects the state of major clients (Claude Code, Claude Desktop, Cursor, opencode) per modelcontextprotocol.io/clients as of April 2026:

Feature scala-mcp Client support Notes
Tools (list / call) Universal Includes structuredContent
Resources, subs, templates Most Cursor doesn't expose resources
Prompts Universal
Initialize / capabilities Universal Required by spec
Ping Universal Required by spec
Logging notifications Most Accepted; rendering varies. logging/setLevel not yet
Elicitation 🟡 Some Claude Code + Cursor. Form mode ✅, URL mode ❌
Pagination 🟡 Universal Cursors typed; server always returns nextCursor=None
Cancellation Most notifications/cancelled cancels the in-flight fiber via per-session registry
Sessions (Streamable HTTP) Most Mcp-Session-Id + auth-aware sessions
MCP-Protocol-Version header Universal Clients send it; we don't validate
Progress (progressToken) Rare Few clients emit the token
_meta on requests/responses Universal Spec-mandated passthrough
Sampling None Capability stub only
Roots Most Type stubs only. opencode lacks it
Completion None No client surfaces it
Tasks (experimental) None
Tool/prompt list_changed Universal Required for listChanged capability
2025-11-25 metadata fields Some title / icons increasingly rendered; rest unused