# Confluence — how to use (mcp.ai)

Confluence via linguagem natural: crie, busque e edite páginas, espaços e conteúdo da wiki. Plataforma fornece a aplicação OAuth, você só clica em Conectar e autoriza seu site Atlassian. Vários sites podem ser conectados no mesmo MCP.

## Option A — via MCP (recommended)
Remote MCP endpoint (HTTP, streamable): `https://api.mcp.ai/p_confluence?ms=1788956700000`
Add it as a custom/remote MCP connector in your client (Claude, Cursor, VS Code…), then authenticate when prompted. Once connected, ask the agent to use the server's tools (e.g. `confluence_add_content_label`).

## Option B — via direct REST API
Base URL: `https://api.mcp.ai/api/confluence`
Auth: `Authorization: Bearer sk_live_…` — create a workspace API key at https://mcp.ai/settings/api-keys
Discover endpoints: `GET https://api.mcp.ai/api/confluence/_endpoints`

### Endpoints
- `POST https://api.mcp.ai/api/confluence/add/content/label` — Tool to add labels to a piece of content. Use after obtaining the content ID to tag pages or blog posts with metadata labels.
  - body: { id: string, labels: object[] }
- `POST https://api.mcp.ai/api/confluence/create/blogpost` — Tool to create a new Confluence blog post. Use when you need to publish content in a specific space. Response includes `data.id` for the post ID and `data._links.base` + `data._links.webui` for the UR
  - body: { body: object, title: string, status: string, spaceId: string }
- `POST https://api.mcp.ai/api/confluence/create/blogpost/property` — Tool to create a property on a specified blog post. Use when you need to add custom metadata to a blog post. Creates a new property with a key-value pair on a specified Confluence blog post. This allo
  - body: { id: string, key: string, value: string }
- `POST https://api.mcp.ai/api/confluence/create/content/property/for/whiteboard` — Tool to create a new content property on a whiteboard. Use when you need to attach custom metadata to a Confluence whiteboard.
  - body: { key: string, value: string, whiteboard_id: string }
- `POST https://api.mcp.ai/api/confluence/create/page` — Tool to create a new Confluence page in a specified space. Use when you need to create new documentation or content.
  - body: { body?: object, title: string, spaceId: string, parentId?: string }
- `POST https://api.mcp.ai/api/confluence/create/page/property` — Tool to create a property on a Confluence page. Use when you need to add custom metadata or settings to a page.
  - body: { key: string, value: string, page_id: string }
- `POST https://api.mcp.ai/api/confluence/create/private/space` — Tool to create a private Confluence space. Use when you need an isolated workspace viewable only by its creator.
  - body: { key: string, name: string, description?: object }
- `POST https://api.mcp.ai/api/confluence/create/space` — Tool to create a new Confluence space. Use when setting up a new knowledge area for organization. Must include a `plain.representation` field, e.g., `{"plain": {"representation": "plain", "value": "te
  - body: { key: string, name: string, type?: string, metadata?: string, description?: object }
- `POST https://api.mcp.ai/api/confluence/create/space/property` — Tool to create a new property on a Confluence space. Use after confirming the space ID when adding custom metadata.
  - body: { key: string, value: string, spaceId: string, version?: object }
- `POST https://api.mcp.ai/api/confluence/create/whiteboard` — Tool to create a new Confluence whiteboard. Use when you need to start a collaborative whiteboard session.
  - body: { title?: string, spaceId: string, parentId?: string }
- `POST https://api.mcp.ai/api/confluence/delete/blogpost/property` — Tool to delete a blog post property. Use when you need to remove custom metadata from a specified blog post.
  - body: { id: string, propertyId: string }
- `POST https://api.mcp.ai/api/confluence/delete/content/property/for/page/by/id` — Tool to delete a content property from a page by property ID. Use when you need to remove custom metadata from a page for cleanup or auditing. This action deletes a specified content property from a C
  - body: { pageId: string, propertyId: string }
- `POST https://api.mcp.ai/api/confluence/delete/content/property/for/whiteboard/by/id` — Tool to delete a content property from a whiteboard by property ID. Use when you need to remove custom metadata from a whiteboard.
  - body: { propertyId: string, whiteboardId: string }
- `POST https://api.mcp.ai/api/confluence/delete/page` — Tool to delete a Confluence page. Use with caution as this permanently removes the page and its content with no recovery option. In move or migration workflows, confirm all target pages were successfu
  - body: { id: string }
- `POST https://api.mcp.ai/api/confluence/delete/space` — Tool to delete a Confluence space by its key. Use when you need to permanently remove a space. Deletion runs as an asynchronous long-running task; this action waits (briefly) for it to finish and repo
  - body: { space_key: string }
- `POST https://api.mcp.ai/api/confluence/delete/space/property` — Tool to delete a space property. Use when you need to remove a property from a Confluence space after review.
  - body: { propertyId: string, spaceIdOrKey: string }
- `POST https://api.mcp.ai/api/confluence/get/attachment/labels` — Tool to list labels on an attachment. Use after confirming the attachment ID to fetch its labels.
  - body: { id: string, sort?: string, limit?: integer, cursor?: string, prefix?: string }
- `POST https://api.mcp.ai/api/confluence/get/attachments` — Tool to retrieve attachments of a Confluence page. Use after confirming page ID to list its attachments (supports pagination).
  - body: { limit?: integer, cursor?: string, pageId: string, mediaType?: string }
- `POST https://api.mcp.ai/api/confluence/get/audit/logs` — Tool to retrieve Confluence audit records. Use when you need to fetch and filter audit logs for compliance or troubleshooting.
  - body: { limit?: integer, start?: integer, endDate?: integer, startDate?: integer, searchString?: string }
- `POST https://api.mcp.ai/api/confluence/get/blog/posts` — Tool to retrieve a list of blog posts. Use when you need a paginated list of Confluence blog posts.
  - body: { limit?: integer, cursor?: string }
- `POST https://api.mcp.ai/api/confluence/get/blog/posts/for/label` — Tool to list all blog posts under a specific label. Use when you have a label ID and need to retrieve associated blog posts.
  - body: { id: string, limit?: integer, cursor?: string }
- `POST https://api.mcp.ai/api/confluence/get/blogpost/by/id` — Tool to retrieve a specific Confluence blog post by its ID. Use when you have a blog post ID and need detailed metadata and content.
  - body: { id: string }
- `POST https://api.mcp.ai/api/confluence/get/blogpost/labels` — Tool to retrieve labels of a specific Confluence blog post by ID. Use after obtaining the blog post ID to list its labels.
  - body: { id: string, limit?: integer, cursor?: string }
- `POST https://api.mcp.ai/api/confluence/get/blogpost/like/count` — Tool to get like count for a Confluence blog post. Use after confirming the blog post ID to retrieve total likes.
  - body: { id: string }
- `POST https://api.mcp.ai/api/confluence/get/blogpost/operations` — Tool to retrieve permitted operations for a Confluence blog post. Use after confirming the blog post ID to see allowed actions.
  - body: { id: string }
- `POST https://api.mcp.ai/api/confluence/get/blogpost/version/details` — Tool to retrieve details for a specific version of a blog post. Use when you have a blogpostId and versionNumber and need detailed metadata for that version.
  - body: { blogpostId: string, versionNumber: integer }
- `POST https://api.mcp.ai/api/confluence/get/blogpost/versions` — Tool to retrieve all versions of a specific blog post. Use when you have a blogpostId and need to list version numbers.
  - body: { limit?: integer, cursor?: string, blogpostId: string }
- `POST https://api.mcp.ai/api/confluence/get/child/pages` — Tool to list all direct child pages of a given Confluence page. Use when you have a parent page ID and need to discover its direct descendants. Response nests child page data under `data.data.results`
  - body: { id: string, sort?: string, limit?: integer, cursor?: string }
- `POST https://api.mcp.ai/api/confluence/get/content/properties/for/blog/post` — Tool to retrieve all content properties on a blog post. Use when you need to list metadata properties set on a specific Confluence blog post.
  - body: { limit?: integer, cursor?: string, blogpost_id: string }
- `POST https://api.mcp.ai/api/confluence/get/content/properties/for/page` — Tool to retrieve all content properties on a page. Use when you need to list metadata properties set on a specific Confluence page.
  - body: { limit?: integer, cursor?: string, page_id: string }
- `POST https://api.mcp.ai/api/confluence/get/content/restrictions` — Tool to retrieve restrictions on a Confluence content item. Use when you need to see who can view or edit a page or blog post.
  - body: { id: string, expand?: string[] }
- `POST https://api.mcp.ai/api/confluence/get/current/user` — Tool to get information about the currently authenticated user — always scoped to the account tied to the configured connection, not arbitrary users. Use CONFLUENCE_SEARCH_USERS to look up other users
- `POST https://api.mcp.ai/api/confluence/get/inline/comments/for/blog/post` — Tool to retrieve inline comments for a Confluence blog post. Use when you need inline comment details by blog post ID.
  - body: { id: string, sort?: string, limit?: integer, cursor?: string, body_format?: string }
- `POST https://api.mcp.ai/api/confluence/get/labels` — Tool to retrieve all labels in a Confluence site; use for label discovery when you need to list or page through labels. For label-based filtering, use CONFLUENCE_GET_LABELS_FOR_PAGE or CONFLUENCE_GET_
  - body: { limit?: integer, cursor?: string }
- `POST https://api.mcp.ai/api/confluence/get/labels/for/page` — Tool to retrieve labels of a specific Confluence page by ID. Labels are returned in `data.results[*].name` and are not available in CONFLUENCE_GET_PAGES responses. Use after obtaining the page ID to l
  - body: { id: string, limit?: integer, cursor?: string }
- `POST https://api.mcp.ai/api/confluence/get/labels/for/space` — Tool to list labels on a space. Use when you need to retrieve labels for a specific space.
  - body: { id: string, sort?: string, limit?: integer, cursor?: string, prefix?: string }
- `POST https://api.mcp.ai/api/confluence/get/labels/for/space/content` — Tool to list labels on all content in a space. Use when you need to retrieve or filter content labels by space, with pagination and optional prefix filtering. For label discovery across a space before
  - body: { id: string, limit?: integer, cursor?: string, prefix?: string }
- `POST https://api.mcp.ai/api/confluence/get/page/ancestors` — Tool to retrieve all ancestors for a given Confluence page by its ID. Use when you need the full page hierarchy.
  - body: { id: string, limit?: integer }
- `POST https://api.mcp.ai/api/confluence/get/page/by/id` — Tool to retrieve a Confluence page by its ID. Use when you have a page ID and need its detailed metadata and content. Response body is in `body.storage.value` as Confluence storage format (HTML); stri
  - body: { id: string, draft?: boolean, version?: integer }
- `POST https://api.mcp.ai/api/confluence/get/page/like/count` — Tool to get like count for a Confluence page. Use after confirming the page ID to retrieve total likes.
  - body: { id: string }
- `POST https://api.mcp.ai/api/confluence/get/page/versions` — Tool to retrieve all versions of a specific Confluence page. Use to audit edit history or to get the latest version.number before calling CONFLUENCE_UPDATE_PAGE — using a stale version.number causes a
  - body: { id: string, limit?: integer, cursor?: string }
- `POST https://api.mcp.ai/api/confluence/get/pages` — Tool to retrieve a paginated list of Confluence pages. Results are permission-scoped to the authenticated user; empty results may reflect access restrictions. Omitting filters like spaceId or status c
  - body: { sort?: string, limit?: integer, title?: string, cursor?: string, status?: string|string[], subtype?: string, space_id?: string|string[], body_format?: string }
- `POST https://api.mcp.ai/api/confluence/get/space/by/id` — Tool to retrieve a Confluence space by its ID. Use when you need detailed metadata of a specific space. Space names are non-unique; use the numeric spaceId or spaceKey from the response for stable ide
  - body: { id: string }
- `POST https://api.mcp.ai/api/confluence/get/space/contents` — Tool to retrieve content in a Confluence space. Use when you need to list pages or blogposts of a specific space key. Results are in data.results; follow response._links.next (cursor pagination) until
  - body: { type?: string, limit?: integer, cursor?: string, status?: string, spaceKey: string }
- `POST https://api.mcp.ai/api/confluence/get/space/properties` — Tool to get properties of a Confluence space. Use when you need to retrieve custom metadata or settings stored as space properties.
  - body: { id: string, key?: string[], limit?: integer, cursor?: string }
- `POST https://api.mcp.ai/api/confluence/get/spaces` — Tool to retrieve a paginated list of Confluence spaces with optional filtering. Paginate with `cursor`: pass the token from `data._links.next` (or the full next URL) as `cursor` to fetch the next page
  - body: { type?: string, label?: string[], limit?: integer, cursor?: string, expand?: string[], status?: string, spaceKey?: string[] }
- `POST https://api.mcp.ai/api/confluence/get/user/anonymous` — Tool to retrieve information about the anonymous user. Use when you need to obtain guest user details before unauthenticated interactions.
- `POST https://api.mcp.ai/api/confluence/search/content` — Searches one page of content from the Confluence v2 API with intelligent title ranking. Call this action again with the cursor from `_links.next` to search the next page. Since the native search endpo
  - body: { limit?: integer, query: string, start?: integer, cursor?: string, expand?: string, spaceKey?: string }
- `POST https://api.mcp.ai/api/confluence/search/users` — Searches for users using user-specific queries from the Confluence Query Language (CQL).
  - body: { limit?: integer, start?: integer, accountId?: string }
- `POST https://api.mcp.ai/api/confluence/update/blogpost` — Tool to update a Confluence blog post's title or content. Use when you need to modify an existing blog post. Ensure you have the latest version number before calling.
  - body: { id: string, body: object, title: string, status?: string, spaceId: string, version: object }
- `POST https://api.mcp.ai/api/confluence/update/blogpost/property` — Tool to update a property of a specified blog post. Use when you need to modify custom metadata on a blog post.
  - body: { id: string, value: string, propertyId: string }
- `POST https://api.mcp.ai/api/confluence/update/content/property/for/page/by/id` — Tool to update a content property on a Confluence page. Use when you need to modify an existing metadata property by its ID.
  - body: { value: string, pageId: string, propertyId: string }
- `POST https://api.mcp.ai/api/confluence/update/content/property/for/whiteboard/by/id` — Tool to update a content property on a whiteboard. Use when you need to modify metadata on a Confluence whiteboard.
  - body: { value: string, propertyId: string, whiteboardId: string }
- `POST https://api.mcp.ai/api/confluence/update/page` — Tool to update an existing Confluence page, replacing the entire page content. Use when you need to modify existing documentation or content.
  - body: { id: string, body: object, title: string, spaceId?: string, version: object }
- `POST https://api.mcp.ai/api/confluence/update/space/property` — Tool to update a space property. Use when you need to modify custom metadata stored on a Confluence space (requires fetching the current property version first).
  - body: { value: string, spaceId: string, propertyId: string }

## Example prompts
- "Crie uma página 'Onboarding' no espaço da Engenharia"
- "Busque páginas que mencionam 'política de férias'"
- "Liste as páginas atualizadas esta semana no espaço de Produto"

## More
- Page: https://mcp.ai/confluence
- Agent spec (llms.txt): https://mcp.ai/confluence/llms.txt
- Postman collection: https://mcp.ai/confluence/postman.json
