# How to connect Jira to Muse

```json
{
  "title": "How to connect Jira to Muse",
  "toolkit": "Jira",
  "toolkit_slug": "jira",
  "framework": "Muse",
  "framework_slug": "muse",
  "url": "https://composio.dev/toolkits/jira/framework/muse",
  "markdown_url": "https://composio.dev/toolkits/jira/framework/muse.md",
  "updated_at": "2026-10-04T16:37:16.604Z"
}
```

## Introduction

Muse is Meta's AI assistant. It can connect to outside tools through custom connectors, which use the Model Context Protocol (MCP).
This guide explains how to connect Jira to Muse using Composio Connect, which handles OAuth, token refresh, and reliability so you do not have to. You add Composio as a custom connector once, then ask Muse to work with Jira in plain language.

## Also integrate Jira with

- [Claude Code](https://composio.dev/toolkits/jira/framework/claude-code)
- [Cursor](https://composio.dev/toolkits/jira/framework/cursor)
- [ChatGPT](https://composio.dev/toolkits/jira/framework/chatgpt)
- [Claude Cowork](https://composio.dev/toolkits/jira/framework/claude-cowork)
- [Antigravity](https://composio.dev/toolkits/jira/framework/antigravity)
- [OpenAI Agents SDK](https://composio.dev/toolkits/jira/framework/open-ai-agents-sdk)
- [Claude Agent SDK](https://composio.dev/toolkits/jira/framework/claude-agents-sdk)
- [Grok Bot](https://composio.dev/toolkits/jira/framework/grok-bot)
- [Codex](https://composio.dev/toolkits/jira/framework/codex)
- [Grok Build](https://composio.dev/toolkits/jira/framework/grok-build)
- [VS Code](https://composio.dev/toolkits/jira/framework/vscode)
- [OpenCode](https://composio.dev/toolkits/jira/framework/opencode)
- [OpenClaw](https://composio.dev/toolkits/jira/framework/openclaw)
- [Hermes](https://composio.dev/toolkits/jira/framework/hermes-agent)
- [Atomic Agent](https://composio.dev/toolkits/jira/framework/atomic-agent)
- [Google ADK](https://composio.dev/toolkits/jira/framework/google-adk)
- [LangChain](https://composio.dev/toolkits/jira/framework/langchain)
- [Vercel AI SDK](https://composio.dev/toolkits/jira/framework/ai-sdk)
- [Mastra AI](https://composio.dev/toolkits/jira/framework/mastra-ai)
- [LlamaIndex](https://composio.dev/toolkits/jira/framework/llama-index)
- [CrewAI](https://composio.dev/toolkits/jira/framework/crew-ai)
- [Pydantic AI](https://composio.dev/toolkits/jira/framework/pydantic-ai)
- [AutoGen](https://composio.dev/toolkits/jira/framework/autogen)

## TL;DR

- Cross-app workflows across 1,500+ apps from a single plugin layer.
- On-demand tool loading so Muse only loads the tools needed for the current task.
- Programmatic tool calling through a remote workbench for complex, multi-step workflows.
- Multi-account support so users can connect and switch between multiple accounts for the same app.
- Shared account access so teams or agents can work through common business accounts and service connections.
- Managed authentication with OAuth handling, credential storage, and token refresh managed by Composio.
- Safer credential handling so app credentials stay outside the model context and tool responses.
- User-level account isolation so actions run against the correct connected account instead of mixing user access.

## Connect Jira to Muse

### Connecting Jira to Muse
You add Composio to Muse once as a custom connector, then connect Jira from the chat.

## What is the Jira MCP server, and what's possible with it?

The Jira MCP server is an implementation of the Model Context Protocol that connects your AI agent and assistants like Claude, Cursor, etc directly to your Jira account. It provides structured and secure access to your issues, projects, boards, sprints, and teams, so your agent can create issues, update work, plan sprints, manage projects, and coordinate users on your behalf.
- Issue creation and updates: Have your agent create individual or bulk issues, edit their fields, assign them to teammates, link related work, or delete outdated issues.
- Comments, attachments, and worklogs: Let the agent add rich text comments, upload or retrieve attachments, record worklogs, and add watchers to issues.
- Sprint and board planning: Direct your agent to create Scrum or Kanban boards, set up sprints with goals and dates, and create release versions for project milestones.
- Project setup and oversight: Instruct your agent to list or inspect projects, create new projects from available templates, review dashboards, and retrieve saved filters.
- Team and access coordination: Have your agent review users, groups, roles, and permissions, then add users to groups or assign people and groups to project roles.

## Supported Tools

| Tool slug | Name | Description |
|---|---|---|
| `JIRA_ADD_ATTACHMENT` | Add Attachment | Uploads and attaches a file to a Jira issue. |
| `JIRA_ADD_COMMENT` | Add Comment | Adds a comment using Atlassian Document Format (ADF) for rich text to an existing Jira issue. |
| `JIRA_ADD_USERS_TO_PROJECT_ROLE` | Add Users to Project Role | Adds users and optionally groups to a project role. |
| `JIRA_ADD_USER_TO_GROUP` | Add User to Group | Adds a user to a Jira group. |
| `JIRA_ADD_WATCHER_TO_ISSUE` | Add Watcher to Issue | Adds a user to an issue's watcher list by account ID. Requires the authenticated user to have permission to view the issue and manage watchers; insufficient permissions may result in silent failure or an error response. |
| `JIRA_ADD_WORKLOG` | Add Worklog | Tool to add a worklog entry to a Jira issue. Use when logging time spent on an issue. |
| `JIRA_ANALYSE_EXPRESSION` | Analyse Jira Expression | Analyses Jira expressions for syntax validation, type checking, and complexity analysis. Use when you need to validate Jira expression syntax before using it in automation rules, custom fields, or workflows. |
| `JIRA_ASSIGN_ISSUE` | Assign Issue | Assigns a Jira issue to a user, default assignee, or unassigns; supports email/name lookup. |
| `JIRA_BULK_CREATE_ISSUE` | Bulk Create Issues | Creates multiple Jira issues (up to 50 per call) with full feature support including markdown, assignee resolution, and priority handling. |
| `JIRA_CHECK_PERMISSIONS` | Check User Permissions | Check user permissions for global and project-level operations in Jira. Use this action to verify whether a user has specific permissions at the system level or within projects. Useful for authorization checks before performing operations, or for auditing user access rights. |
| `JIRA_CREATE_GROUP` | Create Group | Creates a new group in Jira with the specified name. |
| `JIRA_CREATE_ISSUE` | Create Issue | Creates a new Jira issue (e.g., bug, task, story) in a specified project. IMPORTANT: Different Jira projects may have custom required fields beyond the standard ones (summary, project_key, issue_type). If issue creation fails with 'field X is required', use JIRA_GET_CREATE_METADATA_ISSUE_TYPE_FIELDS (requires projectIdOrKey and issueTypeId parameters) to discover available fields for your project, or check your Jira project's configuration. Custom fields can be provided via the 'additional_properties' parameter as a JSON string (e.g., '{"customfield_12345": "value"}'). Rapid bulk creation may trigger HTTP 429 rate limiting; throttle calls and use exponential backoff on 429 responses. |
| `JIRA_CREATE_ISSUE_LINK` | Link Issues | Links two Jira issues using a specified link type with optional comment. |
| `JIRA_CREATE_JQL_AUTOCOMPLETEDATA` | Get JQL Autocomplete Data | Retrieves JQL autocomplete reference data including reserved words, field names, and function names. Use when building JQL query editors or validating JQL syntax. |
| `JIRA_CREATE_PROJECT` | Create Project | Creates a new Jira project with required lead, template, and type configuration. |
| `JIRA_CREATE_SPRINT` | Create Sprint | Creates a new sprint on a Jira board with optional start/end dates and goal. |
| `JIRA_CREATE_VERSION` | Create Version | Creates a new version for releases or milestones in a Jira project. |
| `JIRA_DELETE_COMMENT` | Delete Comment | Deletes a specific comment from a Jira issue using its ID and the issue's ID/key; requires user permission to delete comments on the issue. |
| `JIRA_DELETE_ISSUE` | Delete Issue | Permanently and irreversibly deletes a Jira issue by its ID or key. Obtain explicit user confirmation before calling. |
| `JIRA_DELETE_VERSION` | Delete Version | Deletes a Jira version and optionally reassigns its issues. |
| `JIRA_DELETE_WORKLOG` | Delete Worklog | Deletes a worklog from a Jira issue with estimate adjustment options. |
| `JIRA_EDIT_ISSUE` | Edit Issue | Updates an existing Jira issue with field values and operations. Supports direct field parameters (summary, description, assignee, priority, etc.) that are merged with the fields parameter. Direct parameters take precedence. |
| `JIRA_EVALUATE_JIRA_EXPRESSION` | Evaluate Jira Expression | Tool to evaluate Jira expressions using the enhanced search API. Use when you need to extract or transform data from Jira using Jira expression language. Useful for complex data queries, transformations, and building custom objects from Jira data. |
| `JIRA_FETCH_BULK_ISSUES` | Bulk Fetch Issues | Tool to bulk fetch multiple Jira issues by their IDs or keys (max 100 per call). Use when you need to retrieve details for multiple issues efficiently in a single API call. |
| `JIRA_FIND_USERS2` | Find Users 2 | Tool to find users in Jira by query string, account ID, or property search. Use when you need to search for users to assign to issues, add as watchers, or perform other user-related operations. |
| `JIRA_FIND_USERS_FOR_PICKER` | Find Users For Picker | Find users for picker components by matching query against user attributes like display name and email. |
| `JIRA_GET_ALL_GROUPS` | Get All Groups | Retrieves all groups from the Jira instance with pagination support. Useful for resolving correct group names or IDs before passing them to other tools. Some returned groups are system-managed and may be inaccessible via other group operations. On large instances, omitting both pagination parameters to fetch all groups can be expensive; prefer targeted lookups with max_results and start_at when possible. |
| `JIRA_GET_ALL_ISSUE_TYPE_SCHEMES` | Get All Issue Type Schemes | Retrieves all Jira issue type schemes with optional filtering and pagination. |
| `JIRA_GET_ALL_PROJECTS` | Get all projects | Retrieves all visible projects using the modern paginated Jira API with server-side filtering and pagination support. Results reflect only projects the authenticated user can access — small or empty result sets may indicate permission restrictions, not absence of projects. An empty `values` array means no projects matched the filters; relax `query`, `status`, or `categoryId` if unexpected. Project keys are mutable; prefer the stable numeric project ID for durable references in follow-up calls. |
| `JIRA_GET_ALL_STATUSES` | Get Issue Statuses | Retrieves all issue statuses associated with workflows from Jira. Returns global statuses that may not be valid for every project or workflow scheme; verify a returned status is applicable to the specific project before use. |
| `JIRA_GET_ALL_USERS` | Get All Users | Retrieves all users from the Jira instance including active, inactive, app accounts, and system accounts, with pagination support. On Jira Cloud, fields like `email_address` may be redacted due to privacy settings — never treat them as guaranteed present. Successful responses may silently omit users due to permission restrictions; a smaller-than-expected result set may reflect access limits, not absence of users. |
| `JIRA_GET_ATTACHMENT` | Get Attachment | Retrieves the binary content of a Jira attachment by ID. Use when you need to download a specific file attached to an issue. |
| `JIRA_GET_ATTACHMENT_META` | Get Attachment Meta | Tool to retrieve Jira attachment settings including upload limits and enabled status. Use when you need to check if attachments are enabled or determine the maximum file size allowed. |
| `JIRA_GET_COMMENT` | Get Comment | Retrieves a specific comment by ID from a Jira issue with optional expansions. |
| `JIRA_GET_COMPONENTS` | Get Component | Tool to retrieve components from Jira projects with search and filtering. Use when you need to list or find components across projects, optionally filtered by project IDs/keys or search query. |
| `JIRA_GET_CREATE_METADATA_ISSUE_TYPE_FIELDS` | Get Create Field Metadata for Issue Type | Tool to retrieve field metadata for a specific issue type in a project. Use this to discover required fields, allowed values, and field configurations before creating issues of a specific type. |
| `JIRA_GET_CURRENT_USER` | Get Current User | Retrieves detailed information about the currently authenticated Jira user. The returned `accountId` is the correct identifier for fields like `lead_account_id` in JIRA_CREATE_PROJECT, JIRA_ADD_WATCHER_TO_ISSUE, and JIRA_REMOVE_WATCHER_FROM_ISSUE — never use email or username in those fields. |
| `JIRA_GET_DASHBOARDS` | Get Dashboards | Tool to list and search Jira dashboards visible to the current user. Use when you need to discover available dashboards, filter by ownership or favorites, or retrieve dashboard details including permissions and popularity. |
| `JIRA_GET_FAVORITE_FILTERS` | Get Favorite Filters | Tool to retrieve favorite filters for the current user. Use when you need to discover which saved filters the user has marked as favorites. |
| `JIRA_GET_FIELDS` | Get fields | Tool to retrieve Jira issue fields metadata. Use before editing an issue to discover custom field IDs and names. Custom fields are addressed as customfield_XXXXX in API calls and cf[XXXXX] in JQL; using display names instead causes 400 Unknown field errors. Returns global metadata — cross-reference with JIRA_GET_ISSUE_EDIT_META before editing, as globally visible fields not listed there will also cause 400 errors when sent to JIRA_EDIT_ISSUE. Results are scoped to the authenticated user's permissions, so field sets may differ between users. |
| `JIRA_GET_FIELDS_PAGINATED` | Get custom fields paginated | Tool to retrieve Jira fields in pages. Use when you need to filter or page through custom and system fields. |
| `JIRA_GET_FILTER` | Get Filter | Retrieves a specific Jira saved filter by ID, including its JQL and sharing metadata, to reuse in subsequent searches. Use when you need to fetch filter details or extract the JQL query to run searches. |
| `JIRA_GET_GROUP` | Get Group | Retrieves details of a specific Jira group by name or ID. Use JIRA_GET_ALL_GROUPS to discover valid group names/IDs first. Some system-managed groups may be inaccessible due to permission restrictions even when name/ID is known. |
| `JIRA_GET_INFO` | Get Service Management Info | Retrieves runtime information for the Jira Service Management instance. Use when you need to check the version, build date, or license status. |
| `JIRA_GET_ISSUE` | Get Issue | Retrieves a Jira issue by ID or key with customizable fields and expansions. Request only needed fields and expansions to avoid large responses. Use specific `customfield_*` keys in `fields` to verify updated values programmatically. |
| `JIRA_GET_ISSUE_CREATE_METADATA` | Get Create Issue Metadata | Tool to retrieve issue creation metadata for Jira projects. Use this to discover available projects, issue types, and required fields before creating issues. |
| `JIRA_GET_ISSUE_EDIT_METADATA` | Get Issue Edit Meta | Tool to retrieve editable fields for a Jira issue. Use before running an edit action to fetch custom field metadata and required fields. |
| `JIRA_GET_ISSUE_LINK_TYPES` | Get Issue Link Types | Retrieves all configured issue link types from Jira. |
| `JIRA_GET_ISSUE_PICKER_SUGGESTIONS` | Get issue picker | Tool to get issue picker suggestions from Jira. Use when you need to search for issues and get auto-completion suggestions. |
| `JIRA_GET_ISSUE_PROPERTY` | Get Issue Property | Retrieves a custom property from a Jira issue by key. |
| `JIRA_GET_ISSUE_RESOLUTIONS` | Get Issue Resolutions | Retrieves all available issue resolution types from Jira. |
| `JIRA_GET_ISSUE_TYPES` | Get issue types | Retrieves all Jira issue types available to the user using the modern API v3 endpoint; results vary based on 'Administer Jira' global or 'Browse projects' project permissions. Response includes two shapes: global issue types (no scope field) and project-scoped types (include scope.project.id); deduplicate by id, not name. Always use issuetype.id (not display name) when referencing issue types in other API calls to avoid validation errors. |
| `JIRA_GET_ISSUE_WATCHERS` | Get Issue Watchers | Retrieves users watching a Jira issue for update notifications. Watcher data access may be restricted by Jira permissions. Returns all watchers; filter client-side by `accountId` to check if a specific user is watching. |
| `JIRA_GET_JQL_AUTOCOMPLETEDATA` | Get JQL autocomplete reference data | Tool to retrieve JQL autocomplete reference data. Use when you need to discover available JQL fields, functions, and reserved words for building queries. |
| `JIRA_GET_JQL_AUTOCOMPLETEDATA_SUGGESTIONS` | Get JQL autocomplete suggestions | Tool to get JQL field auto-complete suggestions. Use when building JQL queries to discover valid field values or predicate options. |
| `JIRA_GET_MY_PERMISSIONS` | Get My Permissions | Tool to retrieve the user's permissions in Jira. Use when checking what actions the authenticated user can perform in a specific context (project, issue, or comment). |
| `JIRA_GET_MYPREFERENCES_LOCALE` | Get User Locale Preference | Tool to retrieve the locale preference of the currently authenticated Jira user. Use when you need to know the user's language and regional settings. |
| `JIRA_GET_PERMISSIONS` | Get Permissions | Tool to retrieve all available Jira permissions. Use when you need to list all permission types that exist in Jira, including project and global permissions. |
| `JIRA_GET_PERMITTED_PROJECTS` | Get Permitted Projects | Tool to retrieve projects where the current user has specific permissions. Use when you need to find which projects a user can access with certain permission levels. |
| `JIRA_GET_PROJECT` | Get Project | Retrieves details of a Jira project by its ID or key. |
| `JIRA_GET_PROJECT_ROLES` | Get Project Roles | Retrieves all available roles for a Jira project. Role IDs are project-specific and must not be reused across projects; call this action per project to obtain correct role IDs. |
| `JIRA_GET_PROJECT_TYPE` | Get Project Type | Retrieves detailed information about a specific Jira project type by its key. Use when you need to get metadata about project types like software, service desk, business, or product discovery projects. |
| `JIRA_GET_PROJECT_VERSIONS` | Get Project Versions | Retrieves all versions for a Jira project with optional expansion. Use version IDs from the response (not names) when setting fixVersions or affectedVersions on issues — submitting names alone causes 400 validation errors. |
| `JIRA_GET_RECENT_PROJECTS` | Get Recent Projects | Retrieves a list of projects recently accessed by the authenticated user. |
| `JIRA_GET_REMOTE_ISSUE_LINKS` | Get Issue Remote Links | Retrieves links from a Jira issue to external resources. |
| `JIRA_GET_SERVER_INFO` | Get Server Info | Tool to retrieve Jira instance server information. Use when you need details about the Jira version, build, deployment type, or server configuration. |
| `JIRA_GET_SERVICE_DESK_REQUEST_TYPE_FIELDS` | Get Service Desk Request Type Fields | Tool to retrieve JSM request type field metadata for filling out portal requests. Use when you need to know which fields are required and their valid values. |
| `JIRA_GET_SYSTEM_AVATARS` | Get System Avatars | Tool to retrieve all system avatars for a specific type (issuetype, project, user, or priority). Use when you need to get a list of available default avatars that can be assigned to Jira entities. |
| `JIRA_GET_TRANSITIONS` | Get Transitions | Retrieves available workflow transitions for a Jira issue. Always use the numeric `id` from the response when calling JIRA_TRANSITION_ISSUE — transition IDs are project/workflow-specific and must not be hardcoded or reused across different issues or projects. When multiple transitions share similar names, use `id` to disambiguate. |
| `JIRA_GET_UNIVERSAL_AVATAR_TYPE_OWNER` | Get Universal Avatar Type Owner | Tool to retrieve all avatars (system and custom) for a specific type and entity in Jira. Use when you need to view available avatar options for projects, issue types, or priorities. |
| `JIRA_GET_UNIVERSAL_AVATAR_VIEW_TYPE` | Get Universal Avatar View Type | Tool to retrieve the default avatar image for a specific type (project, issuetype, or priority) from Jira. Use when you need to download the default avatar for a type. |
| `JIRA_GET_VIEW_TYPE_AVATAR` | Get Avatar Image | Tool to retrieve a specific avatar image by type and ID from Jira. Use when you need to download avatar images for projects, issue types, or priorities. |
| `JIRA_GET_VOTES` | Get Issue Votes | Fetches voting details for a Jira issue; requires voting to be enabled in Jira's general settings. |
| `JIRA_GET_WORKLOG` | Get Worklogs | Retrieves worklogs for a specified Jira issue. |
| `JIRA_LIST_ALL_PROJECTS` | List All Projects | Tool to list all projects accessible to the user. Use when you need to retrieve a comprehensive list of all Jira projects. |
| `JIRA_LIST_BOARDS` | List Boards | Retrieves paginated Jira boards with filtering and sorting options. Use `start_at` and `max_results` together, looping through pages to retrieve all results. |
| `JIRA_LIST_COMMENTS` | List Comments by IDs | Tool to retrieve multiple comments by their IDs in a single request. Use when you need to fetch specific comments efficiently. Supports up to 1000 comment IDs per request with optional expansion for rendered HTML and properties. |
| `JIRA_LIST_FILTERS` | List Jira Filters | Tool to search and list Jira saved filters (saved searches) visible to the current user. Use when you need to discover existing filters, find filters by name or owner, or get filter details including JQL queries and sharing permissions. |
| `JIRA_LIST_GROUPS_PICKER` | List Groups (Picker) | Tool to search and list groups using Jira's picker endpoint. Use when you need to find groups by name or get a filtered list of groups. |
| `JIRA_LIST_ISSUE_COMMENTS` | List Issue Comments | Retrieves paginated comments from a Jira issue with optional ordering. Paginate by incrementing `start_at` by `max_results` until the cumulative count reaches the `total` field in the response. A response with `total=0` and an empty comments array means the issue has no comments. |
| `JIRA_LIST_PROJECT_TYPES` | List Project Types | Retrieves all Jira project types available in the instance. Use when you need to discover available project types or list all types without filtering by a specific key. |
| `JIRA_LIST_SPRINTS` | List Sprints | Retrieves paginated sprints from a Jira board with optional state filtering. |
| `JIRA_MOVE_ISSUE_TO_SPRINT` | Move Issues to Sprint | Moves one or more Jira issues to a specified active sprint. |
| `JIRA_PARSE_JQL_QUERIES` | Parse JQL Queries | Parse and validate JQL queries, returning their abstract syntax tree structure along with any errors or warnings. Use when you need to validate JQL syntax or understand query structure before execution. |
| `JIRA_REMOVE_USER_FROM_GROUP` | Remove User from Group | Removes a user from a Jira group. This is a destructive operation that revokes group-based permissions; confirm intent before calling. |
| `JIRA_REMOVE_USER_FROM_PROJECT_ROLE` | Remove User from Project Role | Removes a user or group from a project role. |
| `JIRA_REMOVE_WATCHER_FROM_ISSUE` | Remove Watcher from Issue | Removes a user from an issue's watcher list by account ID. |
| `JIRA_SEARCH_APPROXIMATE_COUNT` | Search Approximate Count | Count issues matching a JQL query using approximate count endpoint. Use when you need a fast count of issues without retrieving full issue details. The JQL query must be bounded (include at least one search restriction). |
| `JIRA_SEARCH_DASHBOARDS` | Search Dashboards | Tool to search for Jira dashboards with filtering, sorting, and pagination support. Use when you need to find dashboards by name, owner, sharing permissions, or status. Supports filtering by owner account ID, group, project, and dashboard name. |
| `JIRA_SEARCH_FOR_ISSUES_USING_JQL_GET` | Search Issues Using JQL (GET) | Searches for Jira issues using JQL with pagination and field selection. |
| `JIRA_SEARCH_ISSUES` | Search issues | Advanced Jira issue search supporting structured filters and raw JQL. At least one filter parameter (e.g., jql, project_key, updated_after) is required; calls with no parameters will be rejected. |
| `JIRA_SEND_NOTIFICATION_FOR_ISSUE` | Send Notification for Issue | Sends a customized email notification for a Jira issue. |
| `JIRA_TRANSITION_ISSUE` | Transition Issue | Transitions a Jira issue to a different workflow state, with support for transition name lookup and user assignment by email. IMPORTANT: Only fields that are on the transition's screen can be set during the transition. Which fields are available depends on the Jira workflow configuration and varies per project. Use JIRA_GET_TRANSITIONS with expand='transitions.fields' to check which fields a transition supports. If a field (e.g., assignee) is not on the transition screen, use a JIRA_EDIT_ISSUE action after the transition to set other fields. |
| `JIRA_UPDATE_COMMENT` | Update Comment | Updates text content or visibility of an existing Jira comment. |

## Supported Triggers

| Trigger slug | Name | Description |
|---|---|---|
| `JIRA_NEW_ISSUE_TRIGGER` | New Issue | Triggered when a new issue is created in Jira |
| `JIRA_NEW_PROJECT_TRIGGER` | New Project | Triggered when a new project is added in Jira |
| `JIRA_UPDATED_ISSUE_TRIGGER` | Updated Issue | Triggered when an issue is updated in Jira |

## Troubleshooting

### 1. Why doesn't Muse show a button to add my API key?

Muse shows the button only when you ask it to open the secure credentials store.
- Start a new chat.
- Send the message from step 1 exactly as written.
- If Muse asks for the key in the chat, do not paste it. Ask Muse to open the secure credentials store.

### 2. Why does the Composio connection fail after I add my API key?

The key or the connector settings are not correct.
- Copy the full key from the Composio dashboard. It starts with ck_.
- Make sure the URL is https://connect.composio.dev/mcp and the header is x-consumer-api-key.
- Remove the Composio connector in Muse settings, then do steps 1 to 3 again.

### 3. Why doesn't Muse use the Composio tools for Jira?

Muse may not pick the Composio connector for the request.
- Ask Muse to list its Composio tools.
- Name Composio and Jira in your request, for example: Use Composio to connect to Jira.
- If it still does not work, start a new chat and try again.

### 4. Why does Muse ask me to connect Jira again?

Your Jira connection expired or was removed.
- Open the link Muse gives you and sign in to Jira again.
- Check that the Jira connection shows as ACTIVE in the Composio dashboard.

### 5. What do I do if I pasted my API key into the chat?

Treat the key as exposed.
- Create a new API key in the Composio dashboard and delete the old one.
- Add the new key in Muse's secure credentials store, not in the chat.

## Creating MCP Server - Stand-alone vs Composio SDK

Once connected, Muse can access the Jira MCP server through Composio to run the actions you authorize, using plain language in the chat.

## Complete Code

None listed.

## Conclusion

### Way Forward
Now that Jira is connected, extend your setup by connecting the other apps you already use every day, so Muse can run true cross-app workflows end to end.
- Connect Calendar to turn threads into scheduled meetings automatically.
- Connect Slack or Teams to post summaries, approvals, and alerts where your team works.
- Connect Notion, Linear, Jira, or Asana to convert requests into tickets, tasks, and docs.
- Connect Drive, Dropbox, or OneDrive to fetch, file, and share attachments without manual steps.
Start with one workflow you do repeatedly, then keep adding apps as you find new handoffs. With everything behind a single connection, Muse can coordinate multiple tools safely and reliably in one conversation.

## How to build Jira MCP Agent with another framework

- [Claude Code](https://composio.dev/toolkits/jira/framework/claude-code)
- [Cursor](https://composio.dev/toolkits/jira/framework/cursor)
- [ChatGPT](https://composio.dev/toolkits/jira/framework/chatgpt)
- [Claude Cowork](https://composio.dev/toolkits/jira/framework/claude-cowork)
- [Antigravity](https://composio.dev/toolkits/jira/framework/antigravity)
- [OpenAI Agents SDK](https://composio.dev/toolkits/jira/framework/open-ai-agents-sdk)
- [Claude Agent SDK](https://composio.dev/toolkits/jira/framework/claude-agents-sdk)
- [Grok Bot](https://composio.dev/toolkits/jira/framework/grok-bot)
- [Codex](https://composio.dev/toolkits/jira/framework/codex)
- [Grok Build](https://composio.dev/toolkits/jira/framework/grok-build)
- [VS Code](https://composio.dev/toolkits/jira/framework/vscode)
- [OpenCode](https://composio.dev/toolkits/jira/framework/opencode)
- [OpenClaw](https://composio.dev/toolkits/jira/framework/openclaw)
- [Hermes](https://composio.dev/toolkits/jira/framework/hermes-agent)
- [Atomic Agent](https://composio.dev/toolkits/jira/framework/atomic-agent)
- [Google ADK](https://composio.dev/toolkits/jira/framework/google-adk)
- [LangChain](https://composio.dev/toolkits/jira/framework/langchain)
- [Vercel AI SDK](https://composio.dev/toolkits/jira/framework/ai-sdk)
- [Mastra AI](https://composio.dev/toolkits/jira/framework/mastra-ai)
- [LlamaIndex](https://composio.dev/toolkits/jira/framework/llama-index)
- [CrewAI](https://composio.dev/toolkits/jira/framework/crew-ai)
- [Pydantic AI](https://composio.dev/toolkits/jira/framework/pydantic-ai)
- [AutoGen](https://composio.dev/toolkits/jira/framework/autogen)

## Related Toolkits

- [Google Sheets](https://composio.dev/toolkits/googlesheets) - Google Sheets is a cloud-based spreadsheet tool for real-time collaboration and data analysis. It lets teams work together from anywhere, updating information instantly.
- [Notion](https://composio.dev/toolkits/notion) - Notion is a collaborative workspace for notes, docs, wikis, and tasks. It streamlines team knowledge, project tracking, and workflow customization in one place.
- [Airtable](https://composio.dev/toolkits/airtable) - Airtable combines the flexibility of spreadsheets with the power of a database for easy project and data management. Teams use Airtable to organize, track, and collaborate with custom views and automations.
- [Asana](https://composio.dev/toolkits/asana) - Asana is a collaborative work management platform for teams to organize and track projects. It streamlines teamwork, boosts productivity, and keeps everyone aligned on goals.
- [Google Tasks](https://composio.dev/toolkits/googletasks) - Google Tasks is a to-do list and task management tool integrated into Gmail and Google Calendar. It helps you organize, track, and complete tasks across your Google ecosystem.
- [Linear](https://composio.dev/toolkits/linear) - Linear is a modern issue tracking and project planning tool for fast-moving teams. It helps streamline workflows, organize projects, and boost productivity.
- [Clickup](https://composio.dev/toolkits/clickup) - ClickUp is an all-in-one productivity platform for managing tasks, docs, goals, and team collaboration. It streamlines project workflows so teams can work smarter and stay organized in one place.
- [Monday](https://composio.dev/toolkits/monday) - Monday.com is a customizable work management platform for project planning and collaboration. It helps teams organize tasks, automate workflows, and track progress in real time.
- [Addressfinder](https://composio.dev/toolkits/addressfinder) - Addressfinder is a data quality platform for verifying addresses, emails, and phone numbers. It helps you ensure accurate customer and contact data every time.
- [Agiled](https://composio.dev/toolkits/agiled) - Agiled is an all-in-one business management platform for CRM, projects, and finance. It helps you streamline workflows, consolidate client data, and manage business processes in one place.
- [AirOps MCP](https://composio.dev/toolkits/airops_mcp) - AirOps MCP is AirOps' managed content platform exposing brand context, knowledge bases, and workflows. Use it to give agents brand-aware content, automate content workflows, and track Brand Kit edits.
- [Amazing Marvin](https://composio.dev/toolkits/amazing_marvin) - Amazing Marvin is a personal productivity app for tasks, projects, habits, planning, time tracking, and rewards. It helps you build a flexible workflow that matches how you actually work.
- [ApptiveGrid](https://composio.dev/toolkits/apptivegrid) - ApptiveGrid is a collaborative no-code database and app platform for spaces, grids, forms, and structured records. It helps teams organize operational data, collect inputs, and build lightweight business apps without custom backend work.
- [Ascora](https://composio.dev/toolkits/ascora) - Ascora is a cloud-based field service management platform for service businesses. It streamlines scheduling, invoicing, and customer operations in one place.
- [Basecamp](https://composio.dev/toolkits/basecamp) - Basecamp is a project management and team collaboration tool by 37signals. It helps teams organize tasks, share files, and communicate efficiently in one place.
- [Boxhero](https://composio.dev/toolkits/boxhero) - Boxhero is a cloud-based inventory management platform for SMBs, offering real-time updates, barcode scanning, and team collaboration. It helps businesses streamline stock tracking and analytics for smarter inventory decisions.
- [Breathe HR](https://composio.dev/toolkits/breathehr) - Breathe HR is cloud-based HR software for SMEs to manage employee data, absences, and performance. It simplifies HR admin, making it easy to keep employee records accurate and up to date.
- [Breeze](https://composio.dev/toolkits/breeze) - Breeze is a project management platform designed to help teams plan, track, and collaborate on projects. It streamlines workflows and keeps everyone on the same page.
- [Bugherd](https://composio.dev/toolkits/bugherd) - Bugherd is a visual feedback and bug tracking tool for websites. It helps teams and clients report website issues directly on live sites for faster fixes.
- [Canny](https://composio.dev/toolkits/canny) - Canny is a platform for managing customer feedback and feature requests. It helps teams prioritize product decisions based on real user insights.

## Frequently Asked Questions

### Does Muse support MCP?

Yes. Muse supports custom connectors that use the Model Context Protocol (MCP). Composio connects as one custom connector over remote streamable HTTP at https://connect.composio.dev/mcp, and gives Muse access to Jira and 1,500+ other apps.

### Where do I get the API key for the Composio connector?

Copy it from the Composio dashboard. It starts with ck_. Enter it only in Muse's secure credentials store, never in the chat.

### Can I connect more than one Jira account to Muse?

Yes. Composio supports multiple connected accounts for the same app. Give each Jira connection a name, such as work or personal, and tell Muse which one to use.

### How safe is my Jira data with Composio?

Tokens, keys, and configuration are encrypted at rest and in transit. Your Composio API key stays in Muse's secure credentials store, not in the chat or the model context. Composio is SOC 2 Type 2 compliant.

---
[See all toolkits](https://composio.dev/toolkits) · [Composio docs](https://docs.composio.dev/llms.txt)
