AI连接协议学习

MCP是一个开源协议,标准化了AI应用程序如何连接到外部工具、数据源和服务,适用于构建和部署AI工具、资源和提示模板。

  • by yeray-diaz
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 YerayMnopi/learn-mcp

使用说明

学习MCP(模型上下文协议)

一个用于从头开始学习MCP的动手、逐模块的存储库。

MCP是一个开放协议,规范了人工智能应用程序如何连接到外部工具、数据源和服务。可以把它想象成“USB-C for AI”——一个适用于任何地方的标准接口。

先决条件

  • Node.js 20+ (使用ES模块)
  • TypeScript (包含在开发依赖项中)
  • 基本熟悉TypeScript和async/await

设置

npm install

模块

# 模块 你将学到什么
1 MCP基础 架构、原语、传输、hello world服务器
2 构建MCP工具 Zod模式、输入验证、计算器服务器
3 MCP资源 静态/动态资源、URI、文件服务器
4 MCP提示 提示模板、动态参数
5 REST API包装器 封装API、身份验证、缓存、错误处理
6 测试MCP服务器 单元测试、集成测试、MCP检查员
7 高级模式 HTTP传输、日志记录、速率限制、分页
8 分发和部署 npm发布、注册表、Claude Desktop配置
9 代理技能 使用MCP工具构建代理技能

运行模块

每个模块都有一个服务器和(通常)一个客户端,您可以运行:

# Run module 1 server + client
npm run mod1:client

# Run module 2 server + client
npm run mod2:client

# Run tests
npm test

MCP的工作原理(快速概述)

┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│   AI Host   │────▶│  MCP Client │────▶│  MCP Server  │
│ (Claude,    │     │  (in host)  │     │  (your code) │
│  Cursor)    │     │             │     │              │
└─────────────┘     └─────────────┘     └─────────────┘
                         │                     │
                    JSON-RPC 2.0          Tools, Resources,
                    over stdio/HTTP       Prompts

主机 =人工智能应用程序(克劳德桌面、光标等) 客户 =生活在主机内部,讲MCP协议 服务器 =暴露功能的代码

服务器提供三种功能:

  • 工具 -AI可以调用的函数(如API端点)
  • 资源 --AI可以读取的数据(如文件或数据库记录)
  • 提示 --可重复使用的提示模板

资源