From d3a933112720f301112fd9f0aedd92d79a0cc4d4 Mon Sep 17 00:00:00 2001 From: Alex Clarke Date: Fri, 22 May 2026 18:45:39 -0600 Subject: [PATCH] docs: corrected a typo in Claude Desktop vs Claude Code MCP compatibility --- MCP-Servers.md | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/MCP-Servers.md b/MCP-Servers.md index 50b46fe..9796527 100644 --- a/MCP-Servers.md +++ b/MCP-Servers.md @@ -24,9 +24,15 @@ this directory using the following command: loki --info | grep functions_dir | awk '{print $2}' ``` -The syntax for the `functions/mcp.json` file is compatible with MCP server configurations for Claude Desktop. -So any time you're looking to add a new server, look at the docs for it and find the configuration example for -Claude Desktop. You should be able to use the exact same configuration in your `functions/mcp.json` file. +The syntax for the `functions/mcp.json` file matches [Claude Code's `.mcp.json` configuration format](https://docs.claude.com/en/docs/claude-code/mcp), +with one small difference: the `type` field is **always required** in Loki, even for stdio servers (Claude Code +allows it to be omitted and infers `stdio` from the presence of a `command`). So any time you're looking to add +a new server, look at its docs and find the Claude Code configuration example. You should be able to use the +exact same configuration in your `functions/mcp.json` file. Just make sure every entry has an explicit `type`. + +**Note:** Loki does not support Claude Code's `"streamable-http"` alias (use `"http"` instead), nor extras +like `oauth` or `envFile`. For secrets, use [Loki Vault](Vault) interpolation rather than Claude Code's `${VAR}` +shell-style expansion. Every server entry **must** include a `"type"` field set to one of: `"stdio"`, `"http"`, or `"sse"`. @@ -38,7 +44,7 @@ Loki supports three MCP transport types: |---------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------| | `stdio` | Spawns a local subprocess and communicates over stdin/stdout | | `http` | Connects to a remote server via [Streamable HTTP](https://modelcontextprotocol.io/docs/concepts/transports#streamable-http) | -| `sse` | Connects to a remote server via the legacy [HTTP+SSE](https://modelcontextprotocol.io/docs/concepts/transports#http-with-sse) transport (Claude Desktop format) | +| `sse` | Connects to a remote server via the legacy [HTTP+SSE](https://modelcontextprotocol.io/docs/concepts/transports#http-with-sse) transport (deprecated in the MCP spec; prefer `http` where the server supports it) | ## Stdio Servers @@ -91,7 +97,8 @@ For remote MCP servers that support the Streamable HTTP transport: ## SSE Servers -For remote MCP servers that use the legacy HTTP+SSE transport (the format used by Claude Desktop): +For remote MCP servers that use the legacy HTTP+SSE transport (deprecated in the MCP spec; +prefer `http` where the server supports it): ```json {