Confluence MCP Server
Confluence Cloud MCP サーバー
Confluence Cloud と連携するためのツールを提供する Model Context Protocol (MCP) サーバー。このサーバーにより、AI アシスタントは標準化されたインターフェースを通じて Confluence のスペース、ページ、コンテンツを管理できるようになります。
特徴
スペース管理
スペースをリストする
スペースの詳細を取得する
ページ操作
ページの作成、閲覧、更新
スペース内のページを一覧表示する
Confluence のストレージ形式から Markdown にページコンテンツを変換する
検索とラベル
CQL を使用してコンテンツを検索する
ページラベルを管理する
Related MCP server: Confluence MCP Server
設定
オプション 1: Docker を使用する (推奨)
このサーバーを使用する最も簡単な方法は、事前に構築された Docker イメージを使用することです。
docker run --rm -i \
-e CONFLUENCE_API_TOKEN=your-api-token \
-e CONFLUENCE_EMAIL=your-email@domain.com \
-e CONFLUENCE_DOMAIN=your-domain.atlassian.net \
ghcr.io/aaronsb/confluence-cloud-mcp:latestオプション2: ローカルで構築する
リポジトリをクローンします。
git clone https://github.com/aaronsb/confluence-cloud-mcp.git
cd confluence-cloud-mcpローカル ビルド スクリプトを使用してビルドおよび実行します。
# Build the Docker image
./scripts/build-local.sh
# Run the server
CONFLUENCE_API_TOKEN=your-token CONFLUENCE_EMAIL=your-email ./scripts/run-local.shオプション3: ソースから
依存関係をインストールします:
npm install環境変数を設定する: Confluence の資格情報を使用して
.envファイルを作成します。
CONFLUENCE_DOMAIN=your-domain.atlassian.net
CONFLUENCE_EMAIL=your-email@domain.com
CONFLUENCE_API_TOKEN=your-api-tokenプロジェクトをビルドします。
npm run buildサーバーを実行します。
node build/index.js使用法
サーバーを MCP 構成に追加することで、MCP 対応の AI アシスタントと統合できます。
{
"mcpServers": {
"confluence": {
"command": "docker",
"args": ["run", "--rm", "-i", "ghcr.io/aaronsb/confluence-cloud-mcp:latest"],
"env": {
"CONFLUENCE_DOMAIN": "your-domain.atlassian.net",
"CONFLUENCE_EMAIL": "your-email@domain.com",
"CONFLUENCE_API_TOKEN": "your-api-token"
},
"disabled": false,
"autoApprove": []
}
}
}AI アシスタント向けの注意: Cline のような AI アシスタントがこの MCP サーバーをインストールしようとしている場合は、詳細なインストール手順についてはllms-install.mdファイルを参照してください。
利用可能なツール
宇宙ツール
list_confluence_spaces: Confluence 内のすべてのスペースを一覧表示しますget_confluence_space: 特定のスペースの詳細を取得する
ページツール
list_confluence_pages: スペース内のページを一覧表示するget_confluence_page: 特定のページとそのコンテンツを取得します(Markdown 変換が含まれるようになりました)create_confluence_page: スペースに新しいページを作成するupdate_confluence_page: 既存のページを更新する
get_confluence_pageツールは、Confluence ストレージ形式のコンテンツを Markdown に自動変換するようになりました。これにより、ページコンテンツの操作が容易になります。この変換処理では、以下の処理が行われます。
ヘッダー(h1-h6)
リスト(順序付きと順序なし)
リンク
強調(太字/斜体)
コードブロック
テーブル
段落と改行
検索とラベルツール
search_confluence_pages: CQL を使用して Confluence コンテンツを検索するget_confluence_labels: ページのラベルを取得するadd_confluence_label: ページにラベルを追加するremove_confluence_label: ページからラベルを削除する
注: すべてのツール名は、一貫性と明確さを保つために [動詞]合流[名詞] の命名規則に従います。
発達
このプロジェクトはTypeScriptで記述されており、サーバー機能を実装するためのMCP SDK規約に準拠しています。コードベースは以下のとおりです。
src/client/- Confluence API クライアント実装src/handlers/- MCP ツールリクエストハンドラーsrc/schemas/- ツール入力用のJSONスキーマsrc/types/- TypeScript 型定義src/utils/- コンテンツ形式の変換を含むユーティリティ関数
CI/CDパイプライン
このプロジェクトでは、継続的な統合とデプロイメントに GitHub Actions を使用します。
プルリクエストの自動テストとリンティング
メインブランチのコミット時に Docker イメージを自動ビルド
マルチアーキテクチャ イメージ ビルド (amd64、arm64)
GitHub Container Registryへのコンテナ公開
地域開発
ローカル開発の場合は、提供されているスクリプトを使用します。
./scripts/build-local.sh: プロジェクトをビルドし、ローカル Docker イメージを作成します./scripts/run-local.sh: 資格情報を使用してローカルの Docker イメージを実行します
ライセンス
マサチューセッツ工科大学
Available Tools
11 toolsadd_confluence_labelA
Add a label to a page. Labels help organize content and make it easier to find related pages through search_confluence_pages.
Label Format:
Must contain only letters, numbers, hyphens, and underscores
No spaces or special characters allowed
Error Handling:
Returns 400 for invalid label format
Returns 403 for insufficient permissions
Returns 404 if page not found
Returns 409 if label already exists on the page
Response includes:
Success status
Label details (id, name, prefix, creation date)
Operation message
| Name | Required | Description | Default |
|---|---|---|---|
| pageId | Yes | ID of the page to add the label to | |
| label | Yes | Label to add (letters, numbers, hyphens, and underscores only) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description fully covers behavioral aspects: error codes (400,403,404,409) and response structure. This is comprehensive for a tool of this complexity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Description is organized into clear sections (purpose, format, errors, response) and is fairly concise, though some repetition of schema details could be trimmed.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given low complexity (2 params, no output schema), description covers purpose, error handling, response, and even connects to sibling tool search_confluence_pages, making it sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described in the schema. The description repeats label format constraints (letters, numbers, hyphens, underscores) which are already in the schema, adding no new semantic value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states 'Add a label to a page', specifying verb and resource. Among siblings like remove_confluence_label and get_confluence_labels, it is distinct.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Description explains that labels help organize content and aid search via search_confluence_pages, implying when to use. However, it does not explicitly state when not to use or directly name alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
create_confluence_pageC
Create a new page in a space
| Name | Required | Description | Default |
|---|---|---|---|
| spaceId | Yes | ID of the space to create the page in | |
| title | Yes | Title of the page | |
| content | Yes | Content of the page in Confluence storage format | |
| parentId | No | ID of the parent page (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits beyond creation. It fails to mention that the page is created in Confluence storage format, or any side effects, authentication requirements, or error conditions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at one sentence, which is efficient. However, it may be too terse to be fully informative, but it does not waste words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters, 3 required, and no output schema, the description is incomplete. It does not explain the storage format for content, the optional parentId behavior, or what the response looks like.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage, so the description adds no additional meaning. The description simply repeats the overall purpose without enhancing parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool creates a page, but does not differentiate from sibling tools like update_confluence_page or list_confluence_pages. However, the verb+resource combination is specific enough for basic understanding.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. It does not mention prerequisites, such as needing space access, or when to use update instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_confluence_pageA
Find and retrieve a Confluence page by its title. Returns the page content in markdown format, along with metadata. Optionally specify a spaceId to narrow the search. If multiple pages match the title, returns a list of matches to choose from. TIP: Use this when you know the exact page title, but prefer search_confluence_pages for partial matches.
| Name | Required | Description | Default |
|---|---|---|---|
| title | Yes | Title of the page to find | |
| spaceId | No | Optional space ID to limit the search scope |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, but description discloses return format (markdown content, metadata) and behavior for multiple matches (returns list). Could be more explicit about read-only nature, but adequately transparent for a retrieval tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus a tip, front-loaded with key action. No unnecessary words. Highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, but description explains return format. With sibling tools listed, provides sufficient context for agent to decide. Missing details on response structure (e.g., specific metadata fields), but acceptable for a simple retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with clear descriptions for both parameters. Description adds minimal value beyond schema, just reiterates title and optional spaceId. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states 'Find and retrieve a Confluence page by its title' with specific verb and resource. Distinguishes from sibling 'search_confluence_pages' by mentioning exact title vs partial matches.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises when to use ('when you know the exact page title') and when to use alternative ('prefer search_confluence_pages for partial matches'). Also notes optional spaceId to narrow scope.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_confluence_labelsB
Get labels for a page. Use this to understand page categorization and find related content through common labels.
| Name | Required | Description | Default |
|---|---|---|---|
| pageId | Yes | ID of the page |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, and the description does not disclose any behavioral traits such as read-only nature, authentication needs, rate limits, or error conditions. The description carries the full burden but adds minimal transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two efficient sentences, front-loaded with the action and purpose. No unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple read tool with one required parameter and no output schema, the description adequately covers purpose and usage context. Minor gaps in behavioral details reduce the score.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with description for pageId. The tool description does not add any further meaning to the parameter beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets labels for a page with verb 'Get' and resource 'labels for a page', and explains the purpose of categorization and finding related content. It does not explicitly distinguish from siblings like add_confluence_label but the operation is distinct enough.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a context for use ('to understand page categorization and find related content'), but does not specify when not to use it or mention alternative tools like search or page retrieval.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_confluence_pageA
Get a specific Confluence page by its ID. Returns the complete page content in markdown format, along with metadata like version history and space information. The page ID can be found in search results, page listings, or other API responses. TIP: Save page IDs from searches for direct access to frequently needed pages.
| Name | Required | Description | Default |
|---|---|---|---|
| pageId | Yes | ID of the page to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It states it returns content in markdown and metadata like version history and space info. It does not disclose error behavior or side effects, but for a simple get operation, it is adequately transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences plus a tip, all front-loaded with the main action. Every sentence serves a purpose: action/output, source of ID, and advice. No redundant or missing information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simplicity (1 param, no output schema), the description explains input source and output format (markdown, metadata). It could mention error handling but is otherwise complete for the tool's scope.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with 'pageId' described as 'ID of the page to retrieve'. The description adds value by explaining where to find page IDs, enhancing the parameter's meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'specific Confluence page by its ID'. It distinguishes from sibling tools like find_confluence_page (search) and list_confluence_pages by specifying retrieval via ID, not search or listing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains that page ID is found in search results and other responses, implying use when ID is known. The tip suggests saving IDs for direct access, providing implicit guidance but no explicit when-not or alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_confluence_spaceB
Get details about a specific space
| Name | Required | Description | Default |
|---|---|---|---|
| spaceId | Yes | ID of the space to retrieve |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so the description must fully convey behavior. It implies a read operation but does not disclose any permissions needed, rate limits, or other potential side effects beyond basic retrieval.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise, front-loading the purpose in a single sentence with no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
While the tool is simple, the description does not hint at the output structure or what 'details' entail, which is important given the absence of an output schema. The description could be more complete to guide the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The parameter 'spaceId' is fully described in the schema with 100% coverage, and the description adds no additional meaning beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves details for a specific space, distinguishing it from sibling tools like list_confluence_spaces that list multiple spaces.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs alternatives such as list_confluence_spaces or get_confluence_page. The description lacks explicit context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_confluence_pagesA
List all pages in a Confluence space. Best used when you need to explore all content in a specific space rather than searching for specific terms. Returns page IDs, titles, and metadata. TIP: Use this when search_confluence_pages might miss relevant pages or when you need a complete inventory of pages in a space.
| Name | Required | Description | Default |
|---|---|---|---|
| spaceId | Yes | ID of the space to list pages from | |
| limit | No | Maximum number of pages to return (default: 25) | |
| start | No | Starting index for pagination (default: 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It mentions returns include page IDs, titles, and metadata, but lacks details on pagination behavior, rate limits, or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences plus a tip, with no wasted words. Front-loads the core purpose and follows with usage guidance.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Lacks output schema but describes return fields (page IDs, titles, metadata). Could mention pagination details or result limits, but schema covers parameters; still adequate for a list tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description adds no additional parameter context beyond what's in the schema. It mentions 'space' but doesn't elaborate on parameters like limit or start.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists all pages in a Confluence space, distinguishing it from the sibling search_confluence_pages by specifying exploration of all content vs. searching for specific terms.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly advises using this tool when search_confluence_pages might miss relevant pages or for a complete inventory, providing clear when-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_confluence_spacesA
List all available Confluence spaces. Best used as the first step in a content discovery workflow. Returns space IDs, names, and keys that you can use with other tools. TIP: Use a higher limit (e.g., 100) on first call to get a comprehensive view of available spaces.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Maximum number of spaces to return (default: 25) | |
| start | No | Starting index for pagination (default: 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It mentions return values (space IDs, names, keys) and offers a tip about using a higher limit, but it does not disclose potential issues like rate limits, errors, or side effects. A 3 is appropriate as it adds some behavioral context but lacks comprehensive transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise: two sentences and a tip. It is front-loaded with the main purpose. The structure is clear, though the tip could be integrated.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description explains the return values (IDs, names, keys) and hints at pagination with limit and start. This is mostly complete for a listing tool, though it could mention pagination behavior more explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds value by suggesting a higher limit and mentioning pagination implicitly, but it does not go beyond the schema's description significantly. The tip about limit adds practical context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'List all available Confluence spaces,' providing a specific verb-resource combination. It also distinguishes itself by noting it is the best first step in a content discovery workflow and that it returns IDs, names, and keys for use with other tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description advises using this tool as the first step and recommends a higher limit on the first call. While it does not explicitly list when not to use it or compare with siblings, the context signals imply it is for initial enumeration, not for searching or filtering.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
remove_confluence_labelA
Remove a label from a page.
Error Handling:
Returns 403 for insufficient permissions
Returns 404 if page or label not found
Response includes:
Success status
Operation details (pageId, label, operation type)
Success message
| Name | Required | Description | Default |
|---|---|---|---|
| pageId | Yes | ID of the page | |
| label | Yes | Label to remove |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses error handling (403 for permissions, 404 for missing page/label) and response structure. While it does not explicitly state that the operation is destructive, the error codes and context sufficiently convey behavior, especially without annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise with only four sentences. It front-loads the main purpose, then covers error handling and response, with no extraneous information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the lack of annotations and output schema, the description provides sufficient context: purpose, error conditions, and response details. It is complete for a straightforward removal operation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters. The description does not add additional meaning beyond what is in the schema, so a baseline of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Remove a label from a page.' It uses a specific verb and resource, distinguishing it clearly from the sibling 'add_confluence_label'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for removing a label from a page. It does not explicitly provide when-not-to-use or alternatives, but the sibling list makes it clear that 'add_confluence_label' is the opposite operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_confluence_pagesA
Search across Confluence pages using simple text or CQL (Confluence Query Language).
Query Types:
Simple Text Search:
Just provide the search term directly (e.g., "documentation")
The system automatically wraps it in proper CQL syntax
Advanced CQL Search:
Must include "type =" to signal raw CQL usage
Examples:
type = "page" AND text ~ "project"
type = "page" AND space.key = "TEAM"
type = "page" AND created >= "2024-01-01"
Search Capabilities:
Full text search across all pages
Space-specific searches
Content type filtering
Metadata-based filtering
CQL Operators (for advanced queries):
~ : contains
= : equals
!= : not equals
AND, OR : combine conditions
() : group conditions
= <= : date comparisons
IN : multiple values
Common Search Patterns:
Finding pages in specific space: type = "page" AND space.key = "SPACENAME" AND text ~ "searchterm"
Finding recent pages: type = "page" AND created >= "2024-01-01" AND text ~ "searchterm"
Finding pages by title: type = "page" AND title ~ "exactname"
Finding pages by label: type = "page" AND label = "labelname"
Response includes:
Page ID, title, and type
Space information
URL to the page
Last modified date
Content excerpt with search term highlighting
Pagination:
Use 'limit' to control results per page (default: 25)
Use 'start' for pagination offset
Workflow Tips:
Start with list_confluence_spaces to get space keys
Use space-specific searches for better results
Use the returned pageId with get_confluence_page for full content
Look for highlighted excerpts in results to identify most relevant matches
Best Practices:
Start with simple text searches when possible
Use advanced CQL (with 'type =') for complex queries
Use space-specific searches for better performance
Use get_confluence_page to fetch full content of found pages
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Search query - either simple text (e.g., 'documentation') or CQL query (must include 'type =' for CQL mode, e.g., 'type = "page" AND text ~ "project"') | |
| limit | No | Maximum number of results to return (default: 25) | |
| start | No | Starting index for pagination (default: 0) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It explains query types, operators, search capabilities, response format (including excerpts with highlighting), and pagination. Does not explicitly mention that the tool is read-only, but the behavior described (search returning results) implies no side effects. Could be slightly more explicit about read-only nature.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is well-organized into labeled sections (Query Types, Search Capabilities, CQL Operators, etc.). Every sentence adds useful information—no fluff. It efficiently packs a lot of detail without being verbose, and the structure makes it easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (CQL, multiple filtering options, pagination) and lack of output schema, the description thoroughly covers what the agent needs: query syntax, operators, common patterns, pagination, response fields, and workflow integration with sibling tools. No gaps identified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, but description adds significant value: explains the two query modes and how to switch between them, provides extensive CQL examples for each operator and common patterns, clarifies default values for limit and start, and describes the response fields. Goes well beyond the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches Confluence pages using either simple text or CQL. It distinguishes from sibling tools like get_confluence_page (retrieves single page) and list_confluence_pages (lists without search). The verb 'search' and resource 'Confluence pages' are specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly provides guidance on when to use simple text vs advanced CQL, with instructions like 'must include type = for CQL mode'. Includes workflow tips (start with list_confluence_spaces) and best practices (use space-specific searches, use get_confluence_page for full content). Clearly tells when to use this vs. other tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
update_confluence_pageB
Update an existing page
| Name | Required | Description | Default |
|---|---|---|---|
| pageId | Yes | ID of the page to update | |
| title | Yes | New title of the page | |
| content | Yes | New content in Confluence storage format | |
| version | Yes | Current version number of the page |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It fails to disclose behaviors like optimistic locking (version parameter), idempotency, error conditions, or permission requirements beyond the basic update operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise at 4 words, with no redundancy. It is front-loaded and immediately communicates the core purpose. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and 4 required parameters, the description is incomplete. It omits details on return value, version handling, error behaviors, and how updates interact with Confluence's page structure. A more complete description would clarify these aspects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema covers all 4 parameters with descriptions (100% coverage). The description adds no additional meaning beyond what the schema already provides. For example, it does not explain Confluence storage format for content or the role of version in conflict detection.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Update an existing page' clearly states the action (update) and the resource (existing page). It contrasts with sibling tools like create_confluence_page (create) and get/find/list (read), making the purpose unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives (e.g., create_confluence_page for new pages, or find_confluence_page for searching). The description does not specify prerequisites, such as needing the page ID or version.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool has a clearly distinct purpose. find_confluence_page is for exact title matches, search_confluence_pages for partial/text searches, and get_confluence_page for direct ID access. Labels and spaces tools are also well-separated.
All tools follow a consistent verb_confluence_noun pattern (e.g., add_confluence_label, create_confluence_page, list_confluence_spaces). No mixing of conventions or ambiguous verbs.
11 tools cover the core functionality of a Confluence content server (CRUD for pages, spaces, labels) without being excessive. Each tool earns its place.
The set covers most page operations (create, read, update, search) but notably lacks a delete_page tool. Labels have add/get/remove but no update. Missing delete is a significant gap for a CRUD-oriented server.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Your memory, everywhere AI goes. Build knowledge once, access it via MCP anywhere.
Zero-setup MCP gateway securely connecting AI to your tools with authentication and workflows
Let AI agents query data and act across all your business apps via MCP.
Knowledge base MCP for AI agents on iknow.dev. Search, read, and maintain via OAuth.
Related MCP Servers
- AlicenseAqualityFmaintenanceA Model Context Protocol server that enables AI assistants to interact with Confluence content, supporting operations like retrieving, searching, creating, and updating pages and spaces.91912MIT
- AlicenseNot gradedqualityDmaintenanceEnables integration with Atlassian Confluence to browse spaces, search content using CQL, and manage pages directly from MCP-compatible applications. It automatically converts Confluence storage formats into markdown for seamless interaction with AI-driven editors and tools.982MIT
- AlicenseNot gradedqualityDmaintenanceEnables GitHub Copilot to read, write, search, and manage Confluence pages, spaces, attachments, and diagrams through MCP tools.MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to read Confluence Cloud pages as markdown, browse page trees, download image attachments, and diff content against local documentation.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/aaronsb/confluence-cloud-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server