confluence-mcp
Server Quality Checklist
Latest release: v1.0.0
- Disambiguation5/5
Each tool targets a distinct operation: retrieval by ID, by title, listing space pages, listing children, search, importing from Confluence, and exporting to Confluence. There is no meaningful overlap, and the descriptions make the boundaries clear.
Naming Consistency5/5All tool names use snake_case and follow a clear pattern: get_* for retrieval operations, search_* for querying, sync_* and push_* for transfer operations. The naming is consistent and predictable.
Tool Count5/5With 7 tools, the server is well-scoped. Each tool serves a necessary function for reading, searching, and syncing Confluence content, without unnecessary bloat or redundancy.
Completeness4/5The tool set covers the primary lifecycle for Confluence content: read (by id, title, space, children, search) and write/update via push_md_to_confluence. The main gap is lack of a direct delete or page management operation, but the core workflows are well supported.
Average 3.6/5 across 7 of 7 tools scored. Lowest: 2.9/5.
See the Tool Scores section below for per-tool breakdowns.
- No community issues in the last 6 months
- 1 commit in the last 12 weeks
- No stable releases found
- No critical vulnerability alerts
- No high-severity vulnerability alerts
- No code scanning findings
- CI status not available
This repository is licensed under MIT License.
This repository includes a README.md file.
No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.
Tip: use the "Try in Browser" feature on the server page to seed initial usage.
Add a glama.json file to provide metadata about your server.
If you are the author, simply .
If the server belongs to an organization, first add
glama.jsonto the root of your repository:{ "$schema": "https://glama.ai/mcp/schemas/server.json", "maintainers": [ "your-github-username" ] }Then . Browse examples.
Add related servers to improve discoverability.
How to sync the server with GitHub?
Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.
To manually sync the server, click the "Sync Server" button in the MCP server admin interface.
How is the quality score calculated?
The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).
Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.
Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).
Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.
Tool Scores
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only repeats the tool's function and mentions CQL, but does not describe expected behavior such as result ordering, pagination, 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.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence with no filler or redundant information. It is appropriately concise and front-loaded with the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no annotations and no output schema, the description provides minimal context. It fails to explain return values, result structure, or practical usage considerations, making it incomplete for a tool with multiple retrieval-focused siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema provides 100% coverage with descriptions for all three parameters, so the baseline is 3. The description adds no extra parameter insights beyond mentioning CQL, which is already referenced in the query parameter's schema description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose4/5Does 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 CQL, specifying both the action and method. This distinguishes it from sibling tools that retrieve by ID, title, space, or children, though it doesn't explicitly name those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines2/5Does 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 the sibling tools. The description implies it is for search, but does not state exclusions or suggest alternatives for direct lookups, leaving the agent to infer proper usage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure, yet it only states the basic lookup operation. It does not mention exact-match behavior, case sensitivity, what happens if multiple pages share the title, or the format of the response. This is a significant gap for a simple GET tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, focused sentence that fully conveys the tool's purpose without any wasted words. It is front-loaded with the action and resource, making it easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple and the parameter schema is complete, but the description lacks important behavioral details like return behavior or edge cases (e.g., no result, duplicate titles). Given the simplicity, the description is minimally adequate but not fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with clear descriptions for both title and spaceKey. The tool description adds no extra meaning beyond what the schema already provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (Get), the resource (a Confluence page), and the method (by title within a space). This distinguishes it from sibling tools like get_page_by_id (by ID) and search_confluence (search-based).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when the exact title and space key are known, but does not explicitly contrast with alternatives such as search_confluence or get_space_pages. No exclusions or prerequisites are provided, leaving the when-to-use guidance implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- 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. It only states the basic action and provides no details about pagination behavior, ordering, whether children are direct-only, or what fields are returned. This is a read operation, but the description does not disclose any safety or side-effect information.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no redundant words or filler. It is perfectly concise and front-loaded with the essential purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness2/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description needs to explain what the tool returns and any notable behavior. It does not mention return format, pagination effects of 'limit', or potential errors. For an agent to use the tool correctly, this is a significant gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters, with 'pageId' described as 'The parent page ID' and 'limit' with a default and description. The tool description adds no extra meaning beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description 'Get child pages of a parent page' is specific with a clear verb ('Get') and resource ('child pages') and includes scope ('of a parent page'). It distinguishes from siblings like get_page_by_id (single page) and get_space_pages (pages in a space).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies the context of use: when you have a parent page ID and need its direct children. It does not explicitly name alternatives or exclusions, but the context is unambiguous and non-misleading.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must bear the full burden. It only mentions 'with full content', which is actually conditional on the expandBody parameter (default true). The description does not disclose that full content can be omitted, nor does it cover permissions, error behavior, rate limits, or return format. This is a meaningful gap for a tool with zero annotation support.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence containing no filler. Every word contributes: the verb, resource, identifier method, and content scope are all communicated crisply. It is appropriately concise for a simple tool.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple get-by-ID tool, the minimal description is adequate, but it omits any differentiation from siblings (beyond 'by its ID'), does not explain what 'full content' means for the response, and lacks any error or access considerations. Given there is no output schema or annotations, the description could do more to fully contextualize the tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3. The description adds no further meaning to the parameters beyond what the schema already provides. 'with full content' does not clarify the expandBody parameter beyond its existing description, so no extra value is added.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does 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 'a Confluence page by its ID', which is specific and distinguishes it from sibling tools like get_page_by_title (which uses title) and get_space_pages (which lists pages). The phrase 'with full content' adds useful scope information.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context: use this tool when you have a Confluence page ID. It does not explicitly mention alternatives, but 'by its ID' implicitly differentiates it from get_page_by_title and search_confluence. No exclusions or when-not-to-use guidance is provided, so it misses the top 'explicit alternatives' criterion.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must convey behavioral traits. It indicates a read-only operation ('Get'), but it does not disclose that the 'limit' parameter prevents returning truly 'all' pages by default, nor does it mention pagination, authentication, or response format. This ambiguity is significant.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that gets straight to the point without any filler or redundant information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with two parameters and no output schema, the description provides a basic understanding but omits critical details like pagination limits and the fact that 'all' is constrained by the default limit. This leaves gaps for an agent to fully understand the tool's behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Both parameters (spaceKey and limit) have descriptions in the schema, covering 100% of parameters. The tool description adds no additional parameter semantics beyond the schema, matching the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists pages within a Confluence space, using the specific verb 'Get' and resource 'pages.' It distinguishes itself from siblings like get_page_by_id or get_page_by_title by specifying space-level scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool is for retrieving a collection of pages in a specific space, which provides clear context for selection. However, it doesn't explicitly mention when not to use it (e.g., for searching across spaces or finding a single page by title) or name alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior2/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavioral traits. It mentions that it syncs to local markdown files, but it doesn't disclose critical side effects such as whether it overwrites existing files, whether it performs a one-way or two-way sync, or whether it deletes files that are not in Confluence. The word 'sync' is ambiguous and could imply destructive behavior, making this a significant gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence, 15 words long, that efficiently states the core action, the target, and the primary modes of use. It front-loads the verb 'Sync' and is free of any filler, making it extremely concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness3/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the moderate complexity (6 parameters, no required ones, no output schema), the description provides the essential purpose and input modes but omits details about return values, sync behavior (e.g., overwrite policy), and prerequisites like authentication. The schema partially compensates for parameter details, but the description alone is not fully complete. It's adequate for basic use but leaves significant gaps for an agent trying to predict behavior.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema descriptions are thorough, covering all 6 parameters with meaning and defaults (100% coverage). The description adds only a high-level grouping of parameters (space, search results, pages) without adding new semantic depth to individual parameters. Per the rubric, when schema coverage is high, the baseline is 3, and here the description doesn't provide sufficient additional value to exceed that.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: syncing Confluence pages to local markdown files. It distinguishes itself from the sibling getter tools and push_md_to_confluence by explicitly mentioning the download direction and the write-to-local-file aspect. The three sync modes (space, search results, pages) further clarify its scope.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Usage Guidelines4/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context on when to use the tool: when you need to sync a space, search results, or specific pages. It doesn't explicitly exclude alternatives or mention when not to use it (e.g., 'use get_page_by_id for a single page'), so it falls short of a perfect score, but the guidance is clear enough for a basic understanding.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
- Behavior3/5
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of behavioral disclosure. It does reveal key behavior: it creates or updates pages based on frontmatter or title/space, indicating mutation and idempotency. However, it does not disclose details like whether existing content is overwritten, how conflicts are handled, or any side effects beyond page creation/update.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Conciseness5/5Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short, front-loaded sentences that state the primary action and the core decision logic. Every word contributes value, with no filler or repetition of schema details.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Completeness4/5Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (write operation, 5 parameters) but high schema coverage, the description is reasonably complete. It explains the main behavioral nuance (create vs update) and the matching strategy, though it omits return value details and failure modes. Since no output schema exists, some return information could be expected, but the core functionality is well covered.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Parameters3/5Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All five parameters are fully described in the schema (100% coverage), so the baseline is 3. The description adds context by mentioning 'frontmatter or title/space', which ties to filePath and spaceKey, but does not offer additional parameter-specific semantics beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Purpose5/5Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('Push') and resource ('markdown files to Confluence'), and distinguishes it from sibling tools that retrieve or search. It also clarifies the dual behavior of creating new pages or updating existing ones, 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.
Usage Guidelines3/5Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context (pushing markdown to Confluence) but does not provide explicit guidance on when to choose this tool over siblings like 'sync_confluence_docs' or when one approach (e.g., using frontmatter vs title/space) is preferred. No exclusions or alternatives are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
GitHub Badge
Glama performs regular codebase and documentation scans to:
- Confirm that the MCP server is working as expected.
- Confirm that there are no obvious security issues.
- Evaluate tool definition quality.
Our badge communicates server capabilities, safety, and installation instructions.
Card Badge
Copy to your README.md:
Score Badge
Copy to your README.md:
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/harshpuri84/confluence-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server