自建一个 MCP Server:把本地能力喂给大模型
MCP 用一套标准协议把"工具/资源"暴露给任意支持它的客户端,本文用最小例子讲清 Server 怎么写。
自建一个 MCP Server
MCP(Model Context Protocol)把”模型能调用什么”标准化了:你写一个 Server,暴露 tools / resources / prompts,客户端(Claude、Cursor、自研 Agent)就能即插即用地用。
一个工具的骨架
server.setRequestHandler(ListToolsRequestSchema, async () => ({
tools: [{
name: 'get_weather',
description: '查询某城市天气',
inputSchema: { type: 'object', properties: { city: { type: 'string' } } },
}],
}));
关键认知
- 传输层:stdio(本地)或 SSE/HTTP(远程)
- 职责分离:Server 只管”能力”,权限与编排交给客户端
- 复用:写好一次,所有兼容客户端都能用,不用为每个模型重写适配
- 上下文成本:工具返回的内容全部进上下文,返回过多要裁剪,见 上下文压缩
和 多智能体 搭配,Agent 就能真正”动手”了。
🔗 被这些文章引用
- 多智能体编排入门:从单 Agent 到团队协作 # Agent
📻 通讯频道
发表评论即向星际广播,讯息以抛物线落入频道。
💾 仅本地可见 这里的讯息只保存在你这台设备的浏览器(localStorage,按文章分别存储), 不会上传服务器、其他访客看不到;清理浏览器数据或换设备后不会保留。 想公开留言请用下方「评论(GitHub)」。
💬 评论(GitHub)
评论区默认关闭。可在「舰长控制台 → 航行设置」或战甲面板「动态交互 → 评论区」开启(需可访问 giscus.app)。