backlog-mcp-server
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@backlog-mcp-servershow all issues assigned to me"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Backlog MCP Server
An MCP server implementation that integrates the Backlog API.
Tools
Project API
backlog_get_projects
Execute projects get with pagination and filtering
backlog_get_project
Execute project gets with project id or key
Issue API
backlog_get_issues
Execute issues get with pagination and filtering
backlog_get_issue
Execute issue gets with issue id or key
backlog_add_issue
Execute issue add with issue data
backlog_update_issue
Execute issue update with issue data
backlog_delete_issue
Execute issue delete with issue id or key
Wiki API
backlog_get_wikis
Execute wikis get with keyword
backlog_get_wiki
Execute wiki gets with wiki id or key
backlog_add_wiki
Execute wiki add with wiki data
backlog_update_wiki
Execute wiki update with wiki data
backlog_delete_wiki
Execute wiki delete with wiki id or key
Related MCP server: Backlog MCP Server
Configuration
Getting an API Key
Sign up for a Backlog
Choose a plan (Free plan available here)
Generate your API key from the individual settings help
Environment Variables
This server requires the following environment variables:
BACKLOG_API_KEY: Your Backlog API keyBACKLOG_SPACE_ID: Your Backlog space ID
Usage with Claude Desktop
Add this to your claude_desktop_config.json:
NPX
{
"mcpServers": {
"backlog": {
"command": "npx",
"args": [
"-y",
"backlog-mcp-server"
],
"env": {
"BACKLOG_API_KEY": "YOUR_API_KEY_HERE",
"BACKLOG_SPACE_ID": "YOUR_SPACE_ID_HERE"
}
}
}
}Docker
{
"mcpServers": {
"backlog": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"BACKLOG_API_KEY=YOUR_API_KEY_HERE",
"-e",
"BACKLOG_SPACE_ID=YOUR_SPACE_ID_HERE",
"mcp/backlog"
],
"env": {
"BACKLOG_API_KEY": "YOUR_API_KEY_HERE",
"BACKLOG_SPACE_ID": "YOUR_SPACE_ID_HERE"
}
}
}
}Development
Installation
npm installBuild
npm run buildDebug
npm run debugRunning Tests
T.B.D
Docker Build
docker build -t mcp/backlog -f Dockerfile .Extending the Server
To add new tools:
Define a new Zod schema in
src/core/schema.tsAdd a new tool definition in
src/tools/toolDefinitions.tsand include it inALL_TOOLSCreate a new handler in
src/tools/handlers.tsand register it intoolHandlersImplement business logic in a service in the
src/services/directory
License
This MCP server is licensed under the MIT License. This means you are free to use, modify, and distribute the software, subject to the terms and conditions of the MIT License. For more details, please see the LICENSE file in the project repository.
Available Tools
12 toolsbacklog_add_issueC
Add an issue using the Backlog Issue API.
| Name | Required | Description | Default |
|---|---|---|---|
| dueDate | No | Due date of the issue (YYYY-MM-DD format) | |
| summary | Yes | Summary of the issue | |
| projectId | Yes | Project id | |
| startDate | No | Start date of the issue (YYYY-MM-DD format) | |
| versionId | No | Version id | |
| assigneeId | No | Assignee id | |
| categoryId | No | Category id | |
| priorityId | Yes | Priority id | |
| actualHours | No | Actual hours for the issue | |
| description | No | Description of the issue | |
| issueTypeId | Yes | Issue type id | |
| milestoneId | No | Milestone id | |
| estimatedHours | No | Estimated hours for the issue |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries full burden but fails to disclose any behavioral traits (e.g., side effects, authentication needs, idempotency). Merely stating 'Add an issue' gives no insight into what the tool does beyond the obvious.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single short sentence, which is concise but not front-loaded with key details. It lacks structure or prioritization of information, though it is not verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 13 parameters, no output schema, and no annotations, the description is severely incomplete. It does not explain the tool's behavior, return value, or the context needed to use it effectively.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no extra meaning beyond what the schema already provides, but it does not harm. Credit for having all parameters documented in schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Add an issue' which conveys the verb and resource. However, it does not differentiate from sibling tools like backlog_update_issue, which could cause confusion for the agent.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives, such as when to create vs update an issue. This lack of usage context forces the agent to rely solely on the tool name and parameters.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
backlog_add_wikiC
Add an wiki using the Backlog Wiki API.
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Page Name | |
| content | Yes | Content | |
| projectId | Yes | Project ID | |
| mailNotify | No | True make to notify by Email |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. Description only says 'Add an wiki' without detailing side effects, such as whether mailNotify triggers email, or if creation overwrites existing pages. Very minimal behavioral disclosure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence is concise but lacks depth. Could convey more information (e.g., required parameters or return value) without added length.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Tool is simple with no output schema, but description fails to mention return behavior (e.g., created wiki object) or error conditions. Lacks sufficient context for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema descriptions cover all 4 parameters clearly. Description adds no additional meaning beyond schema, so baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description states 'Add an wiki' with verb and resource, clearly indicating wiki creation. Distinguishes from sibling tools like get/update/delete. However, could be more specific (e.g., 'Create a new wiki page').
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use or not use this tool. Does not mention alternatives (e.g., use backlog_update_wiki for edits) or prerequisites like project existence.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
backlog_delete_issueC
Delete an issue using the Backlog Issue API.
| Name | Required | Description | Default |
|---|---|---|---|
| issueIdOrKey | Yes | Issue ID or Issue Key |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must cover behavioral traits. It omits critical details like irreversibility, permission requirements, and side effects on related data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Extremely concise at one sentence, but too minimal to be considered well-crafted. It lacks any structural elements that aid quick comprehension beyond the bare minimum.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a delete operation with no output schema, the description should mention permanence and related context. It is incomplete for safe agentic use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a clear parameter description. The tool description adds no additional meaning beyond the schema, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (delete) and resource (issue). It is specific and unambiguous, but lacks differentiation from sibling delete tools like backlog_delete_wiki.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. Does not specify prerequisites, consequences, or exclusion criteria.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
backlog_delete_wikiC
Delete an wiki using the Backlog Wiki API.
| Name | Required | Description | Default |
|---|---|---|---|
| wikiId | Yes | Wiki page ID | |
| mailNotify | No | True make to notify by Email |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description lacks detail about side effects, such as whether deletion is permanent, if it requires specific permissions, or if it affects related data. Given no annotations, the description should provide more behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely short (one sentence), which makes it concise but at the expense of completeness. It could benefit from additional, well-structured details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (deletion with two parameters) and lack of output schema, the description is insufficient. It does not mention return values, error scenarios, or the effect of the optional mailNotify parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description does not add extra meaning beyond the schema. The parameters are adequately described in the schema, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Delete') and the resource ('an wiki'), and it distinguishes from sibling tools like backlog_get_wiki or backlog_add_wiki. However, the grammar 'an wiki' is slightly awkward.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as backlog_update_wiki or backlog_get_wiki. There is no mention of prerequisites, conditions, or when deletion is appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
backlog_get_issueC
Performs an issue get using the Backlog Issue API.
| Name | Required | Description | Default |
|---|---|---|---|
| issueIdOrKey | Yes | Issue ID or Issue Key |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided. The description does not disclose that the tool is read-only, any authentication requirements, or other behavioral traits. As a 'get' method, it is presumably safe, but this is not explicitly stated.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise but lacks useful detail. It is not overly verbose, but it could include more context without becoming bulky.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Although the tool is simple with one parameter and no output schema, the description omits usage guidelines and behavioral transparency, leaving gaps for an agent to select or use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides a clear description for the single parameter ('Issue ID or Issue Key'), and the description adds no additional meaning. With 100% schema coverage, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it performs an issue get, and the singular 'issue' distinguishes it from sibling 'backlog_get_issues' (plural). However, it does not explicitly specify the tool's scope or return value.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives like 'backlog_get_issues' for multiple issues or 'backlog_update_issue' for modifications. Usage context is entirely implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
backlog_get_issuesC
Performs list issue get using the Backlog Issues API. Supports pagination, content filtering. Maximum 20 results per request, with offset for pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | Attribute name for sorting | |
| count | No | Number of results (1-100, default 20) | |
| order | No | Sort order | desc |
| offset | No | Offset for pagination | |
| keyword | No | Keyword for searching | |
| statusId | No | Status ids | |
| projectId | No | Project ids | |
| assigneeId | No | Assignee ids | |
| priorityId | No | Priority ids | |
| createdSince | No | Start date of created date (YYYY-MM-DD format) | |
| createdUntil | No | End date of created date (YYYY-MM-DD format) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description mentions pagination (max 20, offset) but contradicts the schema which allows up to 100 results. It does not disclose rate limits, authentication needs, or what callers should expect regarding data returned. With no annotations, the description carries the burden but fails to fully inform.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is brief (two sentences) and avoids fluff, but the first sentence is poorly structured ('Performs list issue get'). It is acceptable but not polished.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 11 parameters and no output schema, the description lacks details on return values, error handling, and how filters interact. The inaccurate count statement further undermines completeness.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. However, the description adds no meaning beyond the schema, and it introduces a factual error by stating max 20 results while the schema says max 100. This misleading information reduces credibility and does not contribute positively.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it performs a list issue operation, which clearly indicates retrieving multiple issues. It is implicitly differentiated from singular tools like backlog_get_issue. However, the phrasing 'list issue get' is awkward and could be more straightforward.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus siblings like backlog_get_issue (for a single issue) or other tools. There is no mention of when not to use it or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
backlog_get_projectC
Performs an project get using the Backlog Project get API.
| Name | Required | Description | Default |
|---|---|---|---|
| projectIdOrKey | Yes | Project ID or Project Key |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, and the description only says 'performs a get', which implies a read operation but does not disclose error behavior, authentication needs, or side effects. The minimal description fails to add value beyond the tool name.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise, but it contains a grammatical error ('an project') and is not front-loaded with the most critical information (e.g., that it gets a single project). It could be more effective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description should compensate by explaining what the tool returns or any important behavior. It does not mention return value structure or handling of missing projects, making it incomplete for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema provides a clear description of the parameter. The tool description adds no additional meaning beyond what the schema already offers, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'project get' combined with the parameter 'projectIdOrKey' and sibling tool 'backlog_get_projects' suggests this tool retrieves a single project, but it could be more explicit about fetching details of a specific project. The typo 'an project' slightly detracts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'backlog_get_projects' for listing projects. The description does not mention any prerequisites or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
backlog_get_projectsB
Performs list project get using the Backlog Projects get API. Supports pagination, content filtering. Maximum 20 results per request, with offset for pagination.
| Name | Required | Description | Default |
|---|---|---|---|
| all | No | Only applies to administrators. If true, it returns all projects. If false, it returns only projects they have joined (set to false by default). | |
| archived | No | For unspecified parameters, this form returns all projects. For false parameters, it returns unarchived projects. For true parameters, it returns archived projects. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must disclose behavior. It mentions pagination but does not state read-only nature, authentication needs, or potential side effects. Incomplete for safety profile.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with action. Some technical jargon ('Backlog Projects get API') but no wasted words. Could be slightly more natural.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, so description should explain return value or structure; it does not. Covers pagination and filtering basics but lacks response format details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage for both boolean parameters, so the schema already explains parameter meanings. Tool description adds minimal value beyond mentioning pagination and filtering.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it lists projects using the Backlog API and mentions pagination. It distinguishes from sibling backlog_get_project (singular) which retrieves a single project.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives like backlog_get_issues or filtering options. Lacks explicit when-to-use or when-not-to-use instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
backlog_get_wikiC
Performs an wiki get using the Backlog Wiki API.
| Name | Required | Description | Default |
|---|---|---|---|
| wikiId | Yes | Wiki page ID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose any behavioral traits such as read-only nature, authentication requirements, or side effects. The description fails to inform the agent about what happens when this tool is invoked.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise, only one sentence. However, it does not fully utilize the space to provide helpful context; it is minimally sufficient but not earnestly helpful.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is incomplete for a tool with no output schema. It does not indicate what the tool returns (e.g., wiki page content, metadata), nor does it address possible errors or access requirements. Given low complexity, more detail is expected.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single parameter 'wikiId', with its own description 'Wiki page ID'. The description adds no additional meaning beyond the schema, but since coverage is high, baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Performs a wiki get' which implies retrieving a single wiki page. Given the required wikiId parameter and sibling tool backlog_get_wikis for listing, the purpose is reasonably clear, though it could be more precise about what is retrieved.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like backlog_get_wikis or other tools. No context about prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
backlog_get_wikisC
Performs list wikis get using the Backlog Wiki API
| Name | Required | Description | Default |
|---|---|---|---|
| keywords | No | Keyword for searching | |
| projectIdOrKey | Yes | Project ID or Project Key |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description bears full responsibility for behavioral disclosure. It only states the action without revealing side effects, read-only nature, or response characteristics. The description does not address pagination, rate limits, or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, which is concise but not well-structured. It lacks any logical breakdown or front-loading of key information. The sentence is minimal but not necessarily ineffective.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema and a simple input schema, the description should at least indicate the expected output (e.g., a list of wiki objects) or mention any default behavior. It fails to provide sufficient context for an AI agent to fully understand the tool's functionality.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% as both 'keywords' and 'projectIdOrKey' have descriptions in the schema. The tool description does not add any extra meaning beyond what the schema already provides. With high schema coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states it performs a list operation for wikis using the Backlog API, which aligns with the tool name 'backlog_get_wikis'. It is distinguishable from sibling 'backlog_get_wiki' (singular) as it implies listing multiple wikis. However, the phrasing 'list wikis get' is slightly awkward and could be clearer.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention any prerequisites, context, or exclusions. For example, it doesn't hint that a project ID is required to scope the request.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
backlog_update_issueB
Update an issue using the Backlog Issue API.
| Name | Required | Description | Default |
|---|---|---|---|
| comment | No | Comment | |
| dueDate | No | Due date | |
| summary | No | Summary | |
| statusId | No | Status id | |
| startDate | No | Start date | |
| versionId | No | Version ids | |
| assigneeId | No | Assignee id | |
| categoryId | No | Category ids | |
| priorityId | No | Priority id | |
| actualHours | No | Actual hours | |
| description | No | Description | |
| issueTypeId | No | Issue type id | |
| milestoneId | No | Milestone ids | |
| attachmentId | No | Attachment ids | |
| issueIdOrKey | Yes | Issue ID or Issue Key | |
| parentIssueId | No | Parent issue id | |
| estimatedHours | No | Estimated hours | |
| notifiedUserId | No | Notified user ids |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It does not disclose behavioral traits such as whether updates are partial or full, side effects like notifications, or error conditions. The phrase 'Update an issue' is vague.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is one sentence, making it concise. However, it is too minimal and could be more informative while still being concise. It earns its place but lacks depth.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (18 parameters, no output schema), the description is insufficient. It does not explain overall behavior, required fields beyond issueIdOrKey, or constraints. More context is needed for effective use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds no extra meaning beyond the schema's parameter descriptions. It does not clarify dependencies or formatting beyond what is in the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Update' and the resource 'an issue', and specifies the API source 'Backlog Issue API'. It is distinct from sibling tools like backlog_add_issue, backlog_get_issue, and backlog_delete_issue.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool, preconditions, or when not to use it. The description lacks context about alternatives or scenarios for updating vs. other operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
backlog_update_wikiC
Update an wiki using the Backlog Wiki API.
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | Page Name | |
| wikiId | Yes | Wiki page ID | |
| content | No | Content | |
| mailNotify | No | True make to notify by Email |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. However, it only repeats the name and does not disclose any behavioral traits such as required permissions, idempotency, or error handling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short and to the point, but it lacks substance. It is concise but could include more useful information without being too long.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters and no output schema, the description is incomplete. It does not explain the effect of the update, what is returned, or how it relates to sibling wiki tools.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, and each parameter is described adequately in the schema. The tool description adds no additional meaning beyond what is already in the input schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action 'Update' and the resource 'a wiki'. It is a specific verb+resource, but it does not distinguish from sibling tools like backlog_add_wiki or backlog_delete_wiki.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when to use this tool versus alternatives. No mention of prerequisites or when not to use it, despite the availability of sibling tools for different operations on wikis.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
12 tool updates
v0.3.0- First observed
backlog_add_issue - First observed
backlog_add_wiki - First observed
backlog_delete_issue - First observed
backlog_delete_wiki - First observed
backlog_get_issue - First observed
backlog_get_issues - First observed
backlog_get_project - First observed
backlog_get_projects - First observed
backlog_get_wiki - First observed
backlog_get_wikis - First observed
backlog_update_issue - First observed
backlog_update_wiki
TDQS
All tools are clearly divided into three distinct domains (projects, issues, wikis), with each tool having a unique verb-noun combination that prevents ambiguity.
All tool names follow the 'backlog_verb_noun' pattern using snake_case, ensuring predictability and consistency across the entire set.
With 12 tools covering three core domains, the count is well-scoped for a Backlog server without being excessive or insufficient.
Issues and wikis have full CRUD plus list operations, but projects lack create/update/delete, leaving a minor gap in lifecycle coverage.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Connect to Atlassian Jira, Confluence, and Compass to search, create, and manage your work.
Manage projects, tasks, time tracking, and team collaboration through natural language.
Task manager your agent can fully operate: boards, tasks, sprints, roles, worklogs, day planner.
Create and manage MeisterTask projects, tasks, and notes from your AI assistant.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceIntegrates Backlog project management with Claude via Model Context Protocol, enabling access to projects, issues, and wiki pages through natural language interactions.1-
- AlicenseBqualityDmaintenanceProvides access to Backlog API for project management, issue tracking, and file operations through Claude Desktop.82511MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI applications to interact with Redmine project management systems for issue tracking, time logging, and project management through natural language.24MIT
- FlicenseAqualityDmaintenanceEnables users to interact with Backlog issues directly from VSCode/GitHub Copilot or Claude Desktop, providing tools to retrieve issues, list comments, and add comments.3-
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/mcpflow/backlog-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server