SuperPyonchiX/jira_mcp_server
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.
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版の場合
- Atlassian Account Settingsにアクセス
- 「Create API token」をクリック
- トークンの名前を入力(例:「MCP Server」)
- 生成された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の再起動と確認
- VS Codeを再起動してください
- GitHub Copilot Chatを開いて、
@jira-mcp-serverと入力して補完が表示されることを確認 - 設定状況を確認してください(環境変数が正しく設定されていれば自動で設定される)
@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サーバーのベースURLjiraType(必須): "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 に設定を追加した後:
- VS Codeを再起動
- GitHub Copilot Chatを開く (
Ctrl+Shift+P→ "GitHub Copilot: Open Chat") - 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