Skip to main content
Glama

confluence_create

Creates a new Confluence page from explicit fields or a JFM document with frontmatter. Supports dry-run validation and file paths for efficient round-trips.

Instructions

Create a NEW Confluence page (use confluence_write to overwrite an existing page identified by its ID). Builds from explicit fields or from a full JFM document (frontmatter + body, e.g. the output of confluence_read). With a document, space_key/title/parent_id come from the frontmatter and the body becomes the page body — enabling the read → edit → create round-trip. Explicit space_key/title/parent_id override frontmatter and a warning is returned when they do. JFM is GitHub-style markdown, NOT Confluence wiki markup — see resource omni-dev://specs/jfm. The document/content bodies each also accept a filesystem-path form (document_path/content_path) the server reads from disk — prefer it when the body is already on disk, to avoid emitting a large body inline. Set dry_run: true first when uncertain about required fields or formatting — validates the input and returns the request that would be sent (method, path, body) without creating the page. Returns the new page's ID. Mirrors omni-dev atlassian confluence create (and its --dry-run).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
titleNoPage title. Required unless `document` carries one. Overrides frontmatter.
formatNoFormat of `content`: `"jfm"` (default markdown) or `"adf"` (raw ADF JSON). Ignored for the `document` path (a document is always JFM).
contentNoPage body. Parsed according to `format`. Required unless `document` is provided (and rejected when it is — the document body is the page body). For `format = "jfm"` (the default), this is GitHub-style markdown, NOT Confluence wiki markup. Use `##` not `h2.`, triple-backtick fences not `{code}`, backtick inline code not `{{...}}`. Full reference: MCP resource `omni-dev://specs/jfm`.
dry_runNoWhen true, validate and return the would-be request (method, path, body) without creating the page. Defaults to `false`.
documentNoFull JFM document (YAML frontmatter + markdown body), e.g. the output of `confluence_read` with the frontmatter edited. When provided, `space_key`, `title` and `parent_id` are taken from the frontmatter and the body becomes the page body — so the read → edit → create round-trip works. The `space_key`/`title`/`parent_id` parameters below still override their frontmatter counterparts (a warning is returned when they do); passing `content` together with `document` is an error. See resource `omni-dev://specs/jfm`.
parent_idNoOptional parent page ID for nesting under an existing page. Overrides frontmatter `parent_id:`.
space_keyNoTarget Confluence space key (e.g., `"ENG"`). Required unless `document` carries a `space_key:`. Overrides frontmatter.
content_pathNoFilesystem path the server reads the page body from, instead of `content`. Prefer this when the body is already on disk — it avoids re-emitting the whole body inline. Mutually exclusive with `content` (and, like `content`, rejected when `document`/`document_path` is given).
document_pathNoFilesystem path the server reads the JFM `document` from, instead of `document`. Prefer this when the document is already on disk — it avoids re-emitting the whole document inline. Mutually exclusive with `document`.
Behavior5/5

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

No annotations provided, but description fully covers behavioral aspects: creates a page (write operation), returns new page ID, explains override warnings, describes dry_run validation, and notes JFM format constraints.

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?

Well-structured with purpose first, then input modes, format details, file paths, dry_run, return value. Every sentence adds value; no repetition.

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

Completeness5/5

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

Covers all necessary aspects: purpose, inputs, format, behavior, return value. References external resource for JFM specs. Mirrors CLI command. Complete for a create tool.

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

Parameters5/5

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

Schema description coverage is 100%, but description adds significant meaning: explains parameter dependencies (title required unless document provides), mutual exclusivity (document vs content), and recommends file path parameters over inline.

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

Purpose5/5

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

The description explicitly states 'Create a NEW Confluence page' and distinguishes from 'confluence_write' which overwrites existing pages. It clearly identifies the tool's purpose and scope.

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

Usage Guidelines5/5

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

Provides explicit guidance: use for new pages vs write for updates, explains two input modes (fields vs document), recommends dry_run for validation, advises using file paths when content is on disk, and warns about JFM format.

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

Install Server

Other Tools

Latest Blog Posts

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/rust-works/omni-dev'

If you have feedback or need assistance with the MCP directory API, please join our Discord server