Plain search finds the obvious pages; CQL is how you get to "pages of this type in this space modified since", and this passes it straight through. What comes back is markdown rather than Confluence storage XML, which is the difference between a model being able to read a page and merely receiving it.
A Confluence server covering spaces, pages and search across nine tools. Confluence's storage format is converted to readable markdown on the way out — tables, macros and attachments included — so page content arrives as something a model can work with.
- `confluence_get_spaces` lists accessible spaces; `confluence_get_space_by_key` returns one by key
- `confluence_get_pages_by_space` lists a space's pages; `confluence_get_page` returns one with its content
- `confluence_get_child_pages` walks the hierarchy below a page
- `confluence_search` takes plain text or full CQL, with space and content-type filters and result ordering
- `confluence_create_page`, `confluence_update_page` and `confluence_delete_page` for the write side
- Optional flags on reads — `includeContent`, `includeComments`, `expand` — so you pull only what you need
- Every response formatted as markdown with previews and direct links back to Confluence
No local install: your client runs `bunx -y @dsazz/mcp-confluence@latest`, or npx if you prefer. Three environment variables: `CONFLUENCE_HOST_URL` for your Atlassian domain, `CONFLUENCE_USER_EMAIL`, and `CONFLUENCE_API_TOKEN` created from the Atlassian API tokens page — paste the token exactly as given, without quotes. The token carries your own Confluence permissions, and `confluence_update_page` needs the current version number to write. Version 0.3.3, MIT licensed.
One command plus a key — bunx @dsazz/mcp-confluence@latest, then supply credentials
