🥶
Atlassian MCPの全ツール解説とおすすめpermissions設定
本記事はGENDA Advent Calendar 2025 シリーズ4 Day 6の記事です。
はじめに
ドキュメント、書くの大変ですよね…
最近はClaudeに頼りっぱなしで、ただの文章を書くのも全部任せちゃいたいダメ人間になってしまっています。
そんな私が最近導入したのがAtlassian MCPです。
JiraのIssue確認やConfluenceのドキュメント参照も、Claude Codeに丸投げできるようになりました。
ただ、デフォルト設定だと毎回ツール実行の確認を求められて、ちょっと面倒。
そこでpermissions設定を見直して、Read系は自動実行、Write系だけ確認するようにしています。
本記事では、その設定方法を紹介します。
前提条件
本記事は以下の環境を前提としています:
- 記事執筆日: 2025年12月18日
- Claude Code: v2.0.72
- Atlassian MCP: Remote MCP Server(https://mcp.atlassian.com/v1/sse)
Atlassian MCPのセットアップ方法は公式ドキュメントを参照してください:
Atlassianツール全28個の分類
ツール一覧はこちらから確認しました:
分類の方針
- Read: 情報取得のみ、システムの状態を変更しない(19個)
- Write: データの作成・更新を行う(9個)
Shared Platform(4個)
| # | ツール名 | 分類 | 説明 |
|---|---|---|---|
| 1 | atlassianUserInfo |
Read | 現在のAtlassianユーザー情報(アカウントIDなど)を取得 |
| 2 | getAccessibleAtlassianResources |
Read | アクセス可能なAtlassian CloudサイトのCloud IDを取得 |
| 3 | search |
Read | Rovo SearchでJira/Confluenceを横断検索(自然言語クエリ対応) |
| 4 | fetch |
Read | ARI(Atlassian Resource Identifier)を指定してデータを取得 |
Confluence(11個)
| # | ツール名 | 分類 | 説明 |
|---|---|---|---|
| 5 | getConfluenceSpaces |
Read | スペース一覧を取得(キー、ID、タイプ、ステータス、ラベルでフィルタ可能) |
| 6 | getConfluencePage |
Read | ページまたはLive DocをID指定で取得(本文はMarkdown形式) |
| 7 | getPagesInConfluenceSpace |
Read | スペース内のページ一覧を取得(タイトル、ステータス、タイプでフィルタ可能) |
| 8 | getConfluencePageDescendants |
Read | 指定ページの子孫ページ一覧を取得 |
| 9 | getConfluencePageFooterComments |
Read | ページのフッターコメントを取得(Markdown形式) |
| 10 | getConfluencePageInlineComments |
Read | ページのインラインコメントを取得 |
| 11 | searchConfluenceUsingCql |
Read | CQL(Confluence Query Language)でコンテンツを検索 |
| 12 | createConfluencePage |
Write | 新規ページまたはLive Docを作成(本文はMarkdown形式) |
| 13 | updateConfluencePage |
Write | 既存ページを更新(タイトル、本文、配置場所) |
| 14 | createConfluenceFooterComment |
Write | ページにフッターコメント(または返信)を作成 |
| 15 | createConfluenceInlineComment |
Write | 選択テキストに紐づくインラインコメント(または返信)を作成 |
Jira(13個)
| # | ツール名 | 分類 | 説明 |
|---|---|---|---|
| 16 | getJiraIssue |
Read | Issue IDまたはキーで詳細を取得 |
| 17 | getTransitionsForJiraIssue |
Read | Issueの利用可能なワークフロートランジションを取得 |
| 18 | getVisibleJiraProjects |
Read | 閲覧・編集・作成権限のあるプロジェクト一覧を取得 |
| 19 | getJiraProjectIssueTypesMetadata |
Read | プロジェクトで利用可能なIssueタイプ一覧を取得 |
| 20 | getJiraIssueTypeMetaWithFields |
Read | プロジェクトとIssueタイプの作成フィールドメタデータを取得 |
| 21 | getJiraIssueRemoteIssueLinks |
Read | Issueのリモートリンク(Confluenceリンクなど)を取得 |
| 22 | lookupJiraAccountId |
Read | 名前またはメールからJiraユーザーのアカウントIDを検索 |
| 23 | searchJiraIssuesUsingJql |
Read | JQL(Jira Query Language)でIssueを検索 |
| 24 | createJiraIssue |
Write | プロジェクトとIssueタイプを指定して新規Issueを作成 |
| 25 | editJiraIssue |
Write | 既存Issueのフィールドを更新 |
| 26 | transitionJiraIssue |
Write | Issueのワークフロートランジションを実行(ステータス変更) |
| 27 | addCommentToJiraIssue |
Write | Issueにコメントを追加 |
| 28 | addWorklogToJiraIssue |
Write | Issueにワークログ(作業時間)を追加 |
集計
| 分類 | 個数 |
|---|---|
| Read | 19個 |
| Write | 9個 |
| 合計 | 28個 |
Claude Code permissions設定の基本
Claude Codeでは、MCPツールに対する実行権限をpermissions設定で制御できます。
特定のツールをallowに指定することで、確認なしで自動実行できるようになります。
基本構文
サーバー全体を許可:
{
"permissions": {
"allow": ["mcp__atlassian"]
}
}
特定ツールのみ許可:
{
"permissions": {
"allow": [
"mcp__atlassian__getJiraIssue",
"mcp__atlassian__search"
]
}
}
ポイント
-
allowに記載されたツールは確認なしで自動実行される -
allowに記載されていないツールは実行前に確認を求められる -
denyはallowより優先される
参考: https://code.claude.com/docs/en/iam
おすすめpermissions設定
設定方針
- Read系ツール: 自動実行を許可(情報取得のみで安全)
- Write系ツール: 実行前に確認(Issue作成やページ更新は意図を確認したい)
推奨設定
Read系ツール(19個) を許可します。
この設定により、読み取り操作は自動で行い、書き込み操作だけお伺いを立ててくれるようになります。
{
"permissions": {
"allow": [
"mcp__atlassian__atlassianUserInfo",
"mcp__atlassian__getAccessibleAtlassianResources",
"mcp__atlassian__search",
"mcp__atlassian__fetch",
"mcp__atlassian__getConfluenceSpaces",
"mcp__atlassian__getConfluencePage",
"mcp__atlassian__getPagesInConfluenceSpace",
"mcp__atlassian__getConfluencePageDescendants",
"mcp__atlassian__getConfluencePageFooterComments",
"mcp__atlassian__getConfluencePageInlineComments",
"mcp__atlassian__searchConfluenceUsingCql",
"mcp__atlassian__getJiraIssue",
"mcp__atlassian__getTransitionsForJiraIssue",
"mcp__atlassian__getVisibleJiraProjects",
"mcp__atlassian__getJiraProjectIssueTypesMetadata",
"mcp__atlassian__getJiraIssueTypeMetaWithFields",
"mcp__atlassian__getJiraIssueRemoteIssueLinks",
"mcp__atlassian__lookupJiraAccountId",
"mcp__atlassian__searchJiraIssuesUsingJql"
]
}
}
Discussion