使用说明
项目简介
本项目是一个 MCP (Model Context Protocol) 服务器的实现,专注于 Markdown 笔记的管理。它允许 MCP 客户端(如 Cursor 编辑器)通过标准化的 MCP 协议与服务器交互,实现对本地 Markdown 笔记的创建、读取、更新和列表等操作。该服务器使用 stdio 作为传输协议,简化了部署和配置过程,特别适合个人知识库管理和本地优先的应用场景。
主要功能点
- Markdown 笔记管理: 提供对 Markdown 格式笔记的创建、读取、更新和删除功能。
- 本地文件系统操作: 直接在用户指定的本地目录下存储和管理笔记文件。
- 资源管理: 暴露笔记仓库的路径和笔记数量等资源信息。
- 工具集成: 通过 MCP 工具 (Tools) 提供明确定义的操作接口,如 'create_note', 'read_note', 'update_note', 'list_notes'。
- 标准 JSON-RPC 通信: 遵循 MCP 协议,使用 JSON-RPC 格式进行客户端和服务器之间的通信。
- 错误处理和日志: 具备完善的错误处理机制和日志记录,方便调试和监控。
- JSON Schema 验证: 对所有操作进行 JSON Schema 验证,确保数据格式的正确性。
- 支持 stdio 传输: 使用标准输入输出流 (stdio) 作为通信通道,易于集成和部署。
安装步骤
-
安装依赖: 在仓库根目录下打开终端,运行以下命令安装项目依赖:
pip install -r requirements.txt -
配置笔记目录: 打开 'main.py' 文件,修改第 110 行的 'notes_dir' 变量值,将其设置为你希望存放 Markdown 笔记的本地目录。例如,如果你想将笔记存储在 'D:\MyNotes' 目录下,则将代码修改为:
notes_dir = r"D:\MyNotes"注意: 请使用绝对路径,并根据你的操作系统调整路径格式。
服务器配置
MCP 客户端(例如 Cursor 编辑器)需要配置 MCP 服务器的启动信息才能与之连接。以下是针对本项目的 MCP 服务器配置信息(JSON 格式),你需要将其添加到 MCP 客户端的配置文件中。以 Cursor 编辑器为例,你需要将以下配置添加到 '.cursor/mcp.json' 文件中(如果需要全局使用,则添加到用户目录下的 '.cursor' 文件夹中):
{ "mcpServers": { "notes-server": { // 服务器名称,可以自定义 "command": "python", // 启动服务器的命令,这里使用 python 解释器 "args": ["main.py"], // 启动命令的参数,这里指定执行 main.py 文件 "env": { "PYTHONIOENCODING": "utf-8" // 设置环境变量,确保 UTF-8 编码支持 } } } }
配置说明:
- '"notes-server"': 是你为这个 MCP 服务器自定义的名称,在客户端中用于标识和引用该服务器。
- '"command": "python"': 指定用于启动服务器的命令是 'python',确保你的系统环境变量中 'python' 指向正确的 Python 解释器。
- '"args": ["main.py"]': 指定传递给 'python' 命令的参数,这里是执行 'main.py' 文件,即启动 MCP 服务器的入口文件。
- '"env": {"PYTHONIOENCODING": "utf-8"}': 设置环境变量 'PYTHONIOENCODING' 为 'utf-8',确保服务器在处理中文等非 ASCII 字符时不会出现编码问题。
如何配置到 Cursor 编辑器:
- 项目级别配置: 将上述 JSON 配置内容保存到你的项目根目录下的 '.cursor/mcp.json' 文件中。Cursor 编辑器会自动检测并加载项目级别的 MCP 服务器配置。
- 全局级别配置:
- 如果你希望在所有 Cursor 项目中使用该 MCP 服务器,可以将上述 JSON 配置内容添加到用户目录下的 '.cursor' 文件夹中 (通常是 'C:\Users\YourUserName.cursor' 或 '~/.cursor') 的 'mcp.json' 文件中。
- 或者在 Cursor 编辑器中,打开 "Settings" (设置) -> "MCP" -> "Add New Global MCP Server" (添加新的全局 MCP 服务器),然后将上述 JSON 配置粘贴到编辑器中,并点击 "Update" (更新)。
基本使用方法
- 启动服务器: 当你在 Cursor 编辑器中打开配置了 MCP 服务器的项目时,服务器通常会自动启动。你也可以手动在项目根目录下打开终端,运行 'python main.py' 命令来启动服务器。服务器将通过 stdio (标准输入/输出) 与 MCP 客户端进行通信。
- 在 MCP 客户端中使用工具: 在 Cursor 编辑器或其他 MCP 客户端中,你可以通过配置好的服务器名称 ('notes-server') 和工具名称(例如 'create_note', 'read_note' 等)来调用服务器提供的功能。具体的调用方式取决于 MCP 客户端的实现,通常会在编辑器或客户端的界面中提供相应的操作入口或命令。
例如,在 Cursor 编辑器中,你可能可以使用特定的命令或快捷键来调用 'create_note' 工具创建新的 Markdown 笔记,并使用 'read_note' 工具读取已有的笔记内容。具体操作请参考你使用的 MCP 客户端的文档或帮助信息。
信息
分类
生产力应用