Skip to main content
Glama
Backlog MCP Server

Backlog MCP Server

add_issue

Creates a new issue in a specified project with required summary, issue type, and priority, plus optional assignments, dates, and custom fields.

Instructions

Creates a new issue in the specified project.

Input Schema

NameRequiredDescriptionDefault
dueDateNoScheduled due date (yyyy-MM-dd)
summaryYesSummary of the issue
projectIdYesProject ID
startDateNoScheduled start date (yyyy-MM-dd)
versionIdNoVersion IDs
assigneeIdNoUser ID of the assignee
categoryIdNoCategory IDs
priorityIdYesPriority ID
actualHoursNoActual work hours
descriptionNoCreates a new issue in the specified project.
issueTypeIdYesIssue type ID
milestoneIdNoMilestone IDs
attachmentIdNoAttachment IDs
customFieldsNoList of custom fields to set on the issue
parentIssueIdNoParent issue ID
estimatedHoursNoEstimated work hours
notifiedUserIdNoUser IDs to notify

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.15.1
  2. Removedv0.13.1
  3. Changed2 schema fields changedv0.11.1
    • changedInput schema / properties / customFields / items / properties / value / anyOf
      Previous value: -[
      -  {
      -    "type": "number"
      -  },
      -  {
      -    "items": {
      -      "type": "number"
      -    },
      -    "type": "array"
      -  }
      -]New value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "number"
      +  },
      +  {
      +    "items": {
      +      "type": "string"
      +    },
      +    "type": "array"
      +  },
      +  {
      +    "items": {
      +      "type": "number"
      +    },
      +    "type": "array"
      +  }
      +]
    • changedInput schema / properties / customFields / items / properties / value / description
      Previous value: -"The ID(s) of the custom field item. For single-select fields, provide a number. For multi-select fields, provide an array of numbers representing the selected item IDs."New value: +"Value of the custom field. For text/date fields, provide a string. For numeric fields, provide a number. For list fields, provide an array of strings or numbers."
  4. Changed1 schema field changedv0.11.0
    • addedInput schema / properties / organization
      Added value: +{
      +  "description": "Optional organization name. Use list_organizations to inspect available organizations.",
      +  "type": "string"
      +}
  5. Changed3 schema fields changedv1.0.0
    • removedInput schema / properties / customFieldId
      Removed value: -{
      -  "description": "Custom field IDs",
      -  "items": {
      -    "type": "number"
      -  },
      -  "type": "array"
      -}
    • removedInput schema / properties / customFieldValue
      Removed value: -{
      -  "description": "Values for custom fields",
      -  "items": {
      -    "type": "string"
      -  },
      -  "type": "array"
      -}
    • addedInput schema / properties / customFields
      Added value: +{
      +  "description": "List of custom fields to set on the issue",
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "id": {
      +        "description": "The ID of the custom field (e.g., 12345)",
      +        "type": "number"
      +      },
      +      "otherValue": {
      +        "description": "Other value for list type fields",
      +        "type": "string"
      +      },
      +      "value": {
      +        "anyOf": [
      +          {
      +            "type": "number"
      +          },
      +          {
      +            "items": {
      +              "type": "number"
      +            },
      +            "type": "array"
      +          }
      +        ],
      +        "description": "The ID(s) of the custom field item. For single-select fields, provide a number. For multi-select fields, provide an array of numbers representing the selected item IDs."
      +      }
      +    },
      +    "required": [
      +      "id"
      +    ],
      +    "type": "object"
      +  },
      +  "type": "array"
      +}
  6. First observed

TDQS

C2.8/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare destructiveHint=false, idempotentHint=false, and readOnlyHint=false, so the description carries a lighter burden. It adds nothing beyond them — notably it omits that non-idempotency means repeated calls create duplicate issues, and it says nothing about required permissions or side effects (notifications to notifiedUserId, attachments).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single front-loaded sentence with no filler, which is good structure. But it is under-specified rather than concise: for a 17-parameter creation tool it leaves the agent to infer nearly everything.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 17 parameters, four of them opaque numeric IDs, and no output schema, the description should explain prerequisites and what comes back (e.g. the new issue ID). Instead it restates the title and nothing more; the full disclosure burden falls on the schema alone.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% across all 17 parameters, so baseline 3 applies. The description contributes no additional meaning about required IDs, date formats, or how customFields values map to field types beyond what the schema already documents.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Creates a new issue') plus the scoping container ('specified project'), so the agent knows exactly what the tool does. It stops short of differentiating itself from siblings like add_issue_comment or update_issue, but the core action is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance on when to use this versus update_issue, add_issue_comment, or add_related_issue. Nothing tells the agent that issueTypeId and priorityId must first be discovered via get_issue_types and get_priorities, which is the main practical prerequisite for a successful call.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.