jira_mcp_server

SuperPyonchiX/jira_mcp_server

3.2

If you are the rightful owner of jira_mcp_server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

Jira MCP Server integrates with Jira Software Cloud REST API to enable AI assistants to retrieve task information.

Tools
2
Resources
0
Prompts
0

Jira MCP Server (DataCenter & Cloud対応)

Jira Software DataCenter & Cloud REST APIと連携するModel Context Protocol(MCP)サーバーです。AIアシスタントがJiraからタスク情報を取得できるようにします。

特徴:

  • DataCenter版対応: パスワード認証でJira DataCenterサーバーに接続
  • Cloud版対応: APIトークン認証でJira Cloudに接続
  • JQL検索: 高度な検索クエリでissueを検索
  • プロジェクト情報: プロジェクトの詳細情報を取得

📚 ドキュメント

  • 📖 - 完全初心者向けの詳細ガイド(日本語)
  • 🧪 - テスト方法とトラブルシューティング(日本語)
  • ⚙️ - 設定例とユースケース(日本語)
  • 👨‍💻 - 開発者向け指示

機能

  • DataCenter対応: ユーザー名+パスワード認証でJira DataCenterに接続
  • Cloud対応: Eメール+APIトークン認証でJira Cloudに接続
  • 課題取得: IDまたはキーによるJira課題の詳細情報取得
  • JQL検索: 高度なJQLクエリによる課題検索
  • プロジェクト情報: プロジェクトの詳細情報、コンポーネント、バージョン情報取得
  • 柔軟な設定: DataCenter/Cloud両対応の接続設定
  • フィールド選択: オプションのフィールドフィルタリングと展開パラメータ

インストールと利用方法

前提条件

  • Node.js (v16以降推奨)
  • npm または yarn
  • Jiraアカウントとアクセス権限
  • DataCenter版: Jiraサーバーのユーザー名とパスワード
  • Cloud版: Jira APIトークン

ステップ1: リポジトリのクローン

git clone https://github.com/SuperPyonchiX/jira_mcp_server.git
cd jira_mcp_server

ステップ2: 依存関係のインストール

npm install

ステップ3: プロジェクトのビルド

npm run build

ステップ4: 認証情報の準備

DataCenter版の場合
  • Jiraサーバーのユーザー名とパスワードを準備してください
  • パスワードは安全に保管し、バージョン管理にはコミットしないでください
Cloud版の場合
  1. Atlassian Account Settingsにアクセス
  2. 「Create API token」をクリック
  3. トークンの名前を入力(例:「MCP Server」)
  4. 生成されたAPIトークンをコピーして保存

ステップ5: VS Codeでの設定

5-1. MCP設定ファイルの場所

別プロジェクトでこのMCPサーバーを使用する場合、そのプロジェクトのVS Code設定ファイルに設定を追加します:

プロジェクト固有設定(推奨):

  • プロジェクトルートの .vscode/settings.json
5-2. settings.jsonへの設定追加

プロジェクトの .vscode/settings.json ファイルに以下の設定を追加してください:

環境変数使用(推奨)
{
  "mcp": {
    "inputs": [],
    "servers": {
      "jira-mcp-server": {
        "type": "stdio",
        "command": "node",
        "args": ["C:\\path\\to\\jira_mcp_server\\build\\index.js"],
        "env": {
          "JIRA_DOMAIN": "jira.yourcompany.com",
          "JIRA_AUTH_TYPE": "basic",
          "JIRA_USERNAME": "your-username",
          "JIRA_PASSWORD": "your-password"
        }
      }
    }
  }
}

環境変数設定例:

DataCenter版の場合:

"env": {
  "JIRA_DOMAIN": "jira.yourcompany.com",
  "JIRA_AUTH_TYPE": "basic",
  "JIRA_USERNAME": "your-username",
  "JIRA_PASSWORD": "your-password"
}

Cloud版の場合:

"env": {
  "JIRA_DOMAIN": "your-domain.atlassian.net",
  "JIRA_AUTH_TYPE": "token",
  "JIRA_EMAIL": "your-email@example.com",
  "JIRA_API_TOKEN": "your-api-token"
}
手動設定(環境変数を使用しない場合)
{
  "mcp": {
    "inputs": [],
    "servers": {
      "jira-mcp-server": {
        "type": "stdio",
        "command": "node",
        "args": ["C:\\path\\to\\jira_mcp_server\\build\\index.js"],
        "env": {
          "NODE_ENV": "production"
        }
      }
    }
  }
}
5-3. Claude Desktop設定

Claude Desktop の場合: %APPDATA%\Claude\claude_desktop_config.json (Windows) または ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) に:

{
  "mcpServers": {
    "jira-mcp-server": {
      "command": "node",
      "args": ["C:\\path\\to\\jira_mcp_server\\build\\index.js"],
      "env": {
        "JIRA_DOMAIN": "jira.yourcompany.com",
        "JIRA_AUTH_TYPE": "basic", 
        "JIRA_USERNAME": "your-username",
        "JIRA_PASSWORD": "your-password"
      }
    }
  }
}

ステップ6: VS Codeの再起動と確認

  1. VS Codeを再起動してください
  2. GitHub Copilot Chatを開いて、@jira-mcp-serverと入力して補完が表示されることを確認
  3. 設定状況を確認してください(環境変数が正しく設定されていれば自動で設定される)
@jira-mcp-server get_jira_config

ステップ7: 動作確認

環境変数で設定済みの場合:

設定確認後、すぐに課題を取得できます:

@jira-mcp-server get issue PROJ-123
@jira-mcp-server search issues with jql "project = PROJ AND status = 'In Progress'"
手動設定が必要な場合:

VS Code内でGitHub Copilot Chatを使用してJiraサーバーを設定:

DataCenter版の場合:

@jira-mcp-server configure_jira with baseUrl "https://jira.yourcompany.com", jiraType "datacenter", username "your-username", password "your-password"

Cloud版の場合:

@jira-mcp-server configure_jira with baseUrl "https://your-domain.atlassian.net", jiraType "cloud", email "your-email@example.com", apiToken "your-api-token"

設定方法

サーバーを使用する前に、configure_jiraツールを使用してJira接続を設定する必要があります:

DataCenter版の場合

  • Base URL: JiraサーバーのURL(例:https://jira.yourcompany.com
  • Jira Type: datacenter
  • Username: Jiraのユーザー名
  • Password: Jiraのパスワード

Cloud版の場合

  • Base URL: JiraインスタンスのURL(例:https://your-domain.atlassian.net
  • Jira Type: cloud
  • Email: JiraアカウントのEメールアドレス
  • API Token: Jira APIトークン(アカウント設定 → セキュリティ → APIトークンから生成)

利用可能なツール

get_jira_config

現在のJira設定状況を表示します。

パラメータ: なし

戻り値:

  • 設定されている場合: 設定情報(認証情報は隠匿)
  • 未設定の場合: 設定方法の案内

configure_jira

Jiraインスタンスへの接続を設定します(DataCenter & Cloud対応)。

パラメータ:

  • baseUrl (必須): JiraサーバーのベースURL
  • jiraType (必須): "datacenter" または "cloud"
  • DataCenter版の場合:
    • username (必須): Jiraユーザー名
    • password (必須): Jiraパスワード
  • Cloud版の場合:
    • email (必須): JiraアカウントのEメールアドレス
    • apiToken (必須): Jira APIトークン

get_jira_issue

IDまたはキーによって単一のJira課題を取得します。

パラメータ:

  • issueIdOrKey (必須): 課題IDまたはキー(例:"PROJ-123"または"10001")
  • fields (オプション): 返すフィールド名の配列
  • expand (オプション): 展開するパラメータのカンマ区切りリスト
  • properties (オプション): 返すプロパティ名の配列

search_jira_issues

JQL(Jira Query Language)を使用して課題を検索します。

パラメータ:

  • jql (必須): JQLクエリ文字列(例:"project = PROJ AND status = 'In Progress'")
  • startAt (オプション): ページネーション開始インデックス(デフォルト:0)
  • maxResults (オプション): 最大結果数(デフォルト:50、最大:1000)
  • fields (オプション): 返すフィールド名の配列
  • expand (オプション): 展開するパラメータのカンマ区切りリスト

get_jira_project

IDまたはキーによってプロジェクト情報を取得します。

パラメータ:

  • projectIdOrKey (必須): プロジェクトIDまたはキー(例:"PROJ"または"10000")
  • expand (オプション): 展開するパラメータのカンマ区切りリスト(例:"description,lead,issueTypes")

戻り値: プロジェクトの詳細情報(名前、キー、説明、リード、課題タイプ、コンポーネント、バージョン等)

create_jira_issue

新しいJira課題を作成します。

パラメータ:

  • projectKey (必須): プロジェクトキー(例:"PROJ")
  • issueType (必須): 課題タイプ名(例:"Task", "Bug", "Story", "Epic")
  • summary (必須): 課題のタイトル/概要
  • description (オプション): 課題の説明
  • assignee (オプション): 担当者(DataCenter: ユーザー名, Cloud: accountId)
  • priority (オプション): 優先度名(例:"High", "Medium", "Low")
  • labels (オプション): ラベルの配列
  • components (オプション): コンポーネント名の配列
  • parentKey (オプション): サブタスク作成時の親課題キー
  • customFields (オプション): カスタムフィールドのキー・値ペア

update_jira_issue

既存のJira課題を更新します。指定したフィールドのみが更新されます。

パラメータ:

  • issueIdOrKey (必須): 課題IDまたはキー(例:"PROJ-123")
  • summary (オプション): 新しいタイトル
  • description (オプション): 新しい説明
  • assignee (オプション): 新しい担当者
  • priority (オプション): 新しい優先度
  • labels (オプション): 新しいラベル(既存を置換)
  • components (オプション): 新しいコンポーネント(既存を置換)
  • customFields (オプション): 更新するカスタムフィールド
  • notifyUsers (オプション): ウォッチャーに通知するか(デフォルト:true)

add_comment

Jira課題にコメントを追加します。

パラメータ:

  • issueIdOrKey (必須): 課題IDまたはキー(例:"PROJ-123")
  • body (必須): コメント本文
  • visibility (オプション): コメントの表示制限
    • type: "group" または "role"
    • value: グループ名またはロール名

get_comments

Jira課題のコメント一覧を取得します。

パラメータ:

  • issueIdOrKey (必須): 課題IDまたはキー(例:"PROJ-123")
  • startAt (オプション): ページネーション開始インデックス(デフォルト:0)
  • maxResults (オプション): 最大結果数(デフォルト:50、最大:100)
  • orderBy (オプション): ソート順("created" または "-created")

get_transitions

Jira課題で利用可能なワークフロートランジション(ステータス遷移)を取得します。

パラメータ:

  • issueIdOrKey (必須): 課題IDまたはキー(例:"PROJ-123")
  • expand (オプション): "transitions.fields" を指定すると各トランジションの必須フィールド情報を取得

transition_issue

Jira課題のワークフロートランジションを実行します(ステータス変更)。

パラメータ:

  • issueIdOrKey (必須): 課題IDまたはキー(例:"PROJ-123")
  • transitionId (必須): 実行するトランジションID(get_transitionsで取得可能)
  • comment (オプション): トランジション時に追加するコメント
  • fields (オプション): トランジション画面で必要なフィールド
  • resolution (オプション): 解決ステータスに遷移する場合の解決種別(例:"Done", "Fixed")

使用例

1. DataCenter版Jira接続の設定

{
  "name": "configure_jira",
  "arguments": {
    "baseUrl": "https://jira.yourcompany.com",
    "jiraType": "datacenter",
    "username": "your-username",
    "password": "your-password"
  }
}

2. Cloud版Jira接続の設定

{
  "name": "configure_jira",
  "arguments": {
    "baseUrl": "https://your-domain.atlassian.net",
    "jiraType": "cloud", 
    "email": "your-email@example.com",
    "apiToken": "your-api-token"
  }
}

3. 課題の取得

{
  "name": "get_jira_issue", 
  "arguments": {
    "issueIdOrKey": "PROJ-123",
    "expand": "changelog,transitions"
  }
}

4. JQLによる課題検索

{
  "name": "search_jira_issues",
  "arguments": {
    "jql": "project = PROJ AND status = 'In Progress'",
    "maxResults": 10
  }
}

5. プロジェクト情報の取得

{
  "name": "get_jira_project",
  "arguments": {
    "projectIdOrKey": "PROJ",
    "expand": "description,lead,issueTypes"
  }
}

6. 新しい課題の作成

{
  "name": "create_jira_issue",
  "arguments": {
    "projectKey": "PROJ",
    "issueType": "Task",
    "summary": "新機能の実装",
    "description": "詳細な説明をここに記載",
    "priority": "High",
    "labels": ["backend", "feature"]
  }
}

7. 課題の更新

{
  "name": "update_jira_issue",
  "arguments": {
    "issueIdOrKey": "PROJ-123",
    "summary": "更新されたタイトル",
    "priority": "Medium"
  }
}

8. コメントの追加

{
  "name": "add_comment",
  "arguments": {
    "issueIdOrKey": "PROJ-123",
    "body": "作業を開始しました。"
  }
}

9. コメントの取得

{
  "name": "get_comments",
  "arguments": {
    "issueIdOrKey": "PROJ-123",
    "maxResults": 10
  }
}

10. 利用可能なトランジションの取得

{
  "name": "get_transitions",
  "arguments": {
    "issueIdOrKey": "PROJ-123"
  }
}

11. 課題のステータス変更(トランジション実行)

{
  "name": "transition_issue",
  "arguments": {
    "issueIdOrKey": "PROJ-123",
    "transitionId": "21",
    "comment": "作業完了しました。"
  }
}

開発

  • npm run build: TypeScriptをJavaScriptにコンパイル
  • npm run start: コンパイル済みサーバーを起動
  • npm run dev: ビルドと起動を一括実行

MCP統合

このサーバーはMCP設定で設定することにより、MCP対応AIアシスタントと統合できます。

VS Code統合(詳細)

1. GitHub Copilot拡張機能の確認
  • VS CodeでGitHub Copilot拡張機能がインストール済みであることを確認
  • MCP機能が有効になっていることを確認
2. プロジェクト設定

プロジェクトの .vscode/settings.json に設定を追加した後:

  1. VS Codeを再起動
  2. GitHub Copilot Chatを開く (Ctrl+Shift+P → "GitHub Copilot: Open Chat")
  3. Jiraサーバーの確認: @jira と入力して補完候補に表示されることを確認
3. トラブルシューティング
  • サーバーが認識されない場合は、パスが正しいか確認
  • Node.jsのバージョンが v16以降であることを確認
  • build/index.js ファイルが存在することを確認
4. 開発者向けデバッグ設定

開発者がデバッグする場合は、.vscode/mcp.json 設定ファイルも含まれています。

Claude Desktop統合

Claude Desktopで使用する場合の設定ファイル場所と内容については、上記のステップ5-4を参照してください。

認証

このサーバーはDataCenter版とCloud版の両方に対応しています:

DataCenter版

  • Basic認証: ユーザー名とパスワードを使用
  • パスワードは安全に保管し、バージョン管理にはコミットしない

Cloud版

  • API Token認証: EメールアドレスとAPIトークンを使用
  • Atlassianアカウント設定からAPIトークンを生成
  • 認証にはユーザー名ではなくEメールアドレスを使用
  • APIトークンは安全に保管し、バージョン管理にはコミットしない

API リファレンス

DataCenter版

Jira Software DataCenter REST API v10.7.3に基づいています。主に以下のエンドポイントを実装:

  • /rest/api/2/issue/{issueIdOrKey} - 個別課題取得
  • /rest/api/2/search - JQLによる課題検索
  • /rest/api/2/project/{projectIdOrKey} - プロジェクト情報取得

Cloud版

Jira Software Cloud REST API v1.0.0に基づいています。主に以下のエンドポイントを実装:

  • /rest/agile/1.0/issue/{issueIdOrKey} - 個別課題取得(アジャイル対応)
  • /rest/api/2/search - JQLによる課題検索
  • /rest/api/2/project/{projectIdOrKey} - プロジェクト情報取得

ライセンス

MIT License