Skip to main content
Glama

nexus-mcp

将 Nexus/TaskBridge PM 系统暴露给 Claude Code 的 MCP 服务器,让智能体可以直接读取和更新任务,而不是由人工手动转述状态。与 claude-templates 中的两个技能搭配使用 — nexus-plan-work(面向 PM/BA/Team Lead,用于编写)和 nexus-pick-up-task(面向开发者,用于执行)。

对接的是 PM 系统的公共 /api/v1/* API — 而不是 nexus-vscode 的内部端点,后者保留给官方扩展使用。关于原因以及完整的构建历史,请参阅 DEVLOG.md

设置(每人一次)

按顺序执行四个步骤 — 仅登录本身并不会让 Claude Code 感知到 nexus-mcp 的存在。 那是另一步(下面的第 2 步)。此列表中的任何步骤都不需要 git clonenpx 会直接从 GitHub 获取、构建并运行。

1. 登录 — 通过 Developer Portal 生成令牌,并将其存储在操作系统的钥匙串中(@napi-rs/keyring — 绝不存放在文件中):

export NEXUS_API_URL=http://27.254.62.17:8090
npx -y -p github:tanakorncode/nexus-mcp nexus-mcp-login

它会引导你完成 $NEXUS_API_URL/developer → 创建应用 → 授予作用域 tasks:read tasks:write projects:read members:read sprints:read → 生成令牌 — 然后提示你粘贴该令牌以及你的账户邮箱。

2. 向 Claude Code 注册 — 二选一(不需要两者都做,但可以共存):

  • 针对你自己,覆盖每个仓库,只需一次(需要 claude CLI — 先执行 npm install -g @anthropic-ai/claude-code):

    claude mcp add nexus-mcp -s user -e NEXUS_API_URL=http://27.254.62.17:8090 -- npx -y github:tanakorncode/nexus-mcp

    此后任何地方都不再需要 .mcp.json

  • 或者,如果你要打开的某个仓库根部已经提交了 .mcp.json(例如 pea-thailand-backoffice-be)— 无需任何操作,Claude Code 会在你打开该仓库时自动识别。只有在你没有执行上述步骤时才相关。

3. 重新加载 Claude Code(新窗口 / 重启会话)— 无论哪种方式都必须这样做,正在运行的会话不会自行识别新注册的服务器。首次连接较慢(npx 重新获取并全新构建);之后会被缓存。批准一次性信任提示。

4. 验证 — 让 Claude 调用 whoami。如果它能解析出你的名字,则四个步骤全部生效。

同时安装技能(每人一次 — 详见 claude-templates/README.md):

mkdir -p ~/.claude/skills
git clone --depth 1 https://github.com/tanakorncode/claude-templates /tmp/claude-templates
cp -r /tmp/claude-templates/skills/nexus-pick-up-task ~/.claude/skills/
cp -r /tmp/claude-templates/skills/nexus-plan-work ~/.claude/skills/

在 nexus-mcp 本身上进行开发

如果你要修改的是这个仓库自身的代码,而不仅仅是使用它,请改为克隆它,这样修改无需重新发布即可生效:

git clone https://github.com/tanakorncode/nexus-mcp
cd nexus-mcp
npm install
npm run build
npm link          # makes the `nexus-mcp` command available anywhere on this machine

在迭代期间,将 .mcp.json 指向 "command": "nexus-mcp"(不带 args),而不是 npx 形式 — 重新构建(npm run build)并重新加载 Claude Code 窗口以应用更改;否则 MCP 服务器进程会在内存中持有旧代码。

Related MCP server: Dooray MCP Server

这两个技能,以及各自适用的场景

  • nexus-plan-work — 将功能拆分为史诗/故事/任务。用于任务尚不存在时。这里真正要紧的纪律:每个跨仓库的功能对应一个故事,其下每个仓库对应一个任务,每个任务上都设置 repositoryId(这是最容易被跳过的字段,而且一旦遗漏,日后无法恢复)。

  • nexus-pick-up-task — 查找、理解并执行任务,最终产出 PR 和状态更新。用于任务已存在、且有人(人或定时检查)准备好处理时。

完整的逐步说明请直接阅读技能文件本身 — 本 README 不再重复。

工具

身份与发现

工具

用途

whoami

解析已配置的成员(按邮箱匹配 — 没有 /me 端点)

list_projects

你作为成员的项目

get_current_project

自动检测当前仓库对应的项目 — 先尝试 git-remote → 已注册的 GitRepository,否则回退到分支的任务键前缀

get_current_repository

将当前仓库与 Nexus 已注册的仓库进行匹配。如果还没有人在 Project Settings 中添加过该仓库,则返回 “not registered”(而非错误)

读取任务

工具

用途

list_my_tasks

分配给你的任务(按 status 过滤,按 repositoryId 缩小范围)

get_task / get_task_by_key

完整的任务详情,按 id 或人类可读键(如 ALPHA-42)获取 — 包含 storyrepositoryblockedBy/blocksattachmentsembeds

get_current_task

从当前分支名解析任务键并获取其详情

list_story_tasks

同一故事下的兄弟任务 — 跨仓库交接的“另一半”

list_statuses

项目的工作流状态 — update_task_status 接受的确切字符串

list_sprints / list_members

项目中的冲刺 / 与你共享项目的队友

编写(参见 nexus-plan-work

工具

用途

list_epics

项目中的史诗

list_stories

史诗下的故事 — 创建重复项之前先检查

create_story

在史诗下新建故事

list_labels / create_label

项目中的标签 / 新建一个标签

create_task

新建任务 — 必须提供 epicId;如果已知,创建时设置 storyId/repositoryId/blockedById/assigneeId/labelIds

update_task

更改现有任务上的 storyId/repositoryId/blockedById/assigneeId/labelIdsnull 取消设置某个字段;labelIds 是整体替换,而非增量修改)

交接

工具

用途

update_task_status

按名称将任务移动到新状态 — 这是下一个人/智能体关注的信号

可选:定时任务检查(仅通知)

scripts/check-my-tasks.sh 以无头模式(claude -p)运行,并定时检查 list_my_tasks,如果有任何就绪的内容就触发 macOS 通知 — 它不会自行开始编写代码(--allowedTools 被锁定为只读工具外加 Bash(osascript*),因此即使它想编辑文件,在结构上也无法做到)。

launchctl load ~/Library/LaunchAgents/com.pea-thailand.nexus-task-check.plist   # enable, runs every 2h
launchctl unload ~/Library/LaunchAgents/com.pea-thailand.nexus-task-check.plist # disable
tail -f ~/Library/Logs/nexus-task-check.log                                     # watch it run
./scripts/check-my-tasks.sh                                                     # run once, right now

plist 本身不在这个仓库中(它是每人的本地机器配置)— 请复制 DEVLOG.md 中 2026-08-22 条目里的那份,或者询问已经配置好的人。

它只负责检查;收到通知后,仍需要人打开 Claude Code 并说“go” — 如果你想了解为什么止步于此,请参阅 DEVLOG.md

已知限制

  • 不支持评论,不支持关联提交 — 这些路由只存在于仅供扩展使用的内部 API 中,而不在 /api/v1/* 中。若要添加,需要新增 pm-system 路由。

  • 无法通过 API 创建史诗 — 史诗不常创建/由负责人规划;请使用产品 UI。

  • 无法通过 API 上传附件/嵌入内容(读取是没问题的 — get_task 会返回两者)— 请通过产品 UI 附上 Figma 链接/截图。

  • 按仓库范围、故事范围和标签过滤的查询,只有在有人真正在任务上设置了 repositoryId/storyId/labelIds 之后才会返回结果 — 系统不会自动推断任何内容。

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

View all related MCP servers

Related MCP Connectors

  • Project management MCP for AI agents with safe task reads and writes.

  • Connect Claude to Fathom meeting recordings, transcripts, and summaries

  • Persistent context for Claude. Your AI always knows your projects and next actions across sessions.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/tanakorncode/nexus-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server