zenhub-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ZENHUB_API_KEY | Yes | Your ZenHub API key from ZenHub Settings | |
| ZENHUB_MCP_CUSTOM_INSTRUCTIONS | No | Optional additional instructions for the MCP server |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| zenhub_create_issueC | Create a new GitHub issue via ZenHub |
| zenhub_update_issueC | Update an existing issue |
| zenhub_close_issuesC | Close one or more issues |
| zenhub_reopen_issuesB | Reopen one or more closed issues |
| zenhub_move_issueC | Move issues to a position in a pipeline |
| zenhub_add_assignees_to_issuesC | Add assignees to multiple issues |
| zenhub_remove_assignees_from_issuesB | Remove assignees from multiple issues |
| zenhub_add_labels_to_issuesB | Add labels to multiple issues |
| zenhub_remove_labels_from_issuesC | Remove labels from multiple issues |
| zenhub_set_estimateC | Set an estimate for an issue |
| zenhub_set_multiple_estimatesB | Set estimates on multiple issues |
| zenhub_create_epicA | Create a new epic in ZenHub. Optionally, you can also specify existing issue IDs that should be added as children of the new epic. |
| zenhub_update_epicC | Update an epic |
| zenhub_update_epic_datesB | Update epic's start and end dates |
| zenhub_add_subissues_to_epicB | Add existing issues as sub-issues to an epic. |
| zenhub_get_epicC | Get an epic |
| zenhub_create_workspaceB | Create a new workspace in ZenHub |
| zenhub_get_user_workspacesB | Get all workspaces accessible to the current user |
| zenhub_get_user_organizationsA | Get all ZenHub organizations accessible to the current user |
| zenhub_get_workspace_overviewA | Get workspace overview including basic metadata, pipelines with issue counts, repositories with issue counts, default repository and its issue types, epic summaries, and workspace users |
| zenhub_get_organization_workspacesC | Get all workspaces within a specific ZenHub organization |
| zenhub_get_workspace_repositoriesA | Get all repositories for a workspace |
| zenhub_get_repositories_by_github_idsB | Lookup repositories by their GitHub IDs |
| zenhub_add_repository_to_workspaceB | Add a GitHub repository to a workspace |
| zenhub_get_repository_detailsB | Get detailed information about a specific repository |
| zenhub_get_repository_assignable_usersA | Get users who can be assigned to issues in a repository |
| zenhub_create_sprintC | Create a new sprint |
| zenhub_update_sprintC | Update an existing sprint |
| zenhub_add_issues_to_sprintsC | Add issues to sprints |
| zenhub_get_workspace_sprintsB | Get all sprints in a workspace |
| zenhub_get_workspace_pipelinesB | Get all pipelines in a workspace |
| zenhub_create_milestoneC | Create a milestone |
| zenhub_update_milestoneD | Update a milestone |
| zenhub_add_milestone_to_issuesC | Add milestone to multiple issues |
| zenhub_create_issue_dependencyB | Create a dependency between two issues (blocking → blocked) |
| zenhub_delete_issue_dependencyA | Delete a dependency between two issues (blocking → blocked) |
| zenhub_create_github_labelC | Create a GitHub label |
| zenhub_create_zenhub_labelC | Create a ZenHub label |
| zenhub_get_repository_labelsB | Get all labels in a repository |
| zenhub_get_workspace_labelsB | Get all ZenHub labels in a workspace |
| zenhub_get_workspace_usersB | Get all users in a workspace who can be assigned to issues |
| zenhub_get_repository_collaboratorsC | Get all collaborators for a repository who can be assigned to issues (Note: Repository collaborators not available in ZenHub API - use workspace users instead) |
| zenhub_get_owner_by_loginA | Lookup a GitHub user/organization by login |
| zenhub_get_owner_by_gh_idB | Lookup a GitHub user/organization by GitHub ID |
| zenhub_query_potentially_dangerousB | FALLBACK: Execute custom GraphQL queries when specific tools don't meet your needs. IMPORTANT: Mutations but have EXPLICT appoval from the user by repeating back a super minimal confirmation message. |
| zenhub_search_issuesB | Search and filter issues within a specific pipeline by title, labels, or assignees |
| zenhub_search_issues_in_repositoryA | Search and filter issues in a workspace by user, repository, and pipeline. Use zenhub_get_workspace_overview to get repository IDs and pipeline IDs before using this tool. |
| zenhub_get_workspace_issuesC | Get all issues in a workspace (paginated) |
| zenhub_get_viewerA | Get current authenticated user's ZenHub and GitHub profile information |
| zenhub_get_issue_by_infoA | Lookup an issue by repository and issue number |
| zenhub_get_repositoriesC | Lookup repositories by their GitHub IDs |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/derekbar90/zenhub-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server