GPT-Talk

Model Context Protocol 完全指南:MCP 工作机制与实战

What MCP is, how it standardizes tool calling for LLMs, and how to build an MCP server that exposes your data or APIs to ChatGPT, Claude, and Cursor.

TL;DR
MCP(Model Context Protocol)是 Anthropic 提出的开放标准,让 LLM 通过统一协议调用任何工具和数据源。本文讲清 MCP 架构、传输层(stdio / HTTP / SSE)、以及如何为你的业务写一个 MCP Server。
MCP(Model Context Protocol)是 LLM 工具调用的开放标准,客户端(ChatGPT / Claude / Cursor)通过 JSON-RPC 协议访问服务器暴露的 tools、resources、prompts。

操作步骤

  1. 装 SDK 并 init 项目

    npm i @modelcontextprotocol/sdk。新建 src/server.ts 与 src/index.ts,package.json 设 type=module + bin 入口。

  2. 声明三个 primitive:tools / resources / prompts

    tools 是带 input schema 的可调用函数;resources 是结构化数据源(文件、数据库、API);prompts 是预写提示模板。在 ListTools / ListResources / ListPrompts 里返回。

  3. 选 transport:stdio / Streamable HTTP / SSE

    本地子进程走 stdio;云端服务走 Streamable HTTP;老客户端兼容 SSE。本地测试用 stdio 即可。

  4. 写一个最小 tool 并自测

    例如 server.setRequestHandler(CallToolRequestSchema, ...) 实现 echo 工具;用 MCP Inspector 或 SDK 自带的 test client 验证 ListTools + CallTool 流程。

  5. 接入 ChatGPT / Claude / Cursor 并加 OAuth

    在 Server 上注册 OAuth 2.0 metadata,对接你自己的鉴权后端;在 README 列出每个 host 的接入步骤;上线前用 prompt injection 防护清单过一遍。

Model Context Protocol 完全指南:MCP 工作机制与实战

MCP(Model Context Protocol)是 LLM 工具调用的开放标准,客户端(ChatGPT / Claude / Cursor)通过 JSON-RPC 协议访问服务器暴露的 tools、resources、prompts。

1. 概述

MCP(Model Context Protocol)是 Anthropic 提出的开放标准,让 LLM 通过统一协议调用任何工具和数据源。本文讲清 MCP 架构、传输层(stdio / HTTP / SSE)、以及如何为你的业务写一个 MCP Server。

2. 核心要点

  • MCP 由 Hosts(ChatGPT)、Clients(SDK)、Servers(你的服务)三层组成
  • 传输支持 stdio(本地进程)、Streamable HTTP(云端)、SSE(旧 HTTP)
  • Tools 是带输入 schema 的可调用函数;Resources 是结构化数据源;Prompts 是预写提示模板
  • 用 @modelcontextprotocol/sdk 写一个 Server 通常 50-200 行 TypeScript 代码
  • 上线后注意:OAuth 鉴权、调用频率限制、敏感工具白名单,避免被 prompt injection 利用

3. 工作机制

下面分节展开。建议阅读时配合 OpenAI 官方文档 一起看。

4. 实战步骤

  1. 明确目标:先定义完成的标准。
  2. 选型:参考核心要点里的模型对比。
  3. 验证:跑通最小示例,记录参数与版本号。
  4. 集成:把示例接到你现有代码里。
  5. 监控:记录调用日志与失败原因,定期回看。

5. 常见错误与排查

  • 报错 401:API Key 无效或过期,重新生成。
  • 报错 429:触发速率限制,启用指数退避重试。
  • 报错 400:参数错误,仔细核对 model 名称与 messages 结构。
  • 回答质量差:换模型、补充 few-shot 示例、检查 prompt 是否过长。

6. 下一步

掌握本文后,建议继续阅读:

  • 《ChatGPT 完全指南(2026):从入门到精通》
  • 《Prompt Engineering 核心模式:8 个让 GPT 表现翻倍的模板》
  • 《OpenAI API 入门:第一个 GPT-5.6 调用详解》

关键要点

  • MCP 由 Hosts(ChatGPT)、Clients(SDK)、Servers(你的服务)三层组成
  • 传输支持 stdio(本地进程)、Streamable HTTP(云端)、SSE(旧 HTTP)
  • Tools 是带输入 schema 的可调用函数;Resources 是结构化数据源;Prompts 是预写提示模板
  • 用 @modelcontextprotocol/sdk 写一个 Server 通常 50-200 行 TypeScript 代码
  • 上线后注意:OAuth 鉴权、调用频率限制、敏感工具白名单,避免被 prompt injection 利用

常见问题

MCP 由 Anthropic 于 2024 年底作为开源协议提出,但设计上是中立的——规范和 SDK 都在 modelcontextprotocol GitHub 组织下,ChatGPT、Claude、Cursor 都消费 MCP server。把它理解为「LLM 工具调用的 USB-C 接口」更准确,不是某家厂商的私有 API。

官方参考

订阅 GPTMap Weekly

每周一封邮件,精选 OpenAI 重要更新、深度解读与最佳实践。无广告,可随时退订。

GPTMap Editorial发布于 2026-07-12更新于 2026-07-14 3 分钟阅读
测试环境(EEAT)
最后测试时间:2026-07-14
使用模型:gpt-5.6