Five verbs over raw paths means nothing in Jira is out of reach and nothing needs a new tool release — the cost is that whoever drives it has to know the endpoint. What makes that workable is the pair of size controls: a JMESPath filter on every call and a compact default output format, with anything still oversized truncated and written to a file rather than flooding the session.
A thin, complete surface over the Jira Cloud REST API: one tool per HTTP verb, taking the API path yourself. Coverage is whatever Jira's API covers, and the design effort goes into keeping responses small.
- jira_get, jira_post, jira_put, jira_patch and jira_delete against any /rest/api/3/ path, with query parameters passed as their own argument
- A jq argument on every call applying a JMESPath expression, so a request can return {key: key, summary: fields.summary, status: fields.status.name} instead of the whole issue
- Responses default to TOON, a tabular format the project reports as 30–60% fewer tokens than JSON; outputFormat: "json" switches back
- Issues searched through JQL by posting to the search endpoint, so any query you can write in Jira works here
- Responses over 40k characters are truncated with a notice, and the complete raw response is written to a file under /tmp/mcp/mcp-server-atlassian-jira/ for reference
- The same operations available as a CLI — get, post and friends with --path, --query-params and --jq — for scripting outside an MCP client
A Jira Cloud site and an Atlassian API token created from your account security settings. Three variables: ATLASSIAN_SITE_NAME (the part before .atlassian.net), ATLASSIAN_USER_EMAIL and ATLASSIAN_API_TOKEN, in the client's env block or in ~/.mcp/configs.json for a system-wide setup. It runs as npx -y @aashari/mcp-server-atlassian-jira. Your Jira permissions decide what the calls can do.
One command plus a key — npx -y @aashari/mcp-server-atlassian-jira, then supply credentials
