模型上下文协议服务器构建工具

MCP协议是一个开放的AI工具集成标准,允许开发者构建可连接Claude Desktop及其他AI应用的服务器,实现工具、资源和提示的暴露与调用。

  • by agents-squads
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 kokevidaurre/mcp-protocol-mastery

使用说明

MCP协议掌握

一次构建,随时随地连接。模型上下文协议的完整指南。

你将学到什么

本课程将带您从“什么是MCP?”到构建可与Claude Desktop、VS Code和任何兼容MCP的AI应用程序配合使用的生产就绪服务器。

到最后,你将能够:

  • 构建公开工具、资源和提示的MCP服务器
  • 将服务器连接到Claude Desktop和其他主机
  • 实施安全最佳实践
  • 调试协议问题
  • 在本地和远程部署服务器

先决条件

  • TypeScript或Python经验
  • 熟悉async/await
  • 文本编辑器和终端

不需要: 之前的MCP知识,Claude API经验

学习路径

从这里开始

模块 你将学到什么 时间
什么是MCP? MCP解决的问题,主机/客户端/服务器,三个原语 15分钟
建筑 协议生命周期、JSON-RPC消息、能力协商 20分钟

构建服务器(核心路径)

模块 你将学到什么 时间
服务器基础知识 您的第一台服务器,使用Claude Desktop进行测试,错误处理 30分钟
工具深潜 参数验证、安全、返回结果 25分钟
生产模式 错误处理、分块、确认、反模式 20分钟

建立客户(如果需要)

模块 你将学到什么 时间
客户基础知识 何时构建客户端、管理服务器、LLM集成 25分钟

高级主题

模块 你将学到什么 时间
运输 stdio、SSE、WebSocket、自定义传输 20分钟
安全 路径遍历、输入验证、速率限制 25分钟

动手实验室

实验室 你将构建什么
文件系统服务器 配备读、写、搜索和列表工具的完整服务器

快速开始

选项1:使用现有服务器

// ~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/you/projects"]
    }
  }
}

重新启动克劳德桌面。问: “我的项目目录中有哪些文件?”

选项2:建立自己的(5分钟)

// hello-server.ts
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
import { z } from "zod";

const server = new McpServer({ name: "hello", version: "1.0.0" });

server.tool(
  "greet",
  "Say hello to someone",
  { name: z.string() },
  async ({ name }) => ({
    content: [{ type: "text", text: `Hello, ${name}!` }]
  })
);

await server.connect(new StdioServerTransport());

→ 完整演练 服务器基础知识

MCP的工作原理(30秒版)

┌──────────────────┐                    ┌──────────────────┐
│  CLAUDE DESKTOP  │                    │   YOUR SERVER    │
│                  │                    │                  │
│  "Search for     │  ── tools/call ──► │  search_files()  │
│   .ts files"     │                    │                  │
│                  │  ◄── results ────  │  ["a.ts","b.ts"] │
│  "Found 2 files" │                    │                  │
└──────────────────┘                    └──────────────────┘
        │                                        │
        └─────────── MCP Protocol ───────────────┘
  1. 你搭建了一个服务器 公开工具(AI可以调用的函数)
  2. 克劳德桌面连接 通过MCP连接到您的服务器
  3. 当用户询问时 对于某些事情,克劳德决定使用哪些工具
  4. 您的服务器执行 工具并返回结果
  5. 克劳德回应 向用户提供信息

常见问题

Q: 我需要MCP使用Claude吗? 不,MCP扩展了克劳德的能力。克劳德没有它也能很好地工作。

Q: MCP仅适用于Anthropic产品吗? 不是的。MCP是一个开放标准。VS Code扩展、自定义应用程序和其他AI助手都可以使用它。

Q: 我可以使用Python吗? 对。TypeScript和Python SDK都完全支持。

Q: MCP服务器在哪里运行? 大多数作为子进程在本地运行。您还可以将它们部署为HTTP服务。

资源

相关协议

协议 目的 与MCP的关系
A2A 代理间通信 补充MCP(代理互操作)
AP2 代理支付授权 扩展MCP/A2A用于支付

准备好开始了吗? → 什么是MCP?