smithery.ai

atlassian-jira

Execute Jira operations including issue retrieval, creation, updates, search, and project management. Use when the user needs to interact with Jira issues, projects, boards, or perform any Jira-related tasks.

First seen Mar 23, 2026

Installation

$ npx skills add https://smithery.ai

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from smithery.ai · top by installs.

npx skills add https://smithery.ai

Browse all from smithery.ai

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Skill metadata

Parsed from SKILL.md frontmatter.

Declared agents claude-code

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 8,518 B
  • docs SUMMARY.md 230 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 1 installs

SKILL.md

Atlassian Jira Tools

Provides type-safe Python tools for interacting with Jira through a progressive loading API that minimizes token usage.

Current Status

Available Tools: 1 (jiragetissue) Planned Tools: 30+ additional Jira operations

This skill demonstrates the internalized MCP pattern. Additional tools will be added progressively.

Prerequisites

Required Environment Variables

Before using any Jira tools, set these environment variables:

export JIRA_URL="https://your-domain.atlassian.net"
export JIRA_USERNAME="[email protected]"
export JIRA_API_TOKEN="your-api-token"

Getting API Token:

  1. Go to https://id.atlassian.com/manage-profile/security/api-tokens
  2. Click "Create API token"
  3. Give it a name and copy the token
  4. Use your email as JIRAUSERNAME and the token as JIRAAPI_TOKEN

Installation

The Python package must be installed in your environment:

cd /Users/bono/Documents/01.Projects/MCP_Internalization/atlassian-internalized
pip install -e .

Usage Pattern

Step 1: List Available Tools

python skills/atlassian-jira/scripts/execute_tool.py --list-tools

Returns:

{
  "success": true,
  "tools": ["jira_get_issue"],
  "count": 1
}

Step 2: Get Tool Schema (Optional)

python skills/atlassian-jira/scripts/execute_tool.py jira_get_issue --schema

Returns detailed JSON schema for inputs and outputs.

Step 3: Execute Tool

python skills/atlassian-jira/scripts/execute_tool.py jira_get_issue --input '{
  "issue_key": "PROJ-123",
  "fields": "summary,status,assignee",
  "comment_limit": 5
}'

Available Tools

jiragetissue

Retrieve comprehensive information about a specific Jira issue.

Input Parameters:

  • issue_key (required): Issue key like "PROJ-123"
  • fields (optional): Comma-separated fields or "*all" for all fields
  • expand (optional): Fields to expand (e.g., "changelog,transitions")
  • comment_limit (optional): Max comments to include (0-100, default: 10)

Example:

# Get basic issue info
python scripts/execute_tool.py jira_get_issue --input '{"issue_key": "PROJ-123"}'

# Get specific fields only
python scripts/execute_tool.py jira_get_issue --input '{
  "issue_key": "PROJ-123",
  "fields": "summary,status,assignee,priority"
}'

# Get all fields with changelog
python scripts/execute_tool.py jira_get_issue --input '{
  "issue_key": "PROJ-123",
  "fields": "*all",
  "expand": "changelog"
}'

# Get issue without comments
python scripts/execute_tool.py jira_get_issue --input '{
  "issue_key": "PROJ-123",
  "comment_limit": 0
}'

Output:

{
  "success": true,
  "issue": {
    "key": "PROJ-123",
    "id": "10001",
    "fields": {
      "summary": "Implement new feature",
      "status": {"name": "In Progress", "category": "In Progress"},
      "assignee": {"display_name": "John Doe", "email": "[email protected]"},
      "priority": {"name": "High"},
      "created": "2025-01-14T10:00:00.000+0000",
      "updated": "2025-01-14T12:00:00.000+0000",
      "comments": [
        {
          "author": "Jane Smith",
          "body": "This looks good",
          "created": "2025-01-14T11:00:00.000+0000"
        }
      ]
    }
  }
}

Common Workflows

Get Issue Summary

Quick way to check an issue's current state:

python scripts/execute_tool.py jira_get_issue --input '{
  "issue_key": "PROJ-123",
  "fields": "summary,status,assignee",
  "comment_limit": 0
}'

Get Full Issue Details

Retrieve all available information:

python scripts/execute_tool.py jira_get_issue --input '{
  "issue_key": "PROJ-123",
  "fields": "*all",
  "comment_limit": 20
}'

Get Issue with Change History

See what changed over time:

python scripts/execute_tool.py jira_get_issue --input '{
  "issue_key": "PROJ-123",
  "expand": "changelog"
}'

Error Handling

All tools return structured responses with error information:

{
  "success": false,
  "error": "Issue PROJ-999 not found"
}

Common Errors

Authentication Failed:

Error: "Authentication failed. Check your credentials"

→ Verify JIRAURL, JIRAUSERNAME, and JIRAAPITOKEN are correct

Issue Not Found:

Error: "Issue PROJ-999 not found"

→ Check the issue key exists and you have permission to view it

Missing Environment Variables:

Error: "JIRA_URL environment variable is required"

→ Set all required environment variables

Invalid Input:

Error: "Input validation error: ..."

→ Check your input matches the schema (use --schema to see requirements)

Performance & Token Efficiency

Progressive Discovery

Tools are discovered without loading their implementation:

  • Tool List: ~50 tokens
  • Tool Schema: ~200 tokens per tool
  • Tool Execution: Only loads when called

Data Filtering

Use field filters to reduce data transfer:

# Instead of getting all fields (large response)
python scripts/execute_tool.py jira_get_issue --input '{"issue_key": "PROJ-123"}'

# Get only what you need (small response)
python scripts/execute_tool.py jira_get_issue --input '{
  "issue_key": "PROJ-123",
  "fields": "summary,status",
  "comment_limit": 0
}'

Comment Limiting

Control how many comments are returned:

  • comment_limit: 0 - No comments (fastest)
  • comment_limit: 5 - Recent 5 comments
  • comment_limit: 100 - Maximum allowed

Troubleshooting

Tool Not Found

If you get "Tool not found" errors:

  1. Verify installation:

``bash python -c "import atlassiantools; print(atlassiantools.list_tools('jira'))" ``

  1. Check you're in the correct directory:

``bash cd /Users/bono/Documents/01.Projects/MCP_Internalization/atlassian-internalized ``

  1. Reinstall if needed:

``bash pip install -e . ``

Script Execution Errors

If the script won't run:

  1. Make it executable:

``bash chmod +x skills/atlassian-jira/scripts/execute_tool.py ``

  1. Run with python explicitly:

``bash python skills/atlassian-jira/scripts/execute_tool.py --list-tools ``

JSON Parsing Errors

If your input JSON is invalid:

  1. Use single quotes around the JSON and double quotes inside:

``bash --input '{"issue_key": "PROJ-123"}' ``

  1. Escape quotes if needed:

``bash --input "{\"issue_key\": \"PROJ-123\"}" ``

  1. Use a JSON file:

``bash --input "$(cat examples/get_issue.json | jq -c .input)" ``

Direct Python Usage

For programmatic access, use the Python API directly:

import asyncio
import atlassian_tools

# List available tools
tools = atlassian_tools.list_tools(category='jira')
print(tools)  # ['jira_get_issue']

# Execute a tool
async def main():
    result = await atlassian_tools.execute_tool(
        'jira_get_issue',
        {'issue_key': 'PROJ-123', 'comment_limit': 5}
    )

    if result['data']['success']:
        issue = result['data']['issue']
        print(f"Issue: {issue['fields']['summary']}")
    else:
        print(f"Error: {result['data']['error']}")

asyncio.run(main())

Future Tools (Planned)

The following tools are planned for future releases:

  • jiracreateissue - Create new issues
  • jiraupdateissue - Update existing issues
  • jira_search - Search issues with JQL
  • jiraaddcomment - Add comments to issues
  • jiratransitionissue - Move issues through workflow
  • jiralistprojects - List all accessible projects
  • Plus 25+ more operations

Tips for Claude Code Usage

When using this skill in Claude Code:

  1. Start with discovery: Ask Claude to list available tools first
  2. Check schemas: Use --schema to understand inputs/outputs
  3. Use examples: Reference the examples/ directory for common patterns
  4. Filter data: Always specify which fields you need to reduce tokens
  5. Handle errors: Check the success field in responses

Related Skills

  • atlassian-confluence (planned) - Confluence page and space management

Support

For issues, questions, or contributions:

  • Project: atlassian-internalized
  • Location: /Users/bono/Documents/01.Projects/MCP_Internalization/atlassian-internalized
  • Documentation: docs/internalization-log.md