使用说明
本地Notes MCP服务器
小型Python模型上下文协议(MCP)服务器,将本地注释文件夹公开为三个 只读的 工具:
list_notessearch_notes(仅限文件名)get_note
目标是用最少的代码展示如何:
- 使用官方
mcpPython包。 - 将其连接到真正的文件系统文件夹。
- 在本地或Docker中运行它,并将MCP客户端指向它。
功能(和非目标)
它的作用
- MCP服务器通过stdio。
- 从单个根文件夹读取笔记。
- 支持嵌套子目录。
- 文本格式:
.md,.txt,.rst,.org. - 三个工具:
list_notes→ 摘要(path,name,extension,size_bytes,modified_iso)search_notes→ 简单的文件名子字符串搜索get_note→ 按相对路径排列的全文
它故意做什么 不 做
- 无写API(无创建/更新/删除)。
- 无内容/RAG/语义搜索(仅文件名)。
- 无身份验证、用户帐户或多租户。
开始(本地)
要求:
-
python 3.11+
-
git,pip克隆https://github.com/ShakedP621/local-notes-mcp-server.git
cd本地notes mcp服务器
python-m venv.venv
Linux/macOS
source.ven/bin/activate
Windows(PowerShell)
.venv\Scripts\Activate.ps1
pip安装-e。
python-m local_notes_mcp
您应该看到类似以下内容:
INFO Using NOTES_ROOT: /path/to/notes
INFO Starting Local Notes MCP Server (notes_root=/path/to/notes)
配置
服务器需要一个 笔记根 目录。它解决了 NOTES_ROOT 按照以下顺序:
NOTES_ROOTenv 是LOCAL_NOTES_MCP_NOTES_ROOTenv-var(便于本地开发)demo-notes/在回购中(如果存在)/notes(Docker的默认设置不错)
这些工具使用的路径是:
- 相对于
NOTES_ROOT - 始终采用POSIX风格
/,即使在Windows上
示例:
root-note.mdpython/asyncio.mdprojects/mcp/design-notes.txt
码头工人
塑造形象:
docker build -t local-notes-mcp-server .
使用repo的演示说明(Linux/macOS)运行:
docker run --rm -it \
-e NOTES_ROOT=/notes \
-v "$(pwd)/demo-notes:/notes:ro" \
local-notes-mcp-server
使用自己的笔记运行(Linux/macOS):
docker run --rm -it \
-e NOTES_ROOT=/notes \
-v "/absolute/path/to/your/notes:/notes:ro" \
local-notes-mcp-server
使用您自己的笔记运行(Windows PowerShell):
docker run --rm -it `
-e NOTES_ROOT=/notes `
-v "C:\Users\you\notes:/notes:ro" `
local-notes-mcp-server
与MCP客户端一起使用
服务器通过MCP进行通话 stdin/stdout:
- 从读取请求
stdin - 将回复写入
stdout - 日志到
stderr
通过Python运行它的典型客户端配置(伪JSON)可能如下:
{
"mcpServers": {
"local-notes": {
"command": "python",
"args": ["-m", "local_notes_mcp"],
"env": {
"LOCAL_NOTES_MCP_NOTES_ROOT": "/path/to/your/notes"
}
}
}
}
或者通过Docker:
{
"mcpServers": {
"local-notes-docker": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e", "NOTES_ROOT=/notes",
"-v", "/absolute/path/to/your/notes:/notes:ro",
"local-notes-mcp-server"
]
}
}
}
调整路径和配置形状,以匹配您的MCP客户端和本地设置。
开发-皮棉、格式、类型检查
本项目使用:
典型命令(来自repo根目录):
ruff check src tests
ruff format src tests
mypy src
