mcpField
J
JIRA MCP Server (Async)

JIRA MCP Server (Async)

ローカル
github.com/judexzhuバージョン管理212 週間前に更新

JIRA MCP Server (Async) について

JIRA MCP Server (Async)は、stdio経由でJIRAの課題を管理する非同期MCPサーバーです。Atlassian CloudとServer/DCに対応し、課題の検索、更新、作成、ワークフロー遷移を扱うツールを提供します。

主な機能

  1. 01JQLによる課題検索
  2. 02課題の詳細とコメントの取得
  3. 03課題の作成と更新
  4. 04課題のワークフロー遷移
  5. 05CloudとServer/DCに対応
  6. 06リクエスト制限とレート制限時の再試行

活用シーン

  1. 01JQL条件に合う課題を検索
  2. 02課題の詳細や関連コメントを確認
  3. 03JIRA課題を作成または更新
  4. 04課題をワークフロー上で遷移

MCP 対応

stdio経由で、JIRA課題管理用の6つのツールと2つのプロンプトテンプレートをMCPクライアントに公開します。Atlassian CloudとServer/DCに対応しています。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

JIRA MCP サーバー(非同期)

Python 3.13+ MCP Compatible UV

stdio トランスポートを介して JIRA と連携する、非同期の Model Context Protocol(MCP)サーバーです。Atlassian Cloud と Server/DC の両方に対応しています。

MCP ツール

課題のライフサイクル全体を網羅する 6 つのツールと、2 つのプロンプトテンプレートがあります。

ツール説明主なパラメーター
jira_search_issuesJQL を使って課題を検索します(ページネーション対応)jql, max_results, start_at
jira_get_issue課題の詳細、コメント、リンクを取得します。サブタスクやトランジションも任意で取得できますissue_key, include_subtasks, include_transitions
jira_create_issue新しい課題を作成しますproject_key, summary, description, issue_type_name
jira_update_issue既存の課題のフィールドを更新し、任意でコメントを追加しますissue_key, summary, description, assignee, priority, labels, comment
jira_transition_issueワークフロートランジションを使って課題を移動しますissue_key, transition_id, comment
jira_get_create_meta課題の作成前に必須フィールドと許可されている値を取得しますproject_key, issue_type

機能

  • Cloud + Server/DC:JIRA_USER_EMAIL 環境変数を使ってデプロイメントタイプを自動検出します
  • トークンの最適化:API レスポンスを変換し、トークン数を 40~60% 削減します
  • ADF 対応:Atlassian Document Format の読み書きに対応します(Cloud v3)
  • コネクションプーリング:プールサイズを設定可能な aiohttp を使用します
  • レート制限:組み込みのスロットリングと、429 応答時の指数バックオフに対応します
  • テスト可能:_set_client() によるクライアントの注入、HTTP レベルテスト用のセッション注入に対応し、ユニットテストを 113 件備えています

セットアップ

前提条件
  • Python 3.13+
  • uv パッケージマネージャー
  • JIRA API トークン
インストール
git clone https://github.com/judexzhu/mcp-jira.git
cd mcp-jira
uv sync
cp config.env.example .env
# Edit .env with your JIRA credentials
環境変数
変数説明デフォルト必須
JIRA_SERVER_URLJIRA インスタンスの URL—はい
JIRA_API_TOKENJIRA API トークン—はい
JIRA_USER_EMAILCloud Basic Auth 用のメールアドレス(Cloud モードを有効化)—Cloud のみ
MAX_CONCURRENT_REQUESTS最大同時リクエスト数およびレート制限(リクエスト/秒)2いいえ
REQUEST_TIMEOUTHTTP リクエストのタイムアウト(秒)30いいえ
CONNECT_TIMEOUTHTTP 接続のタイムアウト(秒)10いいえ
LOG_LEVELログレベルERRORいいえ
LOG_TO_STDOUTstdout へのログ出力を有効化(MCP stdio が動作しなくなります)falseいいえ
Claude Desktop

Claude Desktop の MCP 設定に追加します(macOS の場合は ~/Library/Application Support/Claude/claude_desktop_config.json)。

{
  "mcpServers": {
    "jira": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/mcp-jira", "python", "jira_mcp_server.py"],
      "env": {
        "JIRA_SERVER_URL": "https://your-company.atlassian.net",
        "JIRA_API_TOKEN": "your_api_token",
        "JIRA_USER_EMAIL": "[email protected]"
      }
    }
  }
}
Claude Code

Claude Code の MCP 設定(.claude/settings.json またはグローバル設定の ~/.claude/settings.json)に追加します。

{
  "mcpServers": {
    "jira": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/mcp-jira", "python", "jira_mcp_server.py"],
      "env": {
        "JIRA_SERVER_URL": "https://your-company.atlassian.net",
        "JIRA_API_TOKEN": "your_api_token",
        "JIRA_USER_EMAIL": "[email protected]"
      }
    }
  }
}

または、CLI から追加します。

claude mcp add jira \
  -e JIRA_SERVER_URL=https://your-company.atlassian.net \
  -e JIRA_API_TOKEN=your_api_token \
  -e [email protected] \
  -- uv run --directory /path/to/mcp-jira python jira_mcp_server.py

別の方法として、-e フラグを省略し、mcp-jira ディレクトリ内の .env ファイルに認証情報を記述できます。load_dotenv() が自動的に読み込みます。

テスト

# Unit tests (no credentials needed)
uv sync --group dev
uv run pytest tests/ -v

アーキテクチャ

中核となるファイルは 2 つです。

  • jira_mcp_server.py — 6 つの MCP ツール関数と 2 つのプロンプトテンプレート。それぞれクライアントに処理を委譲する薄いラッパーです
  • jira_client.py — JiraClientProtocol を接合部とする AsyncJiraClient。_CloudFormat/_ServerFormat アダプター、認証、コネクションプーリング、レート制限、再試行、レスポンス変換を備えています

Cloud と Server/DC の判別には、JIRA_USER_EMAIL の有無を使用します。その理由については、docs/adr/0001-cloud-detection-via-email.md を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。