今天,我们开源了 Model Context Protocol (MCP),这是一种全新的标准,用于将 AI 助手与存储数据的系统连接起来,包括内容库、业务工具和开发环境。其目标是帮助前沿模型生成更好、更相关的响应。
随着 AI 助手被广泛采用,行业在模型能力方面投入了大量资源,取得了推理和质量的快速进步。然而,即使是最先进的模型也受到其与数据隔绝的限制——被信息孤岛和遗留系统困住。每个新的数据源都需要单独的定制实现,这使得真正互联的系统难以扩展。
MCP 解决了这一挑战。它为 AI 系统与数据源的连接提供了一个通用的开放标准,用单一协议取代了碎片化的集成。这带来了更简单、更可靠的方式,使 AI 系统能够访问它们所需的数据。
模型上下文协议
模型上下文协议是一种开放标准,允许开发者在他们的数据源和 AI 驱动工具之间建立安全的双向连接。其架构非常简单:开发者可以通过 MCP 服务器公开数据,或者构建与这些服务器连接的 AI 应用程序(MCP 客户端)。
今天,我们为开发者推出了模型上下文协议的三个主要组件:
- 模型上下文协议的 规范和 SDK
- 在 Claude 桌面应用 中对本地 MCP 服务器的支持
- 一个 MCP 服务器的开源仓库
Claude 3.5 Sonnet 擅长快速构建 MCP 服务器实现,使组织和个人能够轻松地将其最重要的数据集与各种 AI 驱动工具连接。为了帮助开发者快速上手,我们提供了预构建的 MCP 服务器,支持流行的企业系统,如 Google Drive、Slack、GitHub、Git、Postgres 和 Puppeteer。
早期采用者如 Block 和 Apollo 已将 MCP 集成到其系统中,而包括 Zed、Replit、Codeium 和 Sourcegraph 在内的开发工具公司正在使用 MCP 来增强其平台功能——使 AI 代理能够更好地检索相关信息,更深入地理解编码任务的上下文,并以更少的尝试生成更细致、更实用的代码。
Block 的首席技术官 Dhanji R. Prasanna 表示:“在 Block,开源不仅是一种开发模式,也是我们工作的基础和承诺——致力于创造能够推动重大变革并作为公共资源服务于所有人的技术。像模型上下文协议这样的开放技术是连接 AI 和现实世界应用的桥梁,确保创新是可访问的、透明的,并植根于合作之中。我们很高兴能够参与这个协议,并利用它构建具备自主能力的系统,让人们可以专注于创造性工作,而无需处理机械化的负担。”
开发者无需再为每个数据源维护单独的连接器,现在可以基于标准协议构建解决方案。随着生态系统的成熟,AI 系统将在不同工具和数据集之间保持上下文,取代当今碎片化的集成架构,以更可持续的方式运作。
入门指南
开发者现在就可以开始构建和测试 MCP 连接器了。现有的 Claude for Work 客户可以开始本地测试 MCP 服务器,将 Claude 连接到内部系统和数据集。我们将很快提供开发者工具包,用于部署可服务于整个 Claude for Work 组织的远程生产 MCP 服务器。
开始构建:
- 通过 Claude 桌面应用 安装预构建的 MCP 服务器
- 按照我们的 快速入门指南 构建您的第一个 MCP 服务器
- 为我们的 开源连接器和实现仓库 做出贡献
一个开放的社区
我们致力于将 MCP 打造成一个协作的开源项目和生态系统,并渴望听到您的反馈。无论您是 AI 工具开发者、希望利用现有数据的企业,还是探索前沿技术的早期采用者,我们都邀请您共同构建具有上下文感知能力的 AI 的未来。
使用方法
现有Claude for Work用户可以开始在本地测试MCP服务器
开发者可以通过Claude桌面应用安装预构建的MCP服务器
Model Context Protocol Servers
Model Context Protocol Servers(MCP服务器)是一个展示MCP多样性和可扩展性的开源项目。该项目提供了一系列参考实现和社区贡献的服务器,展示了如何使用MCP为大型语言模型(LLMs)提供安全、受控的工具和数据源访问。每个MCP服务器都使用Typescript MCP SDK或Python MCP SDK实现,支持多种功能模块,如文件管理、数据库访问、浏览器自动化等。
功能列表
- 文件系统:提供安全的文件操作和可配置的访问控制
- GitHub:管理存储库、文件操作和GitHub API集成
- Google Drive:访问和搜索Google Drive文件
- PostgreSQL:只读数据库访问和模式检查
- Slack:频道管理和消息功能
- 内存系统:基于知识图谱的持久化内存系统
- Puppeteer:浏览器自动化和网络抓取
- Brave Search:使用Brave的搜索API进行网络和本地搜索
- Google Maps:提供位置服务、方向和地点详情
- Fetch:高效的网络内容获取和转换
使用帮助
安装和使用MCP服务器
Typescript服务器
- 使用npx直接启动Typescript服务器。例如,启动内存服务器:
npx -y @modelcontextprotocol/server-memory
Python服务器
- 使用uvx或pip直接启动Python服务器。推荐使用uvx以简化使用和设置。例如,启动Git服务器:
# 使用uvx uvx mcp-server-git # 使用pip pip install mcp-server-git python -m mcp_server_git
使用MCP客户端
运行服务器本身并不十分有用,应该将其配置到MCP客户端中。例如,以下是Claude Desktop配置以使用上述服务器:
{
"mcpServers": {
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
}
}
}
更多使用Claude Desktop作为MCP客户端的示例:
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/files"]
},
"git": {
"command": "uvx",
"args": ["mcp-server-git", "--repository", "path/to/git/repo"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_TOKEN>"
}
},
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb"]
}
}
}
创建自定义服务器
如果您有兴趣创建自己的MCP服务器,请访问官方文档获取全面的指南、最佳实践和技术细节。