关于 docbot-mcp
docbot-mcp 是一个 MCP 服务,可在 CSV、JSON 和 Markdown 表格之间转换数据。它提供 HTTP 传输,便于集成和在容器环境中部署。
主要功能
- 01CSV 转 JSON
- 02JSON 转 CSV
- 03CSV 转 Markdown 表格
- 04JSON 转 Markdown 表格
- 05支持 HTTP 和 stdio 传输
适用场景
- 01为 JSON 工作流转换 CSV 数据
- 02将表格数据呈现为 Markdown
- 03在容器中部署格式转换工具
MCP 相关
向 MCP 客户端提供四种转换工具:CSV 与 JSON 双向转换,以及将这两种格式转换为 Markdown 表格。服务默认使用 HTTP 传输。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
docbot-mcp
通过 HTTP 传输公开的双向 CSV ↔️ JSON ↔️ Markdown 转换器,作为 MCP(Model Context Protocol)服务运行。
概览
docbot-mcp 是一个 Model Context Protocol 服务,提供用于在 CSV、JSON 和 Markdown 格式之间进行转换的工具。它基于 Model Context Protocol 构建,旨在部署到 AWS App Runner 等无服务器平台。
功能
- ✅ CSV 转 JSON — 将 CSV 字符串解析为 JSON 数组
- ✅ JSON 转 CSV — 将 JSON 数组序列化为 CSV 格式
- ✅ CSV 转 Markdown — 将 CSV 转换为格式化的 Markdown 表格
- ✅ JSON 转 Markdown — 将 JSON 数组转换为 Markdown 表格
- ✅ 基于 HTTP — 提供便于集成的 REST API 端点
- ✅ 容器化 — 可直接部署到 AWS App Runner、Docker 等
安装
npm install
要求
- Node.js 16+(支持 ES 模块)
- 依赖项:
@modelcontextprotocol/sdk— MCP 协议实现@rflukerii/docbot— 文档转换工具express— HTTP 服务框架zod— 输入验证
用法
启动服务
npm start
服务将在 http://localhost:3000 启动,MCP 端点为 /docbot-mcp。
可用工具
所有工具都接受文本参数作为输入,并返回格式化的文本响应。
csvToJson
将 CSV 字符串转换为 JSON 格式。
输入: csv(字符串)
输出: JSON 数组字符串
curl -X POST http://localhost:3000/docbot-mcp \
-H "Content-Type: application/json" \
-d '{"tool": "csvToJson", "input": {"csv": "name,age\nAlice,30"}}'
jsonToCsv
将 JSON 数组转换为 CSV 格式。
输入: json(字符串)
输出: CSV 字符串
curl -X POST http://localhost:3000/docbot-mcp \
-H "Content-Type: application/json" \
-d '{"tool": "jsonToCsv", "input": {"json": "[{\"name\":\"Alice\",\"age\":30}]"}}'
csvToMarkdown
将 CSV 字符串转换为 Markdown 表格。
输入: csv(字符串)
输出: Markdown 表格字符串
jsonToMarkdown
将 JSON 数组转换为 Markdown 表格。
输入: json(字符串)
输出: Markdown 表格字符串
架构
HTTP 传输
服务使用 StreamableHTTPServerTransport,而非 stdio,以便更好地兼容容器化环境。每次对 /docbot-mcp 的请求都会创建一个新的服务实例,处理 MCP 请求并返回结果。
Express Server (port 3000)
↓
POST /docbot-mcp endpoint
↓
MCP Server instance (createServer)
↓
StreamableHTTPServerTransport
↓
Tool execution (csvToJson, jsonToCsv, etc.)
↓
Response back to client
文件结构
index.js— HTTP 服务的主入口点(兼容 AWS App Runner)index-stdio.js— Stdio 传输版本(适用于本地或基于 stdio 的客户端)package.json— 依赖项和脚本
部署
AWS App Runner
服务包含一个为 AWS App Runner 配置的 start 脚本:
{
"scripts": {
"start": "node index.js"
}
}
部署步骤:
- 将代码推送到 AWS CodeCommit、GitHub 或 BitBucket
- 创建 AWS App Runner 服务
- 将来源配置为你的代码仓库
- 设置构建命令:
npm install - 设置启动命令:
npm start - App Runner 将自动在端口 3000 上运行服务
Docker
Dockerfile 示例:
FROM node:18-alpine
WORKDIR /app
COPY package*.json ./
RUN npm install --production
COPY . .
EXPOSE 3000
CMD ["npm", "start"]
开发
在不同传输方式之间切换
- HTTP(默认):
node index.js— 适用于容器化环境 - Stdio:
node index-stdio.js— 适用于直接使用 CLI/stdio 的客户端
添加新工具
编辑 index.js 并使用 server.registerTool() 模式:
server.registerTool(
'toolName',
{
title: 'Display Title',
description: 'What it does',
inputSchema: { paramName: z.type() }
},
async ({ paramName }) => ({
content: [{ type: 'text', text: 'result' }]
})
);
许可证
MIT
更新日志
查看 CHANGELOG.md 了解版本历史和更新。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。