Skip to content

客户端配置

每个 MCP 客户端配置文件位置不同、但格式基本一致(mcpServers map + url + headers)。本页整理常用客户端的接入片段。

配置模板

所有客户端都使用同一份 mcp.json 主体:

json
{
  "mcpServers": {
    "loxily": {
      "url": "https://mcp.loxily.com/mcp",
      "headers": {
        "Authorization": "Bearer lox_mcp_YOUR_TOKEN"
      }
    }
  }
}

差异只在配置文件位置如何触发加载

Cursor

配置文件~/.cursor/mcp.json(macOS / Linux)或 %USERPROFILE%\.cursor\mcp.json(Windows)。

json
{
  "mcpServers": {
    "loxily": {
      "url": "https://mcp.loxily.com/mcp",
      "headers": {
        "Authorization": "Bearer lox_mcp_YOUR_TOKEN"
      }
    }
  }
}

生效方式:菜单 → Cursor → Settings → MCP,页面上会显示 loxily server + 21 个已发现的工具。若显示"0 tools" 或红色告警,重启 Cursor 后重试。

Claude Desktop

配置文件

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json

配置格式与 Cursor 完全一致,把上面的 JSON 合并到 mcpServers 下即可。

生效方式:完全退出 Claude Desktop(macOS 需 Cmd+Q,不能只关窗口),再启动。工具在对话框的"锤子"图标下拉里可见。

Cline(VSCode 插件)

配置文件:VSCode 命令面板 → Cline: Open MCP Settings → 编辑 cline_mcp_settings.json

配置格式一致;保存后 Cline 自动 reload,无需重启 VSCode。

Continue(VSCode / JetBrains 插件)

配置文件~/.continue/config.yaml(Continue 用 YAML 而非 JSON,注意 syntax):

yaml
mcpServers:
  - name: loxily
    url: https://mcp.loxily.com/mcp
    headers:
      Authorization: Bearer lox_mcp_YOUR_TOKEN

自定义客户端 / SDK

Loxily MCP 遵循 MCP 2025-06-18 协议 · Streamable HTTP 传输。用官方 SDK(@modelcontextprotocol/sdk for TypeScript、mcp for Python)接入:

TypeScript 示例

ts
import { Client } from '@modelcontextprotocol/sdk/client/index.js';
import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js';

const transport = new StreamableHTTPClientTransport(
  new URL('https://mcp.loxily.com/mcp'),
  {
    requestInit: {
      headers: {
        Authorization: `Bearer ${process.env.LOXILY_MCP_TOKEN}`,
      },
    },
  },
);

const client = new Client({ name: 'my-app', version: '1.0.0' }, { capabilities: {} });
await client.connect(transport);

const { tools } = await client.listTools();
console.log(`Loaded ${tools.length} tools`);

const result = await client.callTool({
  name: 'loxily_list_languages',
  arguments: {},
});
console.log(result.structuredContent);

手写 HTTP(无 SDK)

bash
# 1) initialize(拿 session id)
curl -sS -D headers.txt -o init.txt \
  -X POST https://mcp.loxily.com/mcp \
  -H "Accept: application/json, text/event-stream" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $LOXILY_MCP_TOKEN" \
  -d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl-client","version":"1.0"}}}'
SESSION=$(grep -i '^mcp-session-id:' headers.txt | awk '{print $2}' | tr -d '\r\n')

# 2) notifications/initialized(handshake 完成)
curl -sS -X POST https://mcp.loxily.com/mcp \
  -H "Accept: application/json, text/event-stream" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $LOXILY_MCP_TOKEN" \
  -H "Mcp-Session-Id: $SESSION" \
  -d '{"jsonrpc":"2.0","method":"notifications/initialized"}'

# 3) tools/call
curl -sS -X POST https://mcp.loxily.com/mcp \
  -H "Accept: application/json, text/event-stream" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $LOXILY_MCP_TOKEN" \
  -H "Mcp-Session-Id: $SESSION" \
  -d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"loxily_list_languages","arguments":{}}}'

响应以 SSE 形式返回:event: message\ndata: <json-rpc>\n\n。生产客户端建议直接用 MCP SDK,处理好 session 保活、reconnect、progress notification 等细节。

健康检查

不带 Bearer 也能 GET https://mcp.loxily.com/health —— 返回 {"status":"ok","revision":"...","base_url":"..."}。用于运维监控或诊断"MCP 客户端连不上"是否是服务端问题。