掘金 人工智能 前天 15:30
以官网计算器为例:手把手教你用 TypeScript SDK 开发 MCP Server
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文介绍了如何使用ModelContext Protocol SDK(MCP SDK)创建一个名为my-server3的自定义MCP服务器,以解决大模型在数学运算中可能出现的精度问题。通过详细的步骤,指导用户安装SDK,编写JavaScript代码实现加法运算工具和动态问候资源,并配置cline以启用和管理该服务器。文章还提供了如何在提示词中指定工具来确保精确计算的示例,帮助开发者构建更强大的AI应用。

✨ **构建自定义MCP服务器以解决大模型精度问题**:文章的核心在于展示如何通过创建自定义MCP服务器来克服大模型在进行复杂数学运算时可能出现的精度误差。通过使用ModelContext Protocol SDK,开发者可以构建专门的工具来处理这类计算,确保结果的准确性。

🚀 **开发加法运算工具和动态问候资源**:示例代码展示了如何利用SDK定义一个名为“add”的工具,该工具接收两个数字作为输入,并返回它们的和。此外,还创建了一个动态资源“greeting”,可以根据传入的名称生成个性化的问候语,体现了SDK在实现多样化功能方面的灵活性。

💻 **配置和启用MCP服务**:通过`cline`配置文件,用户可以指定启动MCP服务器所需的命令和参数。文章详细说明了如何配置`mcpServers`,包括服务器名称、执行命令以及脚本路径。启用服务器后,可以通过观察其状态指示灯(绿色表示正常运行)来确认配置是否成功,并进行必要的重启。

💡 **通过提示词调用自定义工具**:为了确保大模型能够利用自定义的数学工具,文章强调了在提示词中明确指定工具的重要性。当大模型在没有工具辅助的情况下可能直接进行计算时,通过在提示词中加入明确的调用指令(例如,要求使用加法工具),可以强制模型使用已实现的精确计算逻辑,从而获得准确的运算结果。

1. 新建项目

项目名称:my-server3

2. 安装 typescript sdk

npm install @modelcontextprotocol/sdk

参考:github.com/modelcontex…

3. 开发加法运算 mcpserver 程序

大模型对数学运算存在精度问题,这里通过示例自定义一个 mcp server 来解决这个问题。

示例代码放到将 demo.js 文件中。

import { McpServer, ResourceTemplate } from "@modelcontextprotocol/sdk/server/mcp.js";import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";import { z } from "zod";// Create an MCP serverconst server = new McpServer({  name: "Demo",  version: "1.0.0"});// Add an addition toolserver.tool("add",  { a: z.number(), b: z.number() },  async ({ a, b }) => ({    content: [{ type: "text", text: String(a + b) }]  }));// Add a dynamic greeting resourceserver.resource(  "greeting",  new ResourceTemplate("greeting://{name}", { list: undefined }),  async (uri, { name }) => ({    contents: [{      uri: uri.href,      text: `Hello, ${name}!`    }]  }));// Start receiving messages on stdin and sending messages on stdoutconst transport = new StdioServerTransport();await server.connect(transport);

4. cline 配置 mcp 服务

配置如下:

{  "mcpServers": {    "my-add-server": {      "command": "node",      "args": [        "D:\project\AI\MCP\mcpserver\my-server3\demo.js"              ],      "disabled": true,      "autoApprove": []    }  }}

demo.js 保存后,出现在了左边列表上, 启用该 MCP server,如果是红灯,即点【Restart Server】重启下,变绿后, 然后点【Done】

5. 测试 mcp 服务

如果是比较小的数值运算,大模型能正常处理,没误差的话,可能就不会调用工具。这种情况下,可以在提示词指定工具。

提问如下:

2342342423423432 + 2342342342343等于多少

示例如下:

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

ModelContext Protocol MCP Server AI开发 TypeScript SDK
相关文章