Jira集成服务器

一个为Claude Code CLI提供无缝Jira集成的模型上下文协议服务器,支持多环境连接和项目特定配置。

  • by robwilde
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 robwilde/jira-mcp-server

使用说明

Jira MCP服务器

适用于Claude Code CLI

一个模型上下文协议(MCP)服务器,为Claude Code CLI提供无缝的Jira集成。

特性

  • 获取问题详细信息 -获取有关任何Jira问题的完整信息
  • 搜索问题 -使用JQL(Jira查询语言)查询问题
  • 获取评论 -检索对某个问题的所有评论
  • 用户信息 -获取经过身份验证的用户详细信息
  • 多环境支持 -同时连接到多个Jira实例
  • 项目特定配置 -通过以下方式为每个项目提供不同的Jira环境 .mcp.json

快速开始

1.安装

cd /var/home/mrwilde/mcp/jira-mcp-server
./install.sh

2.配置(每个项目)

创建 .mcp.json 在项目根目录中:

cd /path/to/your/project

cat > .mcp.json <<'EOF'
{
  "mcpServers": {
    "jira": {
      "command": "python",
      "args": ["-m", "jira_mcp.server"],
      "env": {
        "JIRA_HOST": "https://your-company.atlassian.net",
        "JIRA_EMAIL": "your-email@company.com",
        "JIRA_API_TOKEN": "your-api-token",
        "JIRA_DEFAULT_PROJECT": "PROJ"
      }
    }
  }
}
EOF

# Don't commit tokens!
echo ".mcp.json" >> .gitignore

3.验证

claude mcp list

4.使用

在Claude Code CLI中,只需询问:

  • “获取LXP-449问题的详细信息”
  • “搜索我的所有未完成任务”
  • “在PROJ-123上显示评论”

安装和配置

看 安装.md 有关完整的设置说明,包括:

  • 全系统安装
  • 按项目配置(.mcp.json)
  • 全局用户配置
  • 多个Jira环境
  • CLI命令(claude mcp add)
  • 安全最佳实践

配置方法

方法1:项目 .mcp.json 文件(推荐)

{
  "mcpServers": {
    "jira": {
      "command": "python",
      "args": ["-m", "jira_mcp.server"],
      "env": {
        "JIRA_HOST": "https://company.atlassian.net",
        "JIRA_EMAIL": "you@company.com",
        "JIRA_API_TOKEN": "your-token"
      }
    }
  }
}

方法2:Claude代码CLI命令

# Add to current project
cd /path/to/project
claude mcp add --scope project jira \
  --env JIRA_HOST=https://company.atlassian.net \
  --env JIRA_EMAIL=you@company.com \
  --env JIRA_API_TOKEN=your-token \
  -- python -m jira_mcp.server

# Add globally for all projects
claude mcp add --scope user jira \
  --env JIRA_HOST=https://company.atlassian.net \
  --env JIRA_EMAIL=you@company.com \
  --env JIRA_API_TOKEN=your-token \
  -- python -m jira_mcp.server

发展

测试

# Test connection and authentication
source venv/bin/activate
python tests/test_connection.py

# Test with specific issue
python tests/test_connection.py LXP-449

项目结构

jira-mcp-server/
├── src/jira_mcp/
│   ├── server.py       # MCP server implementation
│   └── jira_client.py  # Jira API wrapper
├── tests/
│   └── test_connection.py
├── config-examples/    # Configuration templates
│   ├── project-mcp.json
│   └── multi-environment-mcp.json
├── pyproject.toml
├── requirements.txt
├── install.sh          # Quick install script
└── INSTALLATION.md     # Complete setup guide

MCP工具

获取问题

获取有关Jira问题的详细信息。

输入: issue_key (字符串)-例如“LXP-449”

退货: 完整的问题详细信息,包括摘要、描述、状态、受让人、优先级、日期和项目信息。

搜索问题

使用JQL(Jira查询语言)搜索问题。

输入:

  • jql (string)-查询字符串,例如“项目=LXP,状态='待办事项'”
  • max_results (数字,可选)-默认值:50

退货: 包含关键细节的匹配问题列表。

获取问题注释

获取对特定问题的所有评论。

输入: issue_key (字符串)

退货: 带有作者、正文和时间戳的评论列表。

get_current_user

获取有关已验证用户的信息。

输入: 无

退货: 用户详细信息,包括用户名、电子邮件和显示名称。

JQL查询示例

# All issues in a project
project = LXP

# Your open issues
assignee = currentUser() AND status != Done

# Recent updates
updated >= -7d ORDER BY updated DESC

# Complex query
project = LXP AND status = "In Progress" AND assignee = currentUser()

多环境示例

{
  "mcpServers": {
    "jira-prod": {
      "command": "python",
      "args": ["-m", "jira_mcp.server"],
      "env": {
        "JIRA_HOST": "https://prod.atlassian.net",
        "JIRA_EMAIL": "you@company.com",
        "JIRA_API_TOKEN": "prod-token",
        "JIRA_DEFAULT_PROJECT": "LXP"
      }
    },
    "jira-staging": {
      "command": "python",
      "args": ["-m", "jira_mcp.server"],
      "env": {
        "JIRA_HOST": "https://staging.atlassian.net",
        "JIRA_EMAIL": "you@company.com",
        "JIRA_API_TOKEN": "staging-token",
        "JIRA_DEFAULT_PROJECT": "LXL"
      }
    }
  }
}

Claude代码CLI命令

# List MCP servers
claude mcp list

# Get server details
claude mcp get jira

# Remove server
claude mcp remove --scope project jira

# Debug MCP issues
claude --mcp-debug

获取Jira API代币

  1. 访问:https://id.atlassian.com/manage-profile/security/api-tokens
  2. 点击“创建API令牌”
  3. 命名它(例如,“MCP服务器-项目X”)
  4. 立即复制令牌
  5. 将其添加到您的 .mcp.json

安全

  • 从不提交代币 到版本控制
  • 添加 .mcp.json 到 .gitignore 在每个项目中
  • 使用具有最小权限的项目特定令牌
  • 定期(每90天)轮换代币
  • 撤销未使用的代币
  • 创建 .mcp.json.example 团队入职培训模板

需求

  • Python>=3.10
  • 克劳德代码CLI
  • 具有API访问权限的Jira云帐户
  • 用于身份验证的API令牌

依赖项

  • mcp >=1.0.0-模型上下文协议SDK
  • jira >=3.5.0-Python Jira库
  • python-dotenv >=1.0.0-环境变量管理
  • httpx >=0.27.0-HTTP客户端

故障排除

未找到模块

在中使用完整的Python路径 .mcp.json:

{
  "mcpServers": {
    "jira": {
      "command": "/var/home/mrwilde/mcp/jira-mcp-server/venv/bin/python",
      "args": ["-m", "jira_mcp.server"],
      ...
    }
  }
}

检查MCP状态

claude mcp list
claude --mcp-debug

看 安装.md 了解详细的故障排除。

许可证

麻省理工学院

贡献

欢迎投稿!请提交问题或拉取请求。

支持

  • 检查 安装.md 获取配置帮助
  • 审查 CLAUDE.md 用于发展指导
  • 在GitHub上打开一个问题

更新日志

0.1.0 (2025-10-28)

  • Claude Code CLI的初始版本
  • 核心MCP服务器实现
  • 四个基本的Jira工具(get_issue、search_issues、get_issue_comments、get_current_user)
  • 通过以下方式提供多环境支持 .mcp.json
  • 项目特定配置
  • 全面的文件