MCP Hub
Back to servers

ctk

Confluence CLI & MCP Server — dual-mode Go binary for Confluence Cloud with 7 tools, folder CRUD, page diff, and write gating.

glama
Stars
1
Forks
1
Updated
Mar 16, 2026
Validated
Apr 25, 2026

ctk — Confluence Toolkit

CI Go Report Card Documentation License

The most comprehensive dedicated Confluence MCP server in the open-source ecosystem. A dual-mode Go binary that works as both a rich CLI tool and an MCP server for AI agents.

8 MCP tools · Full CLI · Write gating · Single binary · Zero dependencies

Why ctk?

ctkmcp-atlassian (Python)
LanguageGo (single ~15MB binary)Python (pip install + deps)
Confluence tools8 dedicated tools~30 mixed Jira+Confluence
Startup~50ms~2s
Folder supportFull CRUDNone
Page diffLCS-based unified diffNone
Space createYes (V1 stable API)None
Write gatingCTK_ENABLE_WRITES env varNone
AuthClassic + scoped tokensClassic only

Features

  • Dual Mode — CLI for humans, MCP server for AI agents, same binary
  • V2 API First — Modern Confluence V2 REST API with cursor-based pagination, V1 fallback for CQL search and space create
  • Folder Support — Full CRUD for Confluence folders — the only dedicated Confluence MCP with folder operations
  • Page Diff — LCS-based unified diff between any two page versions
  • Write Gating — Mutation tools only registered when CTK_ENABLE_WRITES=true, safe read-only defaults
  • Token-Efficient — Consolidated action-based tools minimize schema overhead. XHTML↔Markdown conversion. ResponseFlattener strips metadata bloat
  • Markdown Interface — Agents send/receive markdown, ctk converts to/from Confluence XHTML storage format internally

Installation

# From source
git clone https://github.com/zach-snell/ctk.git && cd ctk
./install.sh  # builds and copies to ~/.local/bin

# Or build manually
go build -o ctk ./cmd/ctk

Pre-built binaries available on the Releases page.

Quick Start

# Authenticate
ctk auth

# List spaces
ctk spaces list

# Get a page
ctk pages get 12345

# Search with CQL
ctk search --cql "type = page AND space = DEV AND title ~ 'architecture'"

# Create a page (writes enabled)
ctk pages create --space-id 12345 --title "My Page" --body "# Hello World"

CLI Commands

ctk auth                    Authenticate with Confluence Cloud
ctk spaces                  List, get, create spaces
ctk pages                   Page CRUD, versions, diff, move
ctk folders                 Folder CRUD, children
ctk search                  CQL and quick text search

MCP Server

Stdio Transport (Claude Desktop, Cursor, OpenCode, etc.)

{
  "mcpServers": {
    "confluence": {
      "command": "/path/to/ctk",
      "args": ["mcp"],
      "env": {
        "CONFLUENCE_DOMAIN": "your-domain",
        "CONFLUENCE_EMAIL": "you@example.com",
        "CONFLUENCE_API_TOKEN": "your-api-token",
        "CTK_ENABLE_WRITES": "true"
      }
    }
  }
}

Streamable HTTP Transport

ctk mcp --port 8080

Environment Variables

VariableDescriptionRequired
CONFLUENCE_DOMAINAtlassian domain (e.g., acme for acme.atlassian.net)Yes
CONFLUENCE_EMAILEmail for the API tokenYes
CONFLUENCE_API_TOKENAtlassian API tokenYes
CONFLUENCE_TOKEN_TYPEclassic or scoped (auto-detected if omitted)No
CTK_ENABLE_WRITESSet to true to enable mutation toolsNo
CTK_DISABLED_TOOLSComma-separated tool names to hideNo

MCP Tools (8)

ToolActions
manage_spaceslist, get, get_by_key, create
manage_pagesget, get_by_title, list, get_children, get_ancestors, list_versions, diff, create, update, delete, move
manage_searchcql, quick
manage_labelslist, add, remove
manage_folderslist, get, get_children, create, update, delete
manage_commentslist_footer, list_inline, get_replies, add_footer, reply
manage_attachmentslist, download, upload, delete
manage_usersget_current, search

Security

Three-layer safety model:

  1. Token scopes — Atlassian scopes control which APIs the token can call (403 if missing)
  2. Write gating — Mutation tools only registered when CTK_ENABLE_WRITES=true (read-only by default)
  3. Tool denial — Explicitly hide tools: CTK_DISABLED_TOOLS="manage_folders,manage_labels"

Development

go test -race ./...          # Run tests
golangci-lint run ./...      # Lint
go build -o ctk ./cmd/ctk   # Build

License

Apache 2.0

Reviews

No reviews yet

Sign in to write a review