用途:把任意 MCP 服务器接入将要消费它的客户端——IDE 用声明式配置,自定义应用用编程式接入。适用于把 MCP 服务器安装进 Claude Desktop、Claude Code 或 Cursor;构建自定义 MCP 客户端(Web 应用、CLI、智能体框架);排查“服务器启动失败”或“工具不显示”;以及团队间共享 MCP 配置。
配置路径:Claude Desktop(macOS)为 ~/Library/Application Support/Claude/claude_desktop_config.json;Windows 为 %APPDATA%\Claude\claude_desktop_config.json;Claude Code 为用户级 ~/.claude/settings.json 或项目级 .mcp.json;Cursor 为用户级 ~/.cursor/mcp.json 或项目级 .cursor/mcp.json。
声明式安装:stdio 服务器在 mcpServers 下写 command、args、env;HTTP/SSE 服务器写 url 与 headers(如 Authorization: Bearer ${LINEAR_TOKEN})。Claude Code 支持 OAuth:省略 headers,首次调用工具时会提示在浏览器中认证。项目级配置可将 .mcp.json 提交进仓库供团队继承,Claude Code 启动时读取;仅当含密钥时才加入 .gitignore。
编程式客户端:TypeScript 下从 @modelcontextprotocol/sdk 引入 Client 与 StdioClientTransport,传入 command、args、env 后 connect,再调用 listTools、callTool;HTTP 用 StreamableHTTPClientTransport 并在 requestInit 中带认证头。Claude Agent SDK 通过 client.beta.messages.create 传入 mcp_servers 数组,SDK 内部处理工具调用循环。
排查:查看 stderr(Claude Desktop 日志在 ~/Library/Logs/Claude/mcp*.log);手动运行命令复现;用绝对路径避免 PATH 依赖;注意部分客户端不展开所有字段中的 ${VAR};工具列表为空说明服务器连上但未注册工具,查服务端日志的模式校验错误。
最佳实践:优先 npx -y 而非本地安装;生产环境固定版本;团队服务器用项目级 .mcp.json,个人用用户级;提交的配置不含密钥;服务器异常先用 MCP Inspector 排查。原资料未提供具体版本号、平台差异之外的其他限制说明。