mcpField
J
Jira MCP Server for Cursor

Jira MCP Server for Cursor

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

Jira MCP Server for Cursor について

TypeScript製のJira MCP サーバーで、CursorなどのクライアントからJiraチケットを操作できます。検索や詳細確認に加え、作成、コメント、ステータス更新に対応します。

主な機能

  1. 01チケットの一覧表示と検索
  2. 02詳細とコメントの確認
  3. 03チケットの作成
  4. 04コメントの追加
  5. 05ステータスの更新

活用シーン

  1. 01JQLによるプロジェクトチケットの絞り込み
  2. 02Cursorでチケットの議論を確認
  3. 03チケットの作成とコメント追加
  4. 04チケットのステータス変更

MCP 対応

Jira操作用のツールを登録し、stdioまたはHTTP経由でMCPクライアントに接続します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"jira-mcp-server-kornbed": {
"command": "npx",
"args": [
"-y",
"@smithery/cli"
]
}
}
}
起動コマンドnpx -y @smithery/cli

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@smithery/cli

ツール

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

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

詳細

Cursor 向け Jira MCP サーバー

smithery badge Jira と連携し、Cursor から Jira チケットを操作できる TypeScript ベースの MCP サーバーです。

Cursor 向け Jira サーバー MCP サーバー

機能

  • Jira チケットの一覧表示
  • チケットの詳細取得
  • チケットのコメント取得
  • 新しいチケットの作成
  • チケットへのコメント追加
  • チケットのステータス更新
  • Cursor との連携に必要な MCP プロトコルを完全サポート

セットアップ

Smithery 経由でインストール

Smithery 経由で、Cursor 向け Jira MCP Server を Claude Desktop に自動的にインストールするには:

npx -y @smithery/cli install @kornbed/jira-mcp-server --client claude
  1. 依存関係をインストールします:
npm install
  1. .env.example をもとに .env ファイルを作成し、Jira の認証情報を入力します:
JIRA_HOST=https://your-domain.atlassian.net
[email protected]
JIRA_API_TOKEN=your-api-token
PORT=3000

Jira API トークンを取得するには:

  1. https://id.atlassian.com/manage/api-tokens にログインします
  2. 「Create API token」をクリックします
  3. トークンをコピーし、.env ファイルに貼り付けます

開発

開発サーバーを起動します:

npm run dev

ビルドと実行

プロジェクトをビルドします:

npm run build

サーバーを起動します:

npm start

Cursor との連携

この MCP サーバーを Cursor で使用するには、次の 2 つの方法があります:

方法 1:コマンドベースの連携(推奨)
  1. プロジェクトをビルドします:
npm run build
  1. Cursor の設定を開きます:

    • Cursor メニューをクリックします
    • 「Settings」を選択します(またはキーボードショートカットを使用します)
    • 「Extensions」または「Integrations」セクションに移動します
  2. MCP の設定を追加します:

{
  "mcpServers": {
    "jira": {
      "command": "node",
      "args": ["/path/to/jira-mcp-cursor/dist/server.js"]
    }
  }
}

/path/to/jira-mcp-cursor をプロジェクトの絶対パスに置き換えます。

方法 2:HTTP ベースの連携(代替)
  1. MCP サーバーを起動します(まだ起動していない場合):
npm start
  1. Cursor の設定を開きます:

    • Cursor メニューをクリックします
    • 「Settings」を選択します(またはキーボードショートカットを使用します)
    • 「Extensions」または「Integrations」セクションに移動します
  2. MCP の設定を追加します:

{
  "mcpServers": {
    "jira": {
      "url": "http://localhost:3000",
      "capabilities": [
        "list_tickets",
        "get_ticket",
        "get_comments",
        "create_ticket",
        "update_status",
        "add_comment"
      ]
    }
  }
}
}

Cursor で Jira を使用する

MCP サーバーの設定後、Cursor で Jira のコマンドを直接使用できます:

  • /jira list - チケットを一覧表示します
  • /jira view TICKET-123 - チケットの詳細を表示します
  • /jira comments TICKET-123 - チケットのコメントを取得します
  • /jira create - 新しいチケットを作成します
  • /jira comment TICKET-123 - コメントを追加します
  • /jira status TICKET-123 - チケットのステータスを更新します

MCP プロトコルのサポート

このサーバーは、Cursor が必要とする Model-Client-Protocol(MCP)を実装しています:

  • コマンドベースの連携向けの Stdio 通信
  • Jira 操作用のツール登録

API エンドポイント

チケット一覧の取得

JQL クエリで絞り込むこともできる、Jira チケットの一覧を取得します。

エンドポイント: GET /api/tickets

クエリパラメーター:

パラメーター型必須説明
jqlstringいいえチケットを絞り込むための Jira Query Language(JQL)文字列

リクエスト例:

GET /api/tickets?jql=project=TEST+AND+status=Open

レスポンス例:

TEST-123: Example ticket (Open)
TEST-124: Another ticket (In Progress)
チケットの取得

特定のチケットの詳細情報を取得します。

エンドポイント: GET /api/tickets/:id

パスパラメーター:

パラメーター型必須説明
idstringはいJira チケット ID(例:TEST-123)

リクエスト例:

GET /api/tickets/TEST-123

レスポンス例:

Key: TEST-123
Summary: Example ticket
Status: Open
Type: Task
Description:
Detailed ticket description
チケットコメントの取得

特定のチケットのすべてのコメントを取得します。

エンドポイント: GET /api/tickets/:id/comments

パスパラメーター:

パラメーター型必須説明
idstringはいJira チケット ID(例:TEST-123)

リクエスト例:

GET /api/tickets/TEST-123/comments

レスポンス例:

[3/20/2024, 10:00:00 AM] John Doe:
Comment text
---

[3/20/2024, 9:30:00 AM] Jane Smith:
Another comment
---
チケットを作成

新しい Jira チケットを作成します。

エンドポイント: POST /api/tickets

リクエストボディ:

パラメーター型必須説明
summarystringはいチケットの概要
descriptionstringはいチケットの説明
projectKeystringはいプロジェクトキー(例:TEST)
issueTypestringはい課題の種類(例:Task、Bug)

リクエスト例:

POST /api/tickets
Content-Type: application/json

{
  "summary": "New feature request",
  "description": "Implement new functionality",
  "projectKey": "TEST",
  "issueType": "Task"
}

レスポンス例:

Created ticket: TEST-124
コメントを追加

既存のチケットに新しいコメントを追加します。

エンドポイント: POST /api/tickets/:id/comments

パスパラメーター:

パラメーター型必須説明
idstringはいJira チケット ID(例:TEST-123)

リクエストボディ:

パラメーター型必須説明
bodystringはいコメントのテキスト

リクエスト例:

POST /api/tickets/TEST-123/comments
Content-Type: application/json

{
  "body": "This is a new comment"
}

レスポンス例:

Added comment to TEST-123
ステータスを更新

既存のチケットのステータスを更新します。

エンドポイント: POST /api/tickets/:id/status

パスパラメーター:

パラメーター型必須説明
idstringはいJira チケット ID(例:TEST-123)

リクエストボディ:

パラメーター型必須説明
transitionIdstringはい実行するトランジションの ID

リクエスト例:

POST /api/tickets/TEST-123/status
Content-Type: application/json

{
  "transitionId": "21"
}

レスポンス例:

Updated status of TEST-123
チケットを検索

テキスト検索を使用して、指定したプロジェクト全体からチケットを検索します。

エンドポイント: GET /api/tickets/search

クエリパラメーター:

パラメーター型必須説明
searchTextstringはいチケット内で検索するテキスト
projectKeysstringはい検索対象のプロジェクトキーをカンマ区切りで指定したリスト
maxResultsnumberいいえ返す結果の最大数(デフォルト:50)

リクエスト例:

GET /api/tickets/search?searchText=login+bug&projectKeys=TEST,PROD&maxResults=10

レスポンス例:

Found 2 tickets matching "login bug"

[TEST] TEST-123: Login page bug
Status: Open (Updated: 3/20/2024, 10:00:00 AM)
Description:
Users unable to login using SSO
----------------------------------------

[PROD] PROD-456: Fix login performance
Status: In Progress (Updated: 3/19/2024, 3:30:00 PM)
Description:
Login page taking too long to load
----------------------------------------

コメント

MCP は初めてですか?

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

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