这是一个符合JSON-RPC 2.0协议的服务器实现,专为模型上下文协议(MCP)的笔记管理而设计(以示例形式呈现)。您可以将此代码作为样板,修改后用于自己的项目。该项目支持跨平台开发,包含命令行界面和服务组件,适用于开发和发布构建。
# 构建所有组件的所有平台
make dev
# 为特定平台构建
make dev-windows
make dev-linux
make dev-darwin
# 构建特定组件
make build-cmd
make build-service
# 构建所有组件的所有平台
make release-all
# 为特定平台构建
make release-windows
make release-linux
make release-darwin
# 运行命令行界面
make run-cmd
# 运行服务
make run-service
make help
可执行文件存放在以下目录:
bin/
dist/
summarize-notes
:创建所有存储笔记的摘要。
style
("brief"/"detailed")add-note
:向服务器添加新的笔记。
name
(字符串)、content
(字符串)cmd
)命令行界面提供对笔记服务器功能的直接访问。
service
)服务组件实现系统级集成和后台运行功能。
服务器实现了一个笔记存储系统,包括:
note://
URI方案,用于访问单个笔记。在以下位置查找配置文件:
$XDG_CONFIG_HOME/mcnotes.json
默认情况下,这相当于:
~/.config/mcnotes.json
.
├── README.md # 项目说明文档
├── go.mod # Go模块文件
├── go.sum # Go依赖项检查和认证文件
├── cmd/
│ ├── add-note/
│ │ └── main.go # 添加笔记的主程序
├── service/
│ └── server.go # 服务端实现
└── resources/
└── note_manager.go # 笔记管理器
{
"debug": false,
"port": 8080,
"database": {
"driver": "sqlite3",
"path": "notes.db"
}
}
错误代码 | 描述 |
---|---|
-32700 | 解析错误 |
-32601 | 方法不存在 |
-32603 | 参数错误 |
该项目实现了一个符合JSON-RPC 2.0协议的服务器,用于模型上下文协议(MCP)的笔记管理。它支持跨平台开发,包含命令行界面和服务组件,具备线程安全的笔记管理功能。服务器实现了自定义 note://
URI方案和资源元数据管理,支持线程安全的并发访问。
此项目在MIT License下开源。
⚠️ 重要提示
如有其他问题,请参考官方文档。