{"_id":"@alexsarrell/confluence-mcp-server","name":"@alexsarrell/confluence-mcp-server","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@alexsarrell/confluence-mcp-server","version":"0.1.0","description":"MCP server for self-hosted (on-prem) Confluence Server/Data Center via Personal Access Token","type":"module","main":"dist/index.js","bin":{"confluence-mcp":"dist/index.js"},"scripts":{"build":"tsup","dev":"tsx src/index.ts","start":"node dist/index.js","lint":"tsc --noEmit"},"keywords":["mcp","confluence","atlassian","ai"],"engines":{"node":">=20"},"license":"MIT","dependencies":{"@modelcontextprotocol/sdk":"^1.29.0","zod":"^3.25.0"},"devDependencies":{"@types/node":"^22.10.0","tsup":"^8.5.1","tsx":"^4.21.0","typescript":"^5.7.0"},"_id":"@alexsarrell/confluence-mcp-server@0.1.0","_nodeVersion":"22.17.1","_npmVersion":"10.9.2","dist":{"integrity":"sha512-LDeU3Husfcu9OOoTt+QI3J9FXh1NNg1mHDfI1sgoZdZDN9Sr0IUsCgwd/y9qSN3NRDgM068N33BIkfF1sUYYyQ==","shasum":"ea14115139281e9ab874e516826e17031ca3eb9f","tarball":"https://registry.npmjs.org/@alexsarrell/confluence-mcp-server/-/confluence-mcp-server-0.1.0.tgz","fileCount":5,"unpackedSize":123435,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIC+gsQYu/blTtbpyOr6HQIS+03M/TkrIH1U0UqLIau/5AiEAgDYUYhLEzlxgcJHh03zmOYwMVb8OLoPLPS1jORENf3Y="}]},"_npmUser":{"name":"alexsarrell","email":"alexsarrell.workspace@gmail.com"},"directories":{},"maintainers":[{"name":"alexsarrell","email":"alexsarrell.workspace@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/confluence-mcp-server_0.1.0_1783072698075_0.794753206884109"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-03T09:58:17.928Z","0.1.0":"2026-07-03T09:58:18.224Z","modified":"2026-07-03T09:58:18.407Z"},"maintainers":[{"name":"alexsarrell","email":"alexsarrell.workspace@gmail.com"}],"description":"MCP server for self-hosted (on-prem) Confluence Server/Data Center via Personal Access Token","keywords":["mcp","confluence","atlassian","ai"],"license":"MIT","readme":"# Confluence MCP Server\n\nMCP-сервер для **on-prem Confluence Server / Data Center** с авторизацией по **Personal Access Token (PAT)**.\nРаботает по протоколу [Model Context Protocol](https://modelcontextprotocol.io) через stdio.\n\nБазовый URL вашего инстанса задаётся через `CONFLUENCE_BASE_URL` (обязательный параметр).\n\n## Возможности\n\n15 инструментов поверх REST API `/rest/api`:\n\n| Tool | Назначение |\n|------|-----------|\n| `confluence_search` | Поиск по CQL (или по `text`/`spaceKey`/`type`) |\n| `confluence_get_page` | Страница по ID (тело: storage / text / none) |\n| `confluence_get_page_by_title` | Страница по точному заголовку (+ пространство) |\n| `confluence_get_page_children` | Дочерние страницы |\n| `confluence_create_page` | Создать страницу (storage/wiki, опц. `parentId`) |\n| `confluence_update_page` | Обновить страницу (версия инкрементируется сама) |\n| `confluence_delete_page` | Удалить страницу |\n| `confluence_list_spaces` | Список пространств |\n| `confluence_get_space` | Инфо о пространстве по ключу |\n| `confluence_get_comments` | Комментарии страницы |\n| `confluence_add_comment` | Добавить комментарий |\n| `confluence_get_labels` | Метки контента |\n| `confluence_add_label` | Добавить метки |\n| `confluence_get_attachments` | Вложения страницы (+ ссылки на скачивание) |\n| `confluence_whoami` | Текущий пользователь — проверка PAT и подключения |\n\n## Установка\n\nПакет опубликован в npm — отдельная установка не нужна, `npx` подтянет его сам\n(см. раздел «Подключение»). Для запуска из исходников / разработки:\n\n```bash\nnpm install\nnpm run build      # сборка в dist/ через tsup\nnpm run dev        # запуск без сборки (tsx)\n```\n\n## Конфигурация\n\nВсе настройки — через переменные окружения, удобнее всего через `.env` (см. `.env.example`):\n\n| Переменная | Обязательна | Описание |\n|------------|:-----------:|----------|\n| `CONFLUENCE_PAT` | да | Personal Access Token (`Authorization: Bearer`) |\n| `CONFLUENCE_BASE_URL` | да | URL инстанса без `/rest/api`, напр. `https://confluence.example.com` |\n| `CONFLUENCE_TIMEOUT_MS` | нет | Таймаут запроса, мс (по умолчанию 30000) |\n| `CONFLUENCE_INSECURE_TLS` | нет | `true` — отключить проверку TLS-сертификата (self-signed). Влияет на весь процесс — использовать осознанно |\n| `CONFLUENCE_MCP_ENV` | нет | Путь к `.env`, если он не в текущей директории |\n\n> `CONFLUENCE_TOKEN` принимается как синоним `CONFLUENCE_PAT`.\n\n`.env` ищется по пути из `CONFLUENCE_MCP_ENV`, затем `./.env` в рабочей директории.\nУже выставленные переменные окружения имеют приоритет и `.env` их не перетирает.\n\n### Где взять PAT\n\nВ Confluence: **Profile → Settings → Personal Access Tokens → Create token**.\nPAT наследует права вашей учётки.\n\n## Подключение к Claude Code / Claude Desktop\n\nТокен и URL передаются через `env` (тогда `.env` не нужен) либо через `.env` рядом,\nна который указывает `CONFLUENCE_MCP_ENV`.\n\n**Claude Code CLI** (`npx` подтянет пакет автоматически):\n\n```bash\nclaude mcp add confluence \\\n  -e CONFLUENCE_BASE_URL=https://confluence.example.com \\\n  -e CONFLUENCE_PAT=ваш-PAT \\\n  -- npx -y @alexsarrell/confluence-mcp-server\n```\n\n**Claude Desktop / JSON-конфиг:**\n\n```jsonc\n{\n  \"mcpServers\": {\n    \"confluence\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@alexsarrell/confluence-mcp-server\"],\n      \"env\": {\n        \"CONFLUENCE_BASE_URL\": \"https://confluence.example.com\",\n        \"CONFLUENCE_PAT\": \"ваш-PAT\"\n      }\n    }\n  }\n}\n```\n\nВариант с `.env` (положить `.env` рядом и указать путь к нему):\n\n```jsonc\n{\n  \"mcpServers\": {\n    \"confluence\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"@alexsarrell/confluence-mcp-server\"],\n      \"env\": {\n        \"CONFLUENCE_MCP_ENV\": \"/абсолютный/путь/до/.env\"\n      }\n    }\n  }\n}\n```\n\nИз локальной сборки (для разработки) — вместо `npx …` укажите собранный файл:\n`-- node /абсолютный/путь/до/dist/index.js`.\n\n## Заметки по форматам\n\n- Тело страниц Confluence хранится в **storage format** (XHTML). При создании/обновлении\n  по умолчанию `representation: storage`; доступен и `wiki` (вики-разметка).\n- `confluence_get_page` умеет вернуть тело как `storage` (как есть), `text` (очищенный текст)\n  или `none` (только метаданные).\n- Это API **Server / Data Center** (`/rest/api`), а не Confluence Cloud (`/wiki/api/v2`).\n\n## Проверка подключения\n\n```bash\n# задайте CONFLUENCE_BASE_URL и CONFLUENCE_PAT (в .env или окружении), затем:\nnode dist/index.js   # сервер стартует на stdio; в логах — baseURL\n```\n\nЧерез любой MCP-клиент вызовите `confluence_whoami` — вернётся текущий пользователь,\nесли PAT и URL корректны.\n","readmeFilename":"README.md","_rev":"1-6a923eab8603b00fcd9565e5f43f90d4"}