✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more

πŸ”— JIRA MCP Server

TypeScript Bun Jira MIT License MCP

A powerful Model Context Protocol (MCP) server that brings JIRA integration directly to any editor or application that supports MCP


✨ Features

  • πŸ“‹ Access JIRA Directly From Cursor
    • View your assigned issues without leaving your IDE
    • Get detailed information on specific issues with one command
    • Convert JIRA issues into local tasks seamlessly

πŸš€ Quick Start

Installation

# Clone the repository
git clone https://github.com/Dsazz/mcp-jira.git
cd mcp-jira

# Install dependencies
bun install

# Set up environment variables
cp .env.example .env
# Edit .env with your JIRA credentials

Configuration

Create a .env file with the following variables:

JIRA_HOST=https://your-instance.atlassian.net
JIRA_USERNAME=your-email@example.com
JIRA_API_TOKEN=your-jira-api-token-here

πŸ”‘ Important Note About JIRA API Tokens

  • Tokens may contain special characters, including the = sign
  • Place the token on a single line in the .env file
  • Do not add quotes around the token value
  • Paste the token exactly as provided by Atlassian

πŸ› οΈ Development Tools

Code Quality Tools

The project uses Biome for code formatting and linting, replacing the previous ESLint setup. Biome provides:

  • Fast, unified formatting and linting
  • TypeScript-first tooling
  • Zero configuration needed
  • Consistent code style enforcement

To format and lint your code:

# Format code
bun format

# Check code for issues
bun check

# Type check
bun typecheck

MCP Inspector

Click to expand MCP Inspector details

The MCP Inspector is a powerful tool for testing and debugging your MCP server.

# Run the inspector (no separate build step needed)
bun run inspect

The inspector automatically:

  • Loads environment variables from .env
  • Cleans up occupied ports (5175, 3002)
  • Builds the project when needed
  • Starts the MCP server with your configuration
  • Launches the inspector UI

Visit the inspector at http://localhost:5175?proxyPort=3002

If you encounter port conflicts:

bun run cleanup-ports

Debugging with the Inspector

The inspector UI allows you to:

  • View all available MCP capabilities
  • Execute tools and examine responses
  • Analyze the JSON communication
  • Test with different parameters

For more details, see the MCP Inspector GitHub repository.

Integration with Claude Desktop

Click to expand Claude Desktop integration

Test your MCP server directly with Claude:

  1. Build:

    bun run build  # You must build the project before running it
    
  2. Configure Claude Desktop:

    nano ~/Library/Application Support/Claude/claude_desktop_config.json
    
  3. Add the MCP configuration:

    {
      "mcpServers": {
        "JIRA Tools": {
          "command": "node", //or "bun"
          "args": ["/absolute/path/to/your/project/dist/index.js"],
          "env": {
            "JIRA_USERNAME": "your-jira-username",
            "JIRA_API_TOKEN": "your-jira-api-token",
            "JIRA_HOST": "your-jira-host.atlassian.net"
          }
        }
      }
    }
    
  4. Restart Claude Desktop and test with:

    What time is it right now?
    

    or

    Show me my assigned JIRA issues.
    

πŸ”Œ Integration with Cursor IDE

⚠️ Important: You must build the project with bun run build before integrating with Cursor IDE or Claude Desktop.

Add this MCP server to your Cursor IDE’s MCP configuration:

{
  "mcpServers": {
    "JIRA Tools": {
      "command": "node", // or "bun"
      "args": ["/absolute/path/to/your/project/dist/index.js"],
      "env": {
        "JIRA_USERNAME": "your-jira-username",
        "JIRA_API_TOKEN": "your-jira-api-token",
        "JIRA_HOST": "your-jira-host.atlassian.net"
      }
    }
  }
}

🧰 Available Tools

JIRA Tools

ToolDescriptionParametersReturns
jira_get_assigned_issuesRetrieves all issues assigned to youNoneMarkdown-formatted list of issues
jira_get_issueGets detailed information about a specific issueissueKey: Issue key (e.g., PD-312)Markdown-formatted issue details
jira_create_taskCreates a local task from a JIRA issueissueKey: Issue key (e.g., PD-312)Markdown-formatted task

πŸ“ Project Structure

 src/
  β”œβ”€β”€ core/          # Core functionality and configurations
  β”œβ”€β”€ features/      # Feature implementations
  β”‚   └── jira/      # JIRA API integration
  β”‚       β”œβ”€β”€ api/         # JIRA API client
  β”‚       β”œβ”€β”€ formatters/  # Response formatters
  β”‚       └── tools/       # MCP tool implementations
  └── test/          # Test utilities

NPM Scripts

CommandDescription
bun devRun the server in development mode with hot reload
bun buildBuild the project for production
bun startStart the production server
bun formatFormat code using Biome
bun lintLint code using Biome
bun checkRun Biome checks on code
bun typecheckRun TypeScript type checking
bun testRun tests
bun inspectStart the MCP Inspector for debugging
bun cleanup-portsClean up ports used by the development server

πŸ“ Contributing

We welcome contributions! Please see our Contributing Guide for details on:

  • Development workflow
  • Branching strategy
  • Commit message format
  • Pull request process
  • Code style guidelines

πŸ“˜ Resources

πŸ“„ License

MIT Β© Stanislav Stepanenko


Built with ❀️ for a better developer experience

Featured Templates

View More
AI Assistants
Talk with Claude 3
153 1029
AI Characters
Sarcastic AI Chat Bot
127 1268
Verified Icon
AI Assistants
Speech to Text
128 1300
AI Characters
Your Speaking Avatar
163 593
Data Analysis
Pharmacy Admin Panel
232 1507

Start your free trial

Build your solution today. No credit card required.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.