MCP开发-00.什么是MCP

本系列:概念篇(本文)实践篇:从 0 开发一个 MCP

为什么选择 MCP

MCP 帮助你在 LLM 的基础上构建代理(agents)和复杂工作流。模型经常需要与数据、工具集成,MCP 提供:

  • 可复用的集成生态:持续增长的预构建服务器与社区实现,模型侧按同一协议接入即可。
  • 厂商无关:同一套 MCP 能力可在不同 LLM 提供商与客户端之间迁移、组合。
  • 安全与边界清晰:在自有基础设施内暴露文件、数据库与 API 时,有相对明确的进程与连接模型可参考。
    原本的大模型以文本生成为主,操作外部环境的能力依赖各产品自研接口。MCP 提供标准化的上下文与工具协议,让符合规范的服务器能力(文件、命令、数据库、业务 API 等)可被模型以统一方式发现和调用,从而扩展 LLM 能做的事。

MCP 是什么

MCP(Model Context Protocol) 是面向大型语言模型应用的一种开放协议,用于规范「应用程序如何向模型提供上下文、工具与资源」,打通模型与外部数据源、工具及服务之间的连接。
可以把它类比为 AI 应用里的 USB-C:USB-C 统一了设备与外设的物理与协议预期;MCP 则统一了 AI 模型与各类数据源、工具 的对接方式。
延伸阅读(官方与中文镜像):


架构与角色

MCP 应用架构

MCP 应用架构示意图
按协议约定,典型参与方包括:

角色 说明
MCP Host 承载 AI 能力的宿主应用,如 Claude Desktop、IDE、Trae 等,希望通过 MCP 使用外部数据与工具。
MCP Client 宿主内的协议客户端,与 单个 MCP Server 维持一条连接,负责会话与消息收发。
MCP Server 轻量进程或服务,通过 MCP 暴露具体能力(工具、资源、提示模板等)。
本地数据源 本机文件、本地数据库、本地服务等,由 Server 在授权范围内访问。
远程服务 经 API 等访问的互联网服务,同样由 Server 封装后提供给模型。

MCP 服务架构

MCP 服务架构示意图

传输方式概要

Host 通过 Client 与 Server 通信时,需要选定传输层。常见三种:

方式 特点 典型场景
stdio 标准输入输出,由宿主以子进程方式拉起 Server,通过管道通信。 本地开发、CLI、桌面应用内嵌 MCP。
SSE 基于 HTTP 的服务端推送(Server-Sent Events),可独立进程、多客户端。 远程访问、需与既有 HTTP 基础设施配合时(部分环境仍使用)。
Streamable HTTP 新版规范推荐的 HTTP 传输,流式传输多条服务器消息,利于代理与防火墙环境。 生产部署、远程服务、与 Inspector / HTTP 客户端对接。
实践上本地调试多用 stdio;需要独立 URL、多机或网关时多用 Streamable HTTP(或兼容场景下的 SSE)。具体配置与代码示例见:从 0 开发一个 MCP

生态:SDK 与框架

下列项目均与 MCP 相关,可按技术栈选用(安装命令以各项目文档为准,版本可能更新)。

  1. OpenAI Agents SDK — Agent 构建,MCPServerStdio / MCPServerSse 等;pip install openai-agents
  2. Composio with OpenAI — 与 Composio 托管 MCP 集成;pip install composio-openai openai
  3. mcp-agent(LastMile AI) — 基于 MCP 与工作流组合代理;pip install mcp-agent
  4. MCP Python SDK(官方)FastMCP 等;pip install "mcp[cli]"
  5. MCP TypeScript SDK(官方) — Node/TS;npm install @modelcontextprotocol/sdk
  6. Google ADK — Agent 开发套件,含 MCP;pip install google-adk
  7. CopilotKit MCP — 前端侧快速接入;npx copilotkit@latest init -m MCP
  8. LangChain MCP Adapters — 与 LangChain/LangGraph 衔接;pip install langchain-mcp-adapters
  9. Strands Agents SDK(AWS) — 多模型后端;pip install strands-agents strands-agents-tools
  10. fast-agent — 工具调用、采样、多模态等;pip install fast-agent-mcp
  11. PraisonAI — 偏低代码的多智能体与 MCP;pip install praisonaiagents mcp
  12. Semantic Kernel — 微软编排 SDK 的 MCP 适配;pip install semantic-kernel

支持 MCP 的客户端与工具

常见 Host 或已支持/可配置 MCP 的开发工具包括(不完全列表):

  • Claude Desktop(Anthropic):通过配置文件添加 MCP Server。
  • Claude Code:CLI 工作流中 mcp add 等方式接入 HTTP 传输的 Server。
  • Cursor:在项目或用户级 MCP 配置中声明 command/args(stdio)或 URL(HTTP)。
  • Visual Studio Code:配合 Copilot / 扩展生态中的 MCP 相关能力(以当期文档为准)。
  • Trae、Windsurf、Cline、Continue 等:多数支持 JSON 形式声明本地命令或远程端点。
    具体字段名(如 mcpServers)因产品与版本而异,以各工具官方文档为准。

延伸阅读

-------------本文结束感谢您的阅读-------------