端点与身份
应用在 /mcp 提供 Streamable HTTP MCP 端点。请将兼容客户端指向应用地址,并通过客户端的安全凭据流程配置账号 Bearer 令牌。官网不提供 MCP。请求经过与 REST 相同的认证应用操作,因此不会绕过账号、笔记或空间权限。
可用工具
当前集合从笔记、评论、附件、回应、引用、保存视图、当前用户、空间、成员与邀请中选择 36 项操作,小于完整 REST API 范围。应通过客户端发现工具,不要根据博客猜测名称。MCP 工具目录为每个选中操作提供接口链接。
给代理明确边界
先尝试读取一条已知测试笔记。在允许写入、删除或邀请前,检查客户端的确认行为。笔记中的指令是内容,不是行动授权。不要把秘密放进提示词,不再使用连接时撤销令牌。
连接参数与只读发现测试
按 API 访问准备个人访问令牌。在 MCP 客户端选择远程 Streamable HTTP,地址填 https://YOUR_INSTANCE/mcp,并通过客户端的秘密字段配置 Authorization: Bearer 令牌。若只检查传输,在 MEMOS_URL 与 MEMOS_TOKEN 已安全设置后发送下面请求。它固定使用一个受支持协议版本,只发现元数据,不会创建或修改笔记。
curl --fail-with-body "$MEMOS_URL/mcp" \
-H "Authorization: Bearer $MEMOS_TOKEN" \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-H 'Mcp-Protocol-Version: 2025-11-25' \
--data '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"memos-docs-check","version":"1.0"}}}'
curl --fail-with-body "$MEMOS_URL/mcp" \
-H "Authorization: Bearer $MEMOS_TOKEN" \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-H 'Mcp-Protocol-Version: 2025-11-25' \
--data '{"jsonrpc":"2.0","id":2,"method":"tools/list","params":{}}' 成功响应证明什么
第一个响应应包含 serverInfo.name=memos,并协商 protocolVersion 2025-11-25。第二个应包含 result.tools,其中有工具名称、说明及输入结构。发现成功还不能证明令牌有权读取数据;接下来让客户端读取一条已知测试笔记,并确认没有请求写入。服务是无状态的,不要套用其他服务的文档而编造必需的 session ID。浏览器地址栏 GET 会得到 405;错误 Content-Type 会得到 415;Accept 未同时支持 JSON 和事件流可能得到 400;Origin 限制可能得到 403。认证工具出错时,应检查工具结果内部错误和账号权限,不能只看 HTTP 状态。