使用说明
项目简介
本项目是一个简单的 MCP 服务器,专注于提供 Markdown 格式化功能。它通过定义一个名为 'format_markdown' 的工具,允许 MCP 客户端调用该工具将纯文本转换为 Markdown 格式的文本。
主要功能点
- Markdown 格式化工具: 提供 'format_markdown' 工具,支持将纯文本转换为 Markdown 格式,包括标题、粗体、斜体和代码块等常用 Markdown 语法。
- 可配置的格式化选项: 'format_markdown' 工具允许客户端自定义格式化选项,例如是否转换标题、粗体、斜体和代码块。
- 支持 Stdio 和 SSE 传输协议: 服务器支持通过标准输入输出 (stdio) 和服务器发送事件 (SSE) 两种传输协议与 MCP 客户端进行通信。
安装步骤
-
安装 'mcp-server' 库 (如果尚未安装): 假设 'mcp-server' 库是运行此服务器的依赖库,您需要先安装它。
pip install mcp-server注意:根据仓库信息,我们推测需要安装 'mcp-server' 库。如果实际运行中提示缺少库,请根据提示安装。
-
保存 'markdown_server.py' 文件: 将 'markdown_server.py' 文件保存到您的本地计算机。
服务器配置
MCP 客户端需要配置服务器的启动命令和参数才能连接到此 Markdown 格式化 MCP 服务器。以下是不同传输协议的配置示例,请根据您的需求选择其一进行配置:
1. Stdio 传输配置 (默认)
{ "serverName": "MarkdownFormatter", "command": "python", "args": ["markdown_server.py"] }
- serverName: 服务器名称,这里设置为 "MarkdownFormatter"。
- command: 启动服务器的命令,这里使用 'python' 解释器。
- args: 传递给 'python' 命令的参数,这里指定运行 'markdown_server.py' 文件。
- 说明: 这是最简单的配置方式,服务器将通过标准输入输出与客户端通信。
2. SSE 传输配置
{ "serverName": "MarkdownFormatter", "command": "python", "args": ["markdown_server.py", "--transport", "sse", "--host", "0.0.0.0", "--port", "3000"] }
- serverName: 服务器名称,同上。
- command: 启动服务器的命令,同上。
- args: 传递给 'python' 命令的参数,包括:
- '"markdown_server.py"': 运行 'markdown_server.py' 文件。
- '"--transport"': 指定传输协议为 'sse' (Server-Sent Events)。
- '"--host"': 指定服务器绑定的主机地址为 '0.0.0.0' (监听所有网络接口)。
- '"--port"': 指定服务器监听的端口为 '3000'。
- 说明: 此配置使用 SSE 协议,允许客户端通过 HTTP 连接接收服务器推送的事件。您可以根据需要修改 '--host' 和 '--port' 参数。
基本使用方法
-
启动服务器: 根据您选择的传输协议配置,在 MCP 客户端中配置好服务器信息后,启动 MCP 客户端,客户端会自动尝试连接并启动服务器。 或者,您也可以手动在命令行中运行 'markdown_server.py' 文件来启动服务器。例如,使用 stdio 传输:
python markdown_server.py或者使用 SSE 传输 (指定端口和主机):
python markdown_server.py --transport sse --host 0.0.0.0 --port 3000 -
调用 'format_markdown' 工具: 在 MCP 客户端中,您可以调用名为 'format_markdown' 的工具,并传递以下参数:
- 'text': 需要格式化为 Markdown 的纯文本内容 (字符串类型,必需)。
- 'headings': 是否转换类似标题的行 (布尔类型,可选,默认为 'True')。
- 'bold': 是否将全大写单词加粗 (布尔类型,可选,默认为 'True')。
- 'italics': 是否将引号内的文本转换为斜体 (布尔类型,可选,默认为 'True')。
- 'code_blocks': 是否将缩进文本格式化为代码块 (布尔类型,可选,默认为 'True')。
-
获取 Markdown 格式化结果: 服务器将执行 'format_markdown' 工具,并将格式化后的 Markdown 文本作为结果返回给 MCP 客户端。
示例 (假设使用 MCP 客户端发送工具调用请求):
{ "jsonrpc": "2.0", "method": "Tool.format_markdown", "params": { "text": "SECTION 1: Introduction\nThis is some plain text.\n\"This is quoted text\".\n Indented code.", "headings": true, "bold": true, "italics": true, "code_blocks": true }, "id": 1 }
预期响应 (MCP 服务器返回):
{ "jsonrpc": "2.0", "result": "## SECTION 1: Introduction\nThis is some plain text.\n*This is quoted text*.\n\n```\nIndented code.\n```", "id": 1 }
信息
分类
开发者工具