光标追踪者 📚
一个专注于教育的资源库 模型上下文协议(MCP) - 一本全面指南,帮助您理解、实施并充分利用这一革命性协议。
什么是模型上下文协议(MCP)?
模型上下文协议(MCP)是一个开放标准,它允许人工智能模型以安全且结构化的方式访问外部工具、数据和服务。MCP充当语言模型与外部世界的桥梁,使交互更加丰富且具有上下文意义。
主要特点
🔧 修理工具或扳手的符号 互操作性
- 与多种人工智能模型兼容的标准协议
- 为不同工具和服务提供一致的API
- 促进不同系统之间的集成
🔒(锁形符号,通常表示安全、保密或锁定状态) 安全
- 细粒度的权限和访问控制
- 输入输出验证
- 对已执行行动的全面审计
🚀 表情符号“🚀”在中文中通常被直接保留为“🚀”,因为它是一个国际通用的表情符号,没有固定的中文翻译。它通常用来表示火箭、快速上升、速度极快或激动兴奋的情绪。 可扩展性
- 模块化和可扩展的架构
- 支持自定义工具
- 资源的高效管理
📊(表格) 监测
- 对所有操作进行详细记录
- 实时性能指标
- 可配置的警报和通知
MCP架构
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Modelo de IA │◄──►│ Servidor MCP │◄──►│ Herramientas │
│ │ │ │ │ Externas │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│ │ │
│ │ │
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Contexto │ │ Validación │ │ APIs │
│ Compartido │ │ y Seguridad │ │ REST/GraphQL │
└─────────────────┘ └─────────────────┘ └─────────────────┘MCP的组件
1. MCP 服务器
- 通信中心
- 管理身份验证和授权
- 协调模型与工具之间的交互
2. MCP 客户
- 针对每种人工智能模型的具体实施
- 管理与服务器的通信
- 处理回答和错误
3. MCP工具
- 实施该协议的外部服务
- API(应用程序编程接口)、数据库、文件系统等。
- 每种工具都展现特定的功能
4. 数据模式
- 数据类型的标准化定义
- 自动进出验证
- API 集成文档
常见用例
🏢(企业/公司) 软件开发
- 访问Git仓库
- 与CI/CD系统的集成
- 代码分析和度量
📊 表格/数据图表 数据分析
- 数据库连接
- 大型文件处理
- 数据可视化
🌐(这个符号本身在中文中没有直接对应的翻译,它通常代表“互联网”或“全球网络”的意思,可以理解为“🌐 互联网”或“🌐 全球网络”。) 网络集成
- REST和GraphQL API
- 第三方服务
- Webhooks和通知
🔧 修理工具/扳手 自动化
- 系统任务
- 基础设施管理
- 监控与警报
基本实施
安装
# Instalar el SDK de MCP
npm install @modelcontextprotocol/sdk
# O con pip para Python
pip install mcp-sdkMCP服务器示例
import { MCPServer } from '@modelcontextprotocol/sdk';
const server = new MCPServer({
name: 'mi-servidor-mcp',
version: '1.0.0'
});
// Registrar una herramienta
server.registerTool({
name: 'buscar-usuario',
description: 'Busca un usuario por ID',
parameters: {
type: 'object',
properties: {
userId: { type: 'string' }
},
required: ['userId']
},
handler: async (params) => {
const user = await database.findUser(params.userId);
return { user };
}
});
// Iniciar el servidor
server.start();MCP客户示例
import { MCPClient } from '@modelcontextprotocol/sdk';
const client = new MCPClient({
serverUrl: 'http://localhost:3000/mcp'
});
// Usar una herramienta
const result = await client.callTool('buscar-usuario', {
userId: '123'
});
console.log(result.user);最佳实践
🔐 安全
- 门票始终有效
- 实施强大的身份验证
- 在生产环境中使用HTTPS
- 将权限限制为最低必要程度
⚡(闪电符号,常用于表示速度、能量或紧急情况) 性能
- 在适当的时候实施缓存
- 使用持久连接
- 优化数据库查询
- 监控资源使用情况
🧪 表示“实验器材”或“科学实验”的意思。 测试
- 逐一测试所有工具
- 实施集成测试
- 模拟不同的错误场景
- 验证版本之间的兼容性
📝 文件
- 记录所有可用的工具
- 包括使用示例
- 保持API文档的更新
- 提供故障排除指南
与MCP兼容的流行工具
🗄️(文件柜/文件夹的象征) 数据库
- PostgreSQL(译文:开放源代码的关系数据库管理系统)
- MongoDB(注:这是一个专有名词,通常直接音译为“蒙哥达”或保持原英文形式,但在此处为保持语境通顺,可理解为“MongoDB数据库”或直接提及其名称)
- Redis(注:Redis是一个开源的内存数据结构存储系统,常用于缓存、消息队列等场景,其名称在中文中通常直接保留为“Redis”,不进行翻译。)
- Elasticsearch(中文可译为“Elasticsearch”或根据语境简化为“Elastic”,但通常直接使用原英文名以保持技术术语的准确性)
☁️ 云朵 云服务
- AWS SDK(亚马逊网络服务软件开发工具包)
- 谷歌云平台
- Azure 服务
- Docker API
🔧(扳手) 开发工具
- GitHub API
- GitLab API
- Jenkins API
- Kubernetes API
📊 表格/数据图表 分析与可视化
- Pandas(Python)
- NumPy
- Matplotlib(一个用于创建图表和图形的Python库)
- D3.js
额外资源
📚 书籍 官方文件
🎓 代表“毕业帽”或“学位”,在中文中常用来表示毕业、学位获得或相关庆祝的场合。 教程
🌟 社区
贡献
欢迎贡献!请:
- 为这个仓库创建分支
- 为你的功能创建一个分支(
git checkout -b feature/nueva-caracteristica) - 提交你的更改(
git commit -am 'Agrega nueva característica') - 推送分支(
git push origin feature/nueva-caracteristica) - 提交一个拉取请求(Pull Request)
许可证
此项目采用MIT许可证授权 - 请参阅文件 许可证 详见详情。
联系
______________________________________________________________________
⭐ 如果你觉得这个仓库有用,就给它点个星吧!
______________________________________________________________________
*最后更新时间:$(date)*
