astock MCP 服务器
让豆包与 WorkBuddy 直接读 / 写 / 删 GitHub 仓库文件,令牌不下发到任何客户端
服务信息
| 端点 | POST /mcp(MCP Streamable HTTP,JSON-RPC 2.0) |
| 协议版本 | 2024-11-05 / 2025-06-18(回显客户端请求值) |
| 仓库 | dqlvxy/astock-recs-bot @ main(唯一可操作对象) |
| 鉴权 | Authorization: Bearer <MCP_TOKEN>,缺失返回 401 |
| 运行模式 | 读取中… |
8 个工具(仓库文件读写)
本服务只负责仓库文件读写删。协作中枢(项目状态 / 交接日志 / 聊天摘要 / 产物索引)与 Actions 只读在 https://astock-mcp.pages.dev/api/mcp,四端需同时装两条。
| 工具 | 作用 | 模式 |
status | HEAD 提交、最近 5 次提交、关键文件大小与缓存版本号 | 只读 |
list_dir | 列目录,含文件大小 | 只读 |
read_file | 读文本文件,超 300KB 自动截断 | 只读 |
search_in_file | 单文件内搜关键词,返回行号与上下文 | 只读 |
list_commits | 最近提交列表 | 只读 |
write_file | 新建或覆盖文件,自动取旧 sha | 写入 |
delete_file | 删除文件 | 删除 |
append_log | 往 collab-log.md 变更记录顶部追加一行 | 写入 |
硬性护栏(代码层拦截,客户端绕不过)
- 禁止写
.github/workflows/** —— GitHub 侧要 workflow 权限,只有 repo 权限时回 404,容易误判成路径错误
- 写
recs.json / today.json / watch.json / review_log.json / params.json 需显式传 allow_data_file: true
- 路径禁止
.. 穿越与绝对路径
- 禁止删除
collab-entry.md / collab-rules.md / collab-log.md
在豆包里接入
- 打开豆包工作 → 左侧「技能 · 连接器 · 伙伴」→ 右上角「新建」→「新建自定义连接器」
- 服务器名称填
astock-mcp
- 传输类型选
Streamable HTTP
- 服务器 URL 填
https://astock-file-mcp.pages.dev/mcp
- 自定义 Headers 加一行:
Authorization = Bearer <MCP_TOKEN>
- 保存后问它「调 status 看看仓库现状」,能返回提交列表即接通