Skip to main content
Glama
aavaz-ai

Jira Product Discovery MCP

by aavaz-ai

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault

No arguments

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
jira_getA

Read any Jira data. Returns TOON format by default (30-60% fewer tokens than JSON).

IMPORTANT - Cost Optimization:

  • ALWAYS use jq param to filter response fields. Unfiltered responses are very expensive!

  • Use maxResults query param to restrict result count (e.g., maxResults: "5")

  • If unsure about available fields, first fetch ONE item with maxResults: "1" and NO jq filter to explore the schema, then use jq in subsequent calls

Schema Discovery Pattern:

  1. First call: path: "/rest/api/3/search/jql", queryParams: {"maxResults": "1", "jql": "project=PROJ"} (no jq) - explore available fields

  2. Then use: jq: "issues[*].{key: key, summary: fields.summary, status: fields.status.name}" - extract only what you need

Output format: TOON (default, token-efficient) or JSON (outputFormat: "json")

Common paths:

  • /rest/api/3/project - list all projects

  • /rest/api/3/project/{projectKeyOrId} - get project details

  • /rest/api/3/search/jql - search issues with JQL (use jql query param). NOTE: /rest/api/3/search is deprecated!

  • /rest/api/3/issue/{issueIdOrKey} - get issue details

  • /rest/api/3/issue/{issueIdOrKey}/comment - list issue comments

  • /rest/api/3/issue/{issueIdOrKey}/worklog - list issue worklogs

  • /rest/api/3/issue/{issueIdOrKey}/transitions - get available transitions

  • /rest/api/3/user/search - search users (use query param)

  • /rest/api/3/status - list all statuses

  • /rest/api/3/issuetype - list issue types

  • /rest/api/3/priority - list priorities

JQ examples: issues[*].key, issues[0], issues[*].{key: key, summary: fields.summary}

Example JQL queries: project=PROJ, assignee=currentUser(), status="In Progress", created >= -7d

API reference: https://developer.atlassian.com/cloud/jira/platform/rest/v3/

jira_postA

Create Jira resources. Returns TOON format by default (token-efficient).

IMPORTANT - Cost Optimization:

  • Use jq param to extract only needed fields from response (e.g., jq: "{key: key, id: id}")

  • Unfiltered responses include all metadata and are expensive!

Output format: TOON (default) or JSON (outputFormat: "json")

Common operations:

  1. Create issue: /rest/api/3/issue body: {"fields": {"project": {"key": "PROJ"}, "summary": "Issue title", "issuetype": {"name": "Task"}, "description": {"type": "doc", "version": 1, "content": [{"type": "paragraph", "content": [{"type": "text", "text": "Description"}]}]}}}

  2. Add comment: /rest/api/3/issue/{issueIdOrKey}/comment body: {"body": {"type": "doc", "version": 1, "content": [{"type": "paragraph", "content": [{"type": "text", "text": "Comment text"}]}]}}

  3. Add worklog: /rest/api/3/issue/{issueIdOrKey}/worklog body: {"timeSpentSeconds": 3600, "comment": {"type": "doc", "version": 1, "content": [{"type": "paragraph", "content": [{"type": "text", "text": "Work done"}]}]}}

  4. Transition issue: /rest/api/3/issue/{issueIdOrKey}/transitions body: {"transition": {"id": "31"}}

  5. Add attachment: /rest/api/3/issue/{issueIdOrKey}/attachments Use the typed jira_add_attachment tool, which constructs the required multipart request.

API reference: https://developer.atlassian.com/cloud/jira/platform/rest/v3/

jira_putA

Replace Jira resources (full update). Returns TOON format by default.

IMPORTANT - Cost Optimization: Use jq param to extract only needed fields from response

Output format: TOON (default) or JSON (outputFormat: "json")

Common operations:

  1. Update issue (full): /rest/api/3/issue/{issueIdOrKey} body: {"fields": {"summary": "New title", "description": {...}, "assignee": {"accountId": "..."}}}

  2. Update project: /rest/api/3/project/{projectIdOrKey} body: {"name": "New Project Name", "description": "Updated description"}

  3. Set issue property: /rest/api/3/issue/{issueIdOrKey}/properties/{propertyKey} body: {"value": "property value"}

Note: PUT replaces the entire resource. For partial updates, prefer PATCH.

API reference: https://developer.atlassian.com/cloud/jira/platform/rest/v3/

jira_patchA

Partially update Jira resources. Returns TOON format by default.

IMPORTANT - Cost Optimization: Use jq param to filter response fields.

Output format: TOON (default) or JSON (outputFormat: "json")

Common operations:

  1. Update issue fields: /rest/api/3/issue/{issueIdOrKey} body: {"fields": {"summary": "Updated title"}} (only updates specified fields)

  2. Update comment: /rest/api/3/issue/{issueIdOrKey}/comment/{commentId} body: {"body": {"type": "doc", "version": 1, "content": [{"type": "paragraph", "content": [{"type": "text", "text": "Updated comment"}]}]}}

  3. Update worklog: /rest/api/3/issue/{issueIdOrKey}/worklog/{worklogId} body: {"timeSpentSeconds": 7200}

Note: PATCH only updates the fields you specify, leaving others unchanged.

API reference: https://developer.atlassian.com/cloud/jira/platform/rest/v3/

jira_deleteA

Delete Jira resources. Returns TOON format by default.

Output format: TOON (default) or JSON (outputFormat: "json")

Common operations:

  1. Delete issue: /rest/api/3/issue/{issueIdOrKey} Query param: deleteSubtasks=true to delete subtasks

  2. Delete comment: /rest/api/3/issue/{issueIdOrKey}/comment/{commentId}

  3. Delete worklog: /rest/api/3/issue/{issueIdOrKey}/worklog/{worklogId}

  4. Delete attachment: /rest/api/3/attachment/{attachmentId}

  5. Remove watcher: /rest/api/3/issue/{issueIdOrKey}/watchers Query param: accountId={accountId}

Note: Most DELETE endpoints return 204 No Content on success.

API reference: https://developer.atlassian.com/cloud/jira/platform/rest/v3/

jira_add_attachmentA

Upload one attachment to a Jira issue or Jira Product Discovery idea.

The server converts UTF-8 or base64 content into Jira's required multipart request. Binary files must use encoding=base64. Uploading the same file twice creates two Jira attachments.

jira_list_jpd_insightsA

List native Jira Product Discovery Insights for an idea key.

The server resolves the Jira site, project, issue IDs, and Polaris ARIs. It returns a normalized response and never exposes raw GraphQL or provider envelopes.

jira_create_jpd_insightA

Create a native Jira Product Discovery Insight with supporting evidence in its description.

The server builds a fixed ADF description containing the summary, customer quote, and linked source. Creation uses the existing Jira OAuth bearer and does not create a structured snippet.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

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/aavaz-ai/jira-product-discovery-mcp'

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