Markdown笔记管理服务

一个用于管理指定目录中Markdown笔记的服务器,提供创建、读取、更新和列出笔记的功能。

  • by nathannj
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 nathannj/mcp-notes

使用说明

MCP Notes服务器

这是一个MCP(模型上下文协议)服务器实现,用于管理给定目录中的markdown注释。服务器提供使用stdio传输创建、读取和更新markdown注释的功能。

特性

  • 创建新的标记注释
  • 阅读现有的降价说明
  • 更新现有的降价备注
  • 列出vault中的所有笔记
  • 指定目录中的自动文件管理
  • 正确的错误处理和记录
  • 笔记创建和修改的时间戳跟踪
  • 所有操作的JSON模式验证

服务器功能

服务器实现了以下功能:

  • 版本:1.0.0
  • 名称:Notes MCP服务器
  • 描述:用于管理给定目录中的markdown注释的服务器
  • 支持的传输:stdio

资源

服务器提供以下资源:

  • 属性:
    • path:通往金库的路径
    • note_count:金库中的钞票总数

工具

服务器实现了以下MCP工具:

create_note

创建新的标记注释。

参数:

  • title:注释标题(必填)
  • content:注释的内容(可选,默认为空字符串)

退货:

  • filename:创建的文件的名称
  • path:创建文件的完整路径
  • created_at:ISO创建时间戳

read_note

读取现有的标记注释。

参数:

  • title:注释标题(必填)

退货:

  • title:说明的标题
  • content:说明的内容
  • path:文件的完整路径
  • created_at:ISO创建时间戳
  • modified_at:上次修改的ISO时间戳

update_note

更新现有的标记注释。

参数:

  • title:要更新的说明的标题(必填)
  • content:注释的新内容(可选,默认为空字符串)

退货:

  • filename:更新文件的名称
  • path:文件的完整路径
  • updated_at:ISO更新时间戳

list_notes

列出vault中的所有标记注释。

参数:无

退货:

  • notes:注释对象数组,每个对象包含:
    • title:说明的标题
    • path:文件的完整路径
    • created_at:ISO创建时间戳
    • modified_at:上次修改的ISO时间戳
  • total:钞票总数

设置

  1. 安装所需的依赖项:
pip install -r requirements.txt
  1. 通过编辑notes_dir属性,将服务器配置为在main.py第110行的给定目录中工作:

  2. 配置Cursor以使用MCP服务器:

    • 配置文件位于 .cursor/mcp.json
    • 游标将自动检测并使用此配置
    • 服务器配置为使用Python和正确的UTF-8编码运行

运行服务器

当Cursor加载项目时,服务器将自动启动。您也可以手动运行它:

python main.py

服务器将启动并通过stdin/stdout监听MCP请求。所有操作都记录了适当的级别(信息/错误),以便调试和监控。

错误处理

服务器为各种场景实现了适当的错误处理:

  • 缺少必要参数
  • 文件已存在
  • 文件未找到
  • 一般例外

所有错误都会被记录下来,并返回相应的错误代码和消息。

配置详情

MCP服务器配置在 .cursor/mcp.json 具有以下设置:

{
  "mcpServers": {
    "notes-server": {
      "command": "python",
      "args": ["main.py"],
      "env": {
        "PYTHONIOENCODING": "utf-8"
      }
    }
  }
}

要将MCP添加为全局使用,请将其添加到用户目录中的.cursor文件夹中,或转到光标设置->MCP->添加新的全局MCP服务器->将此项目中的MCP.json复制/粘贴到新文件->更新args以指向main.py

此配置:

  • 将服务器命名为“笔记服务器”
  • 使用Python运行服务器
  • 设置UTF-8编码以进行正确的字符处理