Skip to main content
Glama

Jira MCP サーバー(読み取り専用)

Claude Code が Jira のチケットコンテキスト(課題の詳細、コメントスレッド、チケット周辺の参照グラフ、JQL 検索結果)をコンパクトな Markdown として取得できるローカル MCP サーバーです。画像添付ファイル(例:UI バグチケットのスクリーンショット)は、Claude が視覚的に分析できるように取得できます。

意図的にできないこと

このサーバーは厳密に読み取り専用です。何かを作成、更新、遷移、削除、コメントするツールは一切公開していません。強制は多層的に行われます。

  1. コード内: すべての HTTP リクエストは単一のヘルパーを通り、GET のみ許可されます。唯一の許可リスト例外は POST /rest/api/3/search/jql で、これは Atlassian が POST での送信を要求する読み取り操作です。他のメソッドは ReadOnlyViolationError を発生させるため、将来書き込み呼び出しを追加する編集があれば、明確に失敗します。

  2. 資格情報レベル: API トークンを読み取りスコープのみで作成します(下記参照)。これにより、バグがあっても書き込みはできません。

Related MCP server: JIRA MCP Server

ツール

ツール

目的

get_issue(issue_key, include_comments=True)

すべての非空カスタムフィールド(受け入れ条件、ストーリーポイントなど)を表示名付きで含む完全なチケット詳細。さらに(デフォルトで)コメントスレッドも含む

get_comments(issue_key, limit=100, newest_first=False)

ディスカッションのみ。作成者/タイムスタンプ/編集/可視性を含む

get_issue_context(issue_key)

親、サブタスク、リンクされた課題(リンク方向を含む)、エピックの子。それぞれキー + タイプ + ステータス + 概要として表示

search_issues(jql, limit=25)

コンパクトな JQL 検索結果

get_attachment(attachment_id)

画像添付ファイル(get_issue で一覧表示)をダウンロードし、ビジョン入力として返すため、Claude がスクリーンショットを確認できます。画像のみ(png/jpeg/gif/webp)、最大 5 MB。動画や他のファイルタイプは拒否されます

whoami()

トークンが解決されるアカウント。認証デバッグの最初のステップ

セットアップ

1. Atlassian API トークンを作成

  1. https://id.atlassian.com/manage-profile/security/api-tokens に移動します。

  2. スコープ付き API トークンを作成 を選択します(Atlassian はスコープなしトークンを廃止予定です)。

  3. Jira アプリを選択し、以下のスコープのみを選択します:

    • read:jira-work

    • read:jira-user

  4. トークンをすぐにコピーします。一度しか表示されません。

古いスコープなしトークンも機能します。サーバーは両方を自動的に処理します(下記参照)。

2. .env を設定

cp .env.example .env   # then edit

必須キー(これが設定の全表面です):

キー

ATLASSIAN_EMAIL

Atlassian アカウントのメールアドレス

ATLASSIAN_API_TOKEN

手順 1 のトークン

ATLASSIAN_SITE_URL

例:https://your-company.atlassian.net

.env は gitignore されています。絶対にコミットしないでください。実際の環境変数はファイルより優先されます。ファイルはプロジェクトディレクトリ(作業ディレクトリではなく)を基準に配置されるため、サーバーはどこから起動しても見つけられます。

3. 依存関係をインストール

uv を使用(このリポジトリには uv.lock があるため推奨):

uv sync

または、venv に通常の pip を使用:

python -m venv .venv
.venv/bin/pip install -r requirements.txt   # Windows: .venv\Scripts\pip

4. --check で確認

.venv/bin/python -m jira_mcp --check            # connectivity + auth only
.venv/bin/python -m jira_mcp --check PROJ-123   # also fetch a ticket in full

これにより、.env が見つかったか、選択されたベース URL(およびクラウド ID フォールバックが必要かどうか)、認証されたアカウント、そしてキーが指定された場合は Claude が表示するのとまったく同じチケットが出力されます。

スコープ付き vs. スコープなしトークン:ベース URL の問題

  • スコープなしトークンは、サイト URL https://<site>.atlassian.net に対して機能します。

  • スコープ付きトークンは同じ URL に対して静かに失敗し、匿名のような応答を返します。代わりに https://api.atlassian.com/ex/jira/{cloudId} を呼び出す必要があります。

どちらの種類を持っているかを知る必要はありません。起動時にサーバーは GET /rest/api/3/myself でサイト URL をプローブします。実際のアカウントが返されない場合は、{site}/_edge/tenant_info からクラウド ID を取得し、api.atlassian.com に対して再試行します。勝者はプロセス存続期間中キャッシュされ、stderr にログ出力されます。

検出が失敗した場合:_edge/tenant_info は Atlassian の正式にサポートされた REST API の一部ではありません(ただし、Atlassian 自身のサポートドキュメントはそれを指しています)。変更される可能性があります。その場合は、.envATLASSIAN_CLOUD_ID を設定して検出をスキップします。エラーメッセージが適用時期を示します。ほとんど必要ありません。

PyCharm セットアップ

  1. インタープリター: Settings → Project → Python Interpreter → Add Interpreter → Existing → プロジェクトディレクトリ内の .venv/bin/python を選択します。(uv sync を実行した場合、venv はすべてインストール済みで既に存在します。)

  2. デバッグ用の実行構成: Run → Edit Configurations → + → Python:

    • Run: モジュール jira_mcp(「スクリプトパス」ではなく「モジュール」を選択)

    • Parameters: --check PROJ-123

    • Working directory: プロジェクトルート(何でも機能しますが、これがきれいです)

    これで、どこにでもブレークポイントを設定(例:client.py 内)し、実際のリクエストをデバッグできます。実行中の MCP サーバー内のエラーは、それ以外では見えません。

Claude Code に接続

venv の Python を絶対パスで使用します。裸の python では、Claude Code がサーバーを起動するときに venv に解決されません。

macOS/Linux:

claude mcp add jira -- /path/to/PythonProject/.venv/bin/python -m jira_mcp

Windows:

claude mcp add jira -- C:\path\to\PythonProject\.venv\Scripts\python.exe -m jira_mcp

注意:

  • -- の後はすべて Claude が実行するコマンドです。-- の前はすべて Claude 自身のオプションです。

  • デフォルトのスコープは local(自分だけ、このプロジェクトだけ、~/.claude.json に保存)です。--scope project を追加してチェックインされた .mcp.json で共有するか、--scope user を追加してすべてのプロジェクトで使用します。

接続を確認

Claude Code セッション内で:

  • /mcp を実行します。jira サーバーが接続済みとして、6 つのツールとともに一覧表示されるはずです。

  • または、単に尋ねます:「whoami を使って jira 接続を確認して」

トラブルシューティング

症状

考えられる原因と修正

401 Unauthorized

メールアドレスまたはトークンが間違っているか、トークンが失効/期限切れです。トークンを再作成し、.env を更新してください。--check を実行して確認します。

403 Forbidden

スコープ付きトークンに read:jira-work / read:jira-user がないか、アカウントにサイトアクセス権がありません。両方の読み取りスコープでトークンを再作成してください。

404 Not Found

課題が存在しないか、アカウントに表示権限がないかのいずれかです。Jira は表示できない課題を 404 として報告し、トークンは所有者の人間よりも多くのアクセスを付与することはありません。そのアカウントでログインしてブラウザでチケットを開けるか確認してください。

Claude でツールリストが空

サーバーが起動時にクラッシュしました。claude mcp add の正確なコマンドをターミナルで自分で実行してください。起動エラーは stderr に出力されます。通常の原因:Python パスが間違っている、または .env キーが欠落している。

サーバーが起動しない

--check を実行します。設定不足が報告されたら、.env を修正します。インポートが失敗する場合は、uv sync(または requirements.txt の再インストール)を再実行し、venv の Python が ≥ 3.11 であることを確認します。

検出失敗 / 匿名応答

起動ログ(stderr)に、プローブされたベース URL と拒否された理由が示されます。_edge/tenant_info に到達できない場合は、.envATLASSIAN_CLOUD_ID を設定します。

Python 初心者向けの開発者向けメモ

  • venv.venv/)は、このプロジェクトのパッケージに加えて Python のプロジェクトローカルコピーです。node_modules に相当しますが、インタープリター自体もその中に含まれます。そのため、Claude Code には .venv/bin/python を絶対パスで指定する必要があります。フォールバックできるグローバルインストールはありません。

  • asyncio.run(...) が必要なのは、Python の非同期関数は呼び出しただけでは実行されないためです。呼び出すとコルーチンオブジェクトが返され、それを駆動する何かが必要です。Node のような環境イベントループはありません。asyncio.run() はループを作成し、1 つのコルーチンを完了まで実行し、ループを破棄します。MCP サーバーはこれを mcp.run() 経由で内部的に行います。--check モードは明示的に行います。

  • デコレータ@mcp.tool)は、その下で定義された関数を受け取り、登録/ラップする関数です。定義時に適用されるミドルウェアファクトリのようなものです。FastMCP のデコレータは、関数の名前、型ヒント、docstring を読み取り、Claude が表示する MCP ツールスキーマを生成します。docstring はツールの API ドキュメントそのものです。

  • python -m jira_mcp はパッケージの __main__.py を実行します。これは Python で npm の bin エントリに最も近いものです。uv sync がプロジェクトを venv にインストールしたため、どのディレクトリからでも機能します。

F
license - not found
A
quality
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables fetching and viewing Jira issue details directly through Claude Desktop using secure API token authentication. Provides comprehensive issue information including status, assignee, priority, and descriptions in both human-readable and structured formats.
    10
    489
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Connect to Atlassian Jira, Confluence, and Compass to search, create, and manage your work.

  • Task manager your agent can fully operate: boards, tasks, sprints, roles, worklogs, day planner.

  • Catch up on Slack without reading it. Unreads, threads, search. Browser-session or hosted OAuth.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Satttoshi/jira-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server