项目简介
本项目是一个实现了Model Context Protocol (MCP) 协议的服务器,专注于Mermaid图表的验证和渲染。它作为一个独立的后端服务,可以与任何兼容MCP协议的LLM客户端集成,为LLM提供处理和展示Mermaid图表的能力。通过注册 'validateMermaid' 工具,服务器可以接收LLM客户端发送的Mermaid图表代码,利用Mermaid CLI进行验证,并将渲染后的SVG图表返回给客户端。
主要功能点
- Mermaid图表验证: 使用Mermaid CLI工具,对输入的Mermaid图表语法进行有效性检查。
- SVG渲染: 对于语法正确的Mermaid图表,服务器会将其渲染为SVG格式的矢量图。
- MCP协议支持: 完全遵循Model Context Protocol协议,易于与各种MCP客户端集成。
- 工具注册: 提供 'validateMermaid' 工具,LLM客户端可以通过调用此工具来使用图表验证和渲染功能。
- 标准输入/输出通信: 使用标准输入/输出 (stdio) 作为默认的通信协议,简化部署和集成。
- 详细的错误处理: 当图表验证失败时,服务器会返回详细的错误信息,帮助用户调试和修正图表代码。
安装步骤
-
安装 Node.js 和 npm: 确保你的系统已安装 Node.js 和 npm (Node.js 包管理器)。你可以从 Node.js 官网 下载并安装。
-
安装项目依赖: 克隆或下载此仓库的代码到本地后,在项目根目录下打开终端,运行以下命令安装项目所需的依赖包:
npm install -
构建项目: 运行以下命令编译 TypeScript 代码到 JavaScript:
npm run build构建完成后,会在项目根目录下生成 'dist' 目录,编译后的 JavaScript 代码位于 'dist/main.js'。
服务器配置
为了让MCP客户端能够连接到 'Mermaid图表验证MCP服务器',你需要在MCP客户端的配置文件中添加如下服务器配置信息。这个配置告诉客户端如何启动和连接到此MCP服务器。
{ "mcpServers": { "mermaid-validator": { // 服务器名称,可以自定义 "command": "npx", // 启动服务器的命令,这里使用 npx 运行 npm 包 "args": [ // 命令参数 "@rtuin/mcp-mermaid-validator" // npx 将会执行的 npm 包名,指向本服务器 ] } } }
配置参数说明:
- '"mermaid-validator"': 服务器的名称,客户端使用此名称来引用该服务器。你可以自定义这个名称。
- '"command": "npx"': 指定用于启动服务器的命令。 'npx' 是 npm 包管理器自带的工具,用于执行本地或远程的 npm 包。
- '"args": ["@rtuin/mcp-mermaid-validator"]': 'npx' 命令的参数,这里指定要执行的 npm 包是 '@rtuin/mcp-mermaid-validator'。 当客户端尝试连接此服务器时,MCP客户端会执行 'npx @rtuin/mcp-mermaid-validator' 命令来启动服务器。 确保你的系统可以全局或在项目本地访问到 'npx' 命令。
基本使用方法
-
启动服务器: 当 MCP 客户端尝试连接名为 '"mermaid-validator"' 的服务器时,客户端会根据上述配置自动启动服务器。 通常你无需手动启动,但为了测试,你也可以在项目根目录下运行以下命令手动启动服务器:
npx @rtuin/mcp-mermaid-validator或者使用 inspector 工具进行本地开发测试:
npx @modelcontextprotocol/inspector node dist/main.js -
客户端调用 'validateMermaid' 工具: 在你的MCP客户端中,你可以调用服务器提供的 'validateMermaid' 工具,并传入 Mermaid 图表代码作为参数。 例如,使用 JSON-RPC 格式的请求可能如下所示:
{ "jsonrpc": "2.0", "method": "call", "params": { "tool_name": "validateMermaid", "arguments": { "diagram": "graph LR\nA[Client] --> B[Server]\nB --> C{Process}\nC -->|Success| D[Response]\nC -->|Fail| E[Error]" } }, "id": 1 } -
接收服务器响应: 服务器会返回 JSON-RPC 响应,包含图表验证结果和渲染后的SVG (如果验证成功)。响应内容会根据图表是否有效而有所不同,具体响应格式请参考 API Specification 部分。
通过以上步骤,你就可以在 MCP 客户端中使用 'Mermaid图表验证MCP服务器' 提供的图表验证和渲染功能了。
信息
分类
AI与计算