Skip to main content
Glama

JIRA MCP サーバー

鍛冶屋のバッジ

標準化されたツールとコンテキストを通じて、大規模言語モデル(LLM)がJIRAと連携できるようにするMCPサーバー。このサーバーは、JQLを使用した課題検索機能と、課題の詳細情報の取得機能を提供します。

特徴

  • JQL 検索: ページネーションサポートを使用して複雑な JQL クエリを実行します。

  • 問題の詳細: 特定の JIRA 問題に関する詳細情報を取得します

Related MCP server: JIRA MCP Server

前提条件

  • npmがインストールされている

  • APIアクセスを持つJIRAインスタンス

  • JIRA APIトークンまたは個人アクセストークン

  • APIトークンに関連付けられたJIRAユーザーのメールアドレス

JIRA API 認証情報の取得

  1. https://id.atlassian.comで Atlassian アカウントにログインします。

  2. セキュリティ設定に移動する

  3. APIトークンの下で、「APIトークンを作成」を選択します

  4. トークンに意味のある名前を付けます(例:「MCP Server」)

  5. 生成されたトークンをコピーします。再度表示することはできません。

  6. このトークンをJIRA_API_KEYとして使用します

  7. Atlassian アカウントに関連付けられたメールアドレスをJIRA_USER_EMAILとして使用します。

使用法

Claude Desktopとの統合

  1. Claude Desktop の設定ファイルにサーバー設定を追加します。

macOS : ~/Library/Application Support/Claude/claude_desktop_config.json Windows : %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "jira": {
      "command": "npx",
      "args": ["-y", "jira-mcp"],
      "env": {
        "JIRA_INSTANCE_URL": "https://your-instance.atlassian.net",
        "JIRA_USER_EMAIL": "your-email@company.com",
        "JIRA_API_KEY": "your-api-token"
      }
    }
  }
}
  1. 新しい構成を読み込むには、Claude Desktop を再起動します。

利用可能なツール

1. JQL検索( jql_search )

カスタマイズ可能なパラメータを使用して JQL 検索クエリを実行します。

パラメータ:

  • jql (必須): JQLクエリ文字列

  • nextPageToken : ページネーションのトークン

  • maxResults : 返される結果の最大数

  • fields : 含めるフィールド名の配列

  • expand : 含める追加情報

例:

{
  "jql": "project = 'MyProject' AND status = 'In Progress'",
  "maxResults": 10,
  "fields": ["summary", "status", "assignee"]
}

2. 問題を取得する ( get_issue )

特定の問題に関する詳細情報を取得します。

パラメータ:

  • issueIdOrKey (必須): 問題IDまたはキー

  • fields : 含めるフィールド名の配列

  • expand : 含める追加情報

  • properties : 含めるプロパティの配列

  • failFast : エラー発生時にすぐに失敗するかどうか

例:

{
  "issueIdOrKey": "PROJ-123",
  "fields": ["summary", "description", "status"],
  "expand": "renderedFields,names"
}

発達

構成

サーバーを実行する前に環境変数を設定してください。ルートディレクトリに.envファイルを作成してください。

JIRA_INSTANCE_URL=https://your-instance.atlassian.net
JIRA_USER_EMAIL=your-email@company.com
JIRA_API_KEY=your-api-token

値を次のように置き換えます。

  • 実際の JIRA インスタンス URL

  • JIRAアカウントに関連付けられたメールアドレス

  • JIRA APIトークン(Atlassianアカウント設定で生成できます)

インストール

Smithery経由でインストール

Smithery経由で Claude Desktop 用の JIRA を自動的にインストールするには:

npx -y @smithery/cli install jira-mcp --client claude

手動インストール

  1. このリポジトリをクローンします:

git clone <repository-url>
cd jira-mcp
  1. 依存関係をインストールします:

npm install

MCP Inspectorで実行

テストと開発には、MCP Inspector を使用できます。

npm run inspect

新しいツールの追加

新しいツールを追加するには、 index.jsのListToolsRequestSchemaハンドラーを変更します。

server.setRequestHandler(ListToolsRequestSchema, async () => {
  return {
    tools: [
      // Existing tools...
      {
        name: "your_new_tool",
        description: "Description of your new tool",
        inputSchema: {
          // Define input schema...
        }
      }
    ]
  };
});

次に、 CallToolRequestSchemaハンドラーにツールを実装します。

ライセンス

マサチューセッツ工科大学

貢献

貢献を歓迎します!お気軽にPRを送信してください。

Available Tools

2 tools
get_issueC

Retrieve details about an issue by its ID or key.

ParametersJSON Schema
NameRequiredDescriptionDefault
issueIdOrKeyYesID or key of the issue
fieldsNoFields to include in the response
expandNoAdditional information to include in the response
propertiesNoProperties to include in the response
failFastNoFail quickly on errors

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves details, implying a read-only operation, but doesn't mention error handling (e.g., what happens if the ID/key is invalid), rate limits, authentication needs, or response format. This leaves significant gaps for an agent to understand how to use it effectively.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, clear sentence that efficiently conveys the core purpose without any unnecessary words. It's front-loaded and easy to parse, making it highly concise and well-structured for quick understanding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity of 5 parameters, no annotations, and no output schema, the description is insufficient. It doesn't explain what details are retrieved, how to handle optional parameters like 'fields' or 'expand', or what the response looks like. For a tool with multiple parameters and no structured output information, more context is needed to guide proper usage.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so parameters are well-documented in the schema itself. The description adds no additional meaning beyond implying retrieval by 'ID or key', which aligns with the 'issueIdOrKey' parameter but doesn't elaborate on usage. With high schema coverage, the baseline score of 3 is appropriate as the description doesn't compensate but also doesn't detract.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose with a specific verb ('Retrieve') and resource ('details about an issue'), making it easy to understand what the tool does. However, it doesn't explicitly differentiate from the sibling tool 'jql_search', which likely serves a different purpose (searching vs. retrieving by ID/key).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives like 'jql_search'. It mentions retrieving by 'ID or key', which implies a specific use case, but doesn't clarify when to choose this over a search tool or address any prerequisites or exclusions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 2 tool updates
    • First observedget_issue
    • First observedjql_search

TDQS

B3/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: get_issue retrieves a single issue by ID/key, while jql_search performs broader queries using JQL. There is no overlap or ambiguity between them, as they serve different use cases (specific lookup vs. flexible search).

Naming Consistency5/5

Both tools follow a consistent snake_case naming pattern with clear verb_noun structure: get_issue and jql_search. The naming is predictable and readable, with no deviations or mixed conventions.

Tool Count2/5

With only 2 tools, this server feels severely under-scoped for a Jira integration. A typical Jira MCP would need more operations like create_issue, update_issue, or list_projects to cover basic workflows. The current set is too thin for meaningful agent interaction.

Completeness2/5

The tool surface is significantly incomplete for Jira's domain. While get_issue and jql_search provide read/search capabilities, there are major gaps in CRUD operations (no create, update, or delete) and missing lifecycle management (e.g., transitions, comments). This will cause agent failures in common scenarios.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers