Connect with us

人工智能

Claude 的模型上下文协议 (MCP):开发者指南

mm

Anthropic 的 模型上下文协议 (MCP) 是一个开源协议,它实现了 AI 助手与数据库、API 和企业工具等数据源之间的安全双向通信。通过采用客户端-服务器架构,MCP 标准化了 AI 模型与外部数据的交互方式,无需为每个新数据源进行定制集成。

MCP 的关键组件:

  • 主机: 发起连接的 AI 应用程序(例如 Claude Desktop)。
  • 客户端: 在主机应用程序内与服务器保持一对一连接的系统。
  • 服务器: 向客户端提供上下文、工具和提示的系统。

为什么 MCP 很重要?

简化集成

传统上,将 AI 模型连接到不同的数据源需要定制代码和解决方案。MCP 用一个单一的标准化协议取代了这种分散的方法。这种简化加速了开发并减少了维护负担。

增强 AI 能力

通过为 AI 模型提供对多样化数据源的无缝访问,MCP 增强了它们生成更相关和更准确响应的能力。这对于需要实时数据或专业信息的任务尤其有益。

提升安全性

MCP 在设计时就考虑了安全性。服务器控制自己的资源,无需与 AI 提供商共享敏感的 API 密钥。该协议建立了清晰的系统边界,确保数据访问是受控且可审计的。

促进协作

作为一个开源项目,MCP 鼓励开发者社区的贡献。这种协作环境加速了创新,并增加了可用连接器和工具的范围。

MCP 如何工作

架构

MCP Architecture

MCP 架构

MCP 的核心遵循客户端-服务器架构,一个主机应用程序可以连接到多个服务器。这种设置允许 AI 应用程序与各种数据源无缝交互。

组件:

  • MCP 主机: 希望通过 MCP 访问资源的程序,如 Claude Desktop、IDE 或 AI 工具。
  • MCP 客户端: 与服务器保持一对一连接的协议客户端。
  • MCP 服务器: 通过标准化的模型上下文协议公开特定功能的轻量级程序。
  • 本地资源: MCP 服务器可以安全访问的计算机资源(数据库、文件、服务)。
  • 远程资源: 可通过互联网访问的资源(例如通过 API),MCP 服务器可以连接到这些资源。

MCP 入门指南

先决条件

  • Claude Desktop 应用程序: 适用于 macOS 和 Windows。
  • SDK: MCP 为 TypeScript 和 Python 提供了 SDK。

开始步骤

  1. 安装预构建的 MCP 服务器: 首先通过 Claude Desktop 应用程序 为常见数据源(如 Google Drive、Slack 或 GitHub)安装服务器。
  2. 配置主机应用程序: 编辑配置文件以包含您要使用的 MCP 服务器。
    { "mcpServers": { "sqlite": { "command": "uvx", "args": ["mcp-server-sqlite", "--db-path", "/path/to/your/database.db"] }}}
  3. 构建自定义 MCP 服务器: 使用提供的 SDK 创建针对您特定数据源或工具的服务器。
  4. 连接和测试: 在您的 AI 应用程序和 MCP 服务器之间建立连接,并开始实验。

幕后发生了什么?

当您使用 MCP 与 Claude Desktop 等 AI 应用程序交互时,会发生多个过程来促进通信和数据交换。

1. 服务器发现

  • 初始化: 启动时,MCP 主机(例如 Claude Desktop)会连接到您配置的 MCP 服务器。这建立了进一步交互所需的初始通信通道。

2. 协议握手

  • 能力协商: 主机应用程序和 MCP 服务器执行握手以协商能力并建立共同理解。
  • 识别: 主机根据 MCP 服务器公开的资源或功能,识别哪个服务器可以处理特定请求。

3. 交互流程

让我们考虑一个通过 Claude Desktop 查询本地 SQLite 数据库的示例。

MCP protocol

MCP 协议

逐步流程:

  1. 初始化连接: Claude Desktop 连接到配置为与 SQLite 交互的 MCP 服务器。
  2. 可用能力: MCP 服务器传达其能力,例如执行 SQL 查询。
  3. 查询请求: 您提示 Claude Desktop 检索数据。主机向 MCP 服务器发送查询请求。
  4. SQL 查询执行: MCP 服务器在 SQLite 数据库上执行 SQL 查询。
  5. 结果检索: MCP 服务器检索结果并将其发送回 Claude Desktop。
  6. 格式化结果: Claude Desktop 以可读格式向您呈现数据。

更多用例

  • 软件开发: 通过将 AI 模型连接到代码仓库或问题跟踪器来增强代码生成工具。
  • 数据分析: 允许 AI 助手访问和分析来自数据库或云存储的数据集。
  • 企业自动化: 将 AI 与 CRM 系统或项目管理平台等业务工具集成。

MCP 架构的优势

  • 模块化: 通过分离主机和服务器,MCP 允许模块化开发和更轻松的维护。
  • 可扩展性: 多个 MCP 服务器可以连接到单个主机,每个服务器处理不同的资源。
  • 互操作性: 通过 MCP 标准化通信,使不同的 AI 工具和资源能够无缝协作。

早期采用者和社区支持

ReplitCodeium 这样的公司已经在添加对 MCP 的支持,而像 BlockApollo 这样的组织已经实现了它。这个不断增长的生态系统表明了强大的行业支持以及 MCP 充满希望的未来。

资源和进一步阅读

结论

模型上下文协议是简化 AI 模型与数据源交互方式的重要一步。通过标准化这些连接,MCP 不仅加速了开发,还增强了 AI 助手的能力。Anathopic 在向开发者提供有效使用 AI 的工具方面做得非常出色。

I have spent the past five years immersing myself in the fascinating world of Machine Learning and Deep Learning. My passion and expertise have led me to contribute to over 50 diverse software engineering projects, with a particular focus on AI/ML. My ongoing curiosity has also drawn me toward Natural Language Processing, a field I am eager to explore further.