这是一个使用Model Context Protocol(MCP)的服务器,用于验证并渲染Mermaid图表。此服务器使LLMs能够验证并渲染Mermaid图表。
你可以通过在mcp服务器文件中添加以下内容来配置你的MCP客户端以使用Mermaid Validator:
{
"mcpServers": {
"mermaid-validator": {
"command": "npx",
"args": [
"-y",
"@rtuin/mcp-mermaid-validator@latest"
]
}
}
}
该项目被设计为一个简单的TypeScript Node.js应用程序,其结构如下:
mcp-mermaid-validator/
├── dist/ # 编译后的JavaScript输出
│ └── main.js # 编译后的主应用
├── src/ # TypeScript源代码
│ └── main.ts # 主应用入口点
├── node_modules/ # 依赖项
├── package.json # 项目依赖项和脚本
├── package-lock.json # 依赖项锁定文件
├── tsconfig.json # TypeScript配置
├── eslint.config.js # ESLint配置
├── .prettierrc # Prettier配置
└── README.md # 项目文档
核心功能实现在src/main.ts中。该组件:
validateMermaid工具。目的:验证Mermaid图表,并在有效时返回渲染后的PNG。
参数:
diagram (string):要验证的Mermaid图表语法。返回值:
{
content: [
{
type: "text",
text: "Mermaid图表有效"
},
{
type: "image",
data: string, // base64编码的PNG
mimeType: "image/png"
}
]
}
{
content: [
{
type: "text",
text: "Mermaid图表无效"
},
{
type: "text",
text: string // 错误消息
},
{
type: "text",
text: string // 详细的错误输出(如果有)
}
]
}
可以使用npm脚本构建和运行应用程序:
# 安装依赖项
npm install
# 构建应用程序
npm run build
# 本地运行(开发)
npx @modelcontextprotocol/inspector node dist/main.js
# 格式化代码
npm run format
# 检查代码
npm run lint
# 监视更改(开发)
npm run watch
应用程序作为一个MCP服务器运行,通过标准输入/输出通信,使其适合与兼容MCP的客户端集成。
为了发布新版本,请按顺序执行以下步骤:
npm run buildnpm run bumpnpm run changelognpm publish --access public