摘要
通过 GraphQL API 从 AI 代理操作 Zenhub 看板:工作区、管道及其中的 issue、issue 详情、冲刺及其 issue、史诗及其子 issue、估算;移动 issue、设置估算、规划冲刺、创建 issue 和评论。17 个类型化工具外加一个通用查询工具,个人 API 密钥。
引导式设置
2 分钟将 Zenhub 连接到 Microsoft Copilot
开始 AnythingMCP Cloud 免费试用,在引导式设置中连接 Zenhub,再把你的 MCP URL 添加到 Microsoft Copilot。无需代码,也无需自行运行服务器。
无需信用卡 · 7 天试用 · 提供自托管方案
试试这样问
Zenhub 的示例提示
点击任意提示即可复制,然后粘贴到 Claude、ChatGPT、Cursor、Gemini、Copilot 或 OpenClaw 中,在该连接器上运行。
Claude 是 AI,可能会出错。请核对回答。
💡 无需安装? 直接使用 cloud.anythingmcp.com。 登录、点击 Connectors → Zenhub、粘贴凭证、生成 MCP API key — 完成。无 Docker、无
git clone、无本地服务器。
Zenhub + Microsoft Copilot
通过 GraphQL API 从 AI 代理操作 Zenhub 看板:工作区、管道及其中的 issue、issue 详情、冲刺及其 issue、史诗及其子 issue、估算;移动 issue、设置估算、规划冲刺、创建 issue 和评论。17 个类型化工具外加一个通用查询工具,个人 API 密钥。
前提条件
完整的设置说明已内置在连接器中 (在 store 中选择连接器时可见)。所需环境变量:
ZENHUB_API_KEY
步骤 1 — 获取凭证
该连接器使用个人 API 密钥访问 Zenhub GraphQL API。密钥以其所属用户身份操作:该用户看不到的工作区和仓库不会出现在任何结果中。
- 在 Zenhub 中打开仪表板的 API 部分(https://app.zenhub.com/settings/tokens),为 GraphQL API 创建一个 Personal API Key。每个用户最多可有 5 个密钥。
- 立即复制密钥(只显示一次),不加
Bearer前缀填入ZENHUB_API_KEY。旧版 REST 令牌在这里无效。 - 调用
zenhub_get_viewer检查密钥,用zenhub_search_workspaces找到工作区,再用zenhub_list_pipelines和zenhub_list_pipeline_issues读取看板。
注意事项:
- 每个密钥每分钟有 90 秒处理时间,最多 30 个并发请求,单个查询的复杂度不得超过 200 点。因此列表工具默认返回 10 到 30 条;翻页时把
pageInfo.endCursor作为after传入。 - Zenhub 的 ID 是不透明字符串。写入工具需要 Zenhub issue 的
id,而不是 issue 编号。 - 类型化工具未覆盖的内容(发布、路线图、依赖、优先级、标签)可用
zenhub_graphql_query或zenhub_graphql_mutation。 zenhub_move_issue、zenhub_set_estimate、zenhub_add_issues_to_sprints、zenhub_create_issue和zenhub_add_comment会修改看板或发布团队可见的内容。
步骤 2 — 安装 adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
步骤 3 — 在 Microsoft Copilot 中添加连接器
你的服务器 URL: 在 AnythingMCP 中打开 MCP Servers → 此连接器所在的服务器,复制它的 URL(
https://cloud.anythingmcp.com/mcp/…)。本指南中出现YOUR_SERVER_ID的地方都用它替换。
Microsoft Copilot 通过在 Copilot Studio 中构建的智能体使用 MCP 服务器:把 AnythingMCP 作为工具添加到智能体,然后把智能体发布到 Microsoft 365 Copilot 和 Teams。Copilot Studio 从 Microsoft 的云端通过 Streamable HTTP 连接,AnythingMCP 支持这种方式。
- 在 Copilot Studio 中打开你的智能体(或新建一个),进入 Tools,选择 Add a tool → New tool → Model Context Protocol。
- 填写 Server name(例如
AnythingMCP)、说明连接器用途的 Server description,以及 Server URLhttps://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID。Copilot Studio 根据描述决定何时调用该服务器。 - 身份验证选择 API key,把 Type 设为 Header,请求头名称填
X-API-Key,然后选择 Create。 - 在 Add tool 中选择 Create a new connection,粘贴 AnythingMCP 的 MCP API 密钥(MCP Servers → 你的服务器 → API keys),然后选择 Add to agent。
- 在智能体的 Test 窗格中试一试:提出需要用到
Zenhub的工具的请求。 - 选择 Publish,然后进入 Channels → Microsoft 365 and Microsoft Teams,保持勾选 Make agent available in Microsoft Copilot,再选择 Add channel。See agent in Teams 会为你安装该智能体;在 Microsoft 365 Copilot 中输入 @ 并选择该智能体。
希望每个用户各自登录?请选择 OAuth 2.0 → Dynamic discovery 代替 API 密钥:每个用户会在智能体首次调用时登录 AnythingMCP。
自托管?请用你实例的公网 HTTPS 地址替换 https://cloud.anythingmcp.com。Copilot Studio 从 Microsoft 的云端连接,因此 localhost 无法使用。
可用工具
| Tool | What it does |
|---|---|
zenhub_get_viewer | Return the Zenhub user behind the API key (id, name, email, GitHub login) and the Zenhub organizations it belongs to |
zenhub_list_organizations | List the Zenhub organizations of the user with their workspaces (id, name, description) |
zenhub_search_workspaces | Find workspaces the user can access by name |
zenhub_get_workspace | Get one workspace: name, description, organization, default repository, connected repositories (Zenhub id, GitHub id, name), the active… |
zenhub_list_pipelines | List the pipelines (board columns) of a workspace in board order: id, name, description and stage (BACKLOG, SPRINT_BACKLOG, DEVELOPMENT… |
zenhub_list_pipeline_issues | List the issues in one pipeline (board column), in board order: id, number, title, state, repository, estimate, plus the total count |
zenhub_get_issue | Get one issue by repository and number: title, body, state, type, estimate, its pipeline in the workspace, sprints, labels, assignees and… |
zenhub_list_sprints | List the sprints of a workspace, newest first: id, name, state, start and end, total and completed story points, closed issue count. state… |
zenhub_list_sprint_issues | List the issues in one sprint: id, number, title, state, repository and estimate, plus the sprint's points |
zenhub_list_epics | List the Zenhub epics of a workspace: id, title, state (open, to do, in progress or closed), start and end dates, estimate, and issue count… |
zenhub_list_epic_issues | List the child issues of one or more Zenhub epics: id, number, title, state, repository and estimate |
zenhub_get_estimate_values | List the estimate values (story point scale) allowed in each repository of a workspace, for example 1, 2, 3, 5, 8 |
zenhub_move_issue | Move an issue to another pipeline (board column) of the workspace that owns the pipeline, at a position (0 = top) |
zenhub_set_estimate | Set the estimate (story points) of an issue, or clear it by leaving value out |
zenhub_add_issues_to_sprints | Add one or more issues to one or more sprints |
zenhub_create_issue | Create an issue in a repository of the workspace (a GitHub repository, or the workspace's Zenhub repository for a Zenhub issue) |
zenhub_add_comment | Post a comment on an issue or epic |
zenhub_graphql_schema_url | Return the URL of the GraphQL schema (SDL) |
zenhub_graphql_schema | Fetch the GraphQL schema: a summary, one type, a search slice or the full SDL |
zenhub_graphql_query | Run an arbitrary GraphQL query |
zenhub_graphql_mutation | Run an arbitrary GraphQL mutation |
zenhub_graphql_subscription | Run an arbitrary GraphQL subscription (if the API supports it) |
FAQ
这适用于哪个 Copilot? 适用于工作中的 Microsoft 365 Copilot,通过 Copilot Studio 的智能体实现。面向个人账户的 Microsoft Copilot 应用无法添加自己的 MCP 服务器。
我需要什么? 一个可以使用 Copilot Studio 的工作账户(许可证或试用版),用于构建智能体。在 Microsoft 365 Copilot 或 Teams 中使用它的人需要拥有该智能体的访问权限:把它共享给他们,或请管理员为整个组织发布。如果你的组织对 Power Platform 连接器设置了数据策略,这些策略同样适用于 MCP 服务器。
智能体不调用工具。 检查请求头名称是否正好是 X-API-Key,密钥是否属于与 URL 相同的 MCP 服务器,并把 Server description 写得具体:Copilot Studio 根据它决定何时调用服务器。每次修改后重新发布智能体;在已打开的对话中输入 "start over" 即可使用新版本。
下一步
这份指南对你有帮助吗?