28 行代码实现 MCP 服务,可用于 Cursor, Windsurf, Claude Code, Zed... 等任意 MCP 客户端

工作原理

·MCP 协议:

是一种用于 AI 模型与工具交互的协议,让 AI 工具可以调用外部服务和 API

· 功能:

当客户端调用"getWeather"工具并提供城市名称时,服务器会返回"The weather in {城市名} is sunny!"的消息

· 数据验证:

使用 Zod 库确保输入的城市参数是字符串类型

· 通信方式:

使用标准输入/输出(stdio)作为传输层,使其可以在命令行环境中运行 代码解读

· 导入依赖:

从"modelcontextprotocol/sdk/server/mcp.js"导入McpServer类

  • 从"modelcontextprotocol/sdk/server/stdio.js"导入StdioServerTransport类 - 从"zod"导入z(用于数据验证)

· 创建服务器: - 初始化一个名为"Weather Service",版本为"1.0.0"的 MCP 服务器

· 定义工具:

创建一个名为"getWeather"的工具 - 该工具接收一个 city 参数,类型为字符串 - 返回一个包含文本内容的响应,格式为"The weather in {city} is sunny!"

· 设置通信:

创建一个StdioServerTransport实例用于通信 - 将服务器连接到该传输层

整理自:x.com/shao__meng/...

相关推荐
技术卷15 小时前
Windows 下自定义 MCP 踩坑:stdin 默认继承导致 CPython 启动阻塞
python·mcp·zcode
記億揺晃着的那天17 小时前
基于 MCP 的 AI 协作工程技术搭建:从线上故障排查到闭环修复的工程实践
agent·devops·故障排查·mcp·后端架构
张张123y18 小时前
2026 Agent 框架怎么选?拆 3 层底层逻辑(运行循环 / 记忆 / 工具协议)+ 一张决策表
linux·ubuntu·microsoft·langgraph·mcp·crewai·agent 框架
Danny转行做跨境1 天前
MCP 配置连不上?我把亚马逊选品数据的接入坑填了一遍
跨境电商·mcp·sorftime
老周聊架构2 天前
工具与 MCP:让 Agent 长出手脚
agent·mcp
小金的研发日志2 天前
ASP.NET 手搓 MCP 服务(四):刷新令牌的轮换与重放检测
mcp
Dumbness2 天前
写 MCP 服务器踩的坑:stdout 是协议通道,一行不带换行的日志就能让客户端超时
node.js·mcp
黑黑的脸蛋2 天前
同时用 Claude Code 和 Codex,我做了个 Agent 资产库:能预览、能投递、能追更新
ai编程·claude·mcp
Caroline5162 天前
GPT Image 2.5 + DeepSeek V4.1 Flash-1017:从游戏 UI 设计到 3D 项目生成
gpt·游戏·ui·ai 编程·gpt image 2.5
xrlfreedom2 天前
MCP 面试高频考点:如何用 TypeScript SDK 设计带人工确认的高风险 Tool?
mcp·最小权限与审计日志·stdio 传输·typescript mcp sdk