Confluence Cloud

Gestiona espacios, páginas y contenido de Confluence Cloud a través de una interfaz estandarizada para asistentes de IA.

Documentación

Servidor MCP de Confluence Cloud

Un servidor de Model Context Protocol (MCP) que proporciona herramientas para interactuar con Confluence Cloud. Este servidor permite a los asistentes de IA gestionar espacios, páginas y contenido de Confluence a través de una interfaz estandarizada.

CI/CD Pipeline

Características

  • Gestión de espacios
    • Listar espacios
    • Obtener detalles de un espacio
  • Operaciones con páginas
    • Crear, leer y actualizar páginas
    • Listar páginas en un espacio
    • Convertir el contenido de páginas del formato de almacenamiento de Confluence a Markdown
  • Búsqueda y etiquetas
    • Buscar contenido usando CQL
    • Gestionar etiquetas de páginas

Configuración

Opción 1: Usando Docker (Recomendado)

La forma más sencilla de usar este servidor es con la imagen de Docker preconstruida:

docker run --rm -i \
  -e CONFLUENCE_API_TOKEN=your-api-token \
  -e CONFLUENCE_EMAIL=your-email@domain.com \
  -e CONFLUENCE_DOMAIN=your-domain.atlassian.net \
  ghcr.io/aaronsb/confluence-cloud-mcp:latest

Opción 2: Compilación local

  1. Clonar el repositorio:
git clone https://github.com/aaronsb/confluence-cloud-mcp.git
cd confluence-cloud-mcp
  1. Compilar y ejecutar usando el script de compilación local:
# Build the Docker image
./scripts/build-local.sh

# Run the server
CONFLUENCE_API_TOKEN=your-token CONFLUENCE_EMAIL=your-email ./scripts/run-local.sh

Opción 3: Usando npx (directamente desde GitHub)

Ejecutar directamente desde GitHub sin instalación:

# With inline environment variables
CONFLUENCE_DOMAIN=your-domain.atlassian.net \
CONFLUENCE_EMAIL=your-email@domain.com \
CONFLUENCE_API_TOKEN=your-api-token \
npx github:aaronsb/confluence-cloud-mcp

# Or with an environment file
npx github:aaronsb/confluence-cloud-mcp --env /path/to/.env

Crear un archivo .env con tus credenciales de Confluence:

CONFLUENCE_DOMAIN=your-domain.atlassian.net
CONFLUENCE_EMAIL=your-email@domain.com
CONFLUENCE_API_TOKEN=your-api-token

Opción 4: Desde el código fuente

  1. Instalar dependencias:
npm install
  1. Configurar las variables de entorno: Crea un archivo .env con tus credenciales de Confluence:
CONFLUENCE_DOMAIN=your-domain.atlassian.net
CONFLUENCE_EMAIL=your-email@domain.com
CONFLUENCE_API_TOKEN=your-api-token
  1. Compilar el proyecto:
npm run build
  1. Ejecutar el servidor:
node build/index.js

Uso

El servidor se puede integrar con asistentes de IA compatibles con MCP añadiéndolo a su configuración de MCP:

Usando Claude Code CLI:

claude mcp add confluence-cloud npx -- github:aaronsb/confluence-cloud-mcp --env /path/to/.env

Usando npx en la configuración de MCP:

{
  "mcpServers": {
    "confluence": {
      "command": "npx",
      "args": ["github:aaronsb/confluence-cloud-mcp", "--env", "/path/to/.env"],
      "disabled": false,
      "autoApprove": []
    }
  }
}

Usando Docker:

{
  "mcpServers": {
    "confluence": {
      "command": "docker",
      "args": ["run", "--rm", "-i", "ghcr.io/aaronsb/confluence-cloud-mcp:latest"],
      "env": {
        "CONFLUENCE_DOMAIN": "your-domain.atlassian.net",
        "CONFLUENCE_EMAIL": "your-email@domain.com",
        "CONFLUENCE_API_TOKEN": "your-api-token"
      },
      "disabled": false,
      "autoApprove": []
    }
  }
}

Nota para asistentes de IA: Si eres un asistente de IA como Cline que intenta instalar este servidor MCP, consulta el archivo llms-install.md para obtener instrucciones detalladas de instalación.

Herramientas disponibles

Herramientas de espacios

  • list_confluence_spaces: Listar todos los espacios en Confluence
  • get_confluence_space: Obtener detalles de un espacio específico

Herramientas de páginas

  • list_confluence_pages: Listar páginas en un espacio
  • get_confluence_page: Obtener una página específica con su contenido (ahora incluye conversión a Markdown)
  • create_confluence_page: Crear una nueva página en un espacio
  • update_confluence_page: Actualizar una página existente

La herramienta get_confluence_page ahora convierte automáticamente el contenido del formato de almacenamiento de Confluence a Markdown, lo que facilita el trabajo con el contenido de las páginas. La conversión gestiona:

  • Encabezados (h1-h6)
  • Listas (ordenadas y no ordenadas)
  • Enlaces
  • Énfasis (negrita/cursiva)
  • Bloques de código
  • Tablas
  • Párrafos y saltos de línea

Herramientas de búsqueda y etiquetas

  • search_confluence_pages: Buscar contenido de Confluence usando CQL
  • get_confluence_labels: Obtener etiquetas de una página
  • add_confluence_label: Añadir una etiqueta a una página
  • remove_confluence_label: Eliminar una etiqueta de una página

Nota: Todos los nombres de herramientas siguen la convención de nomenclatura [verbo]confluence[sustantivo] para mantener coherencia y claridad.

Desarrollo

Este proyecto está escrito en TypeScript y sigue las convenciones del SDK de MCP para implementar las capacidades del servidor. El código base está organizado en:

  • src/client/ - Implementación del cliente de la API de Confluence
  • src/handlers/ - Manejadores de solicitudes de herramientas MCP
  • src/schemas/ - Esquemas JSON para las entradas de las herramientas
  • src/types/ - Definiciones de tipos de TypeScript
  • src/utils/ - Funciones de utilidad, incluida la conversión de formato de contenido

Canal de CI/CD

Este proyecto utiliza GitHub Actions para la integración y el despliegue continuos:

  • Pruebas automáticas y linting en pull requests
  • Compilación automática de imágenes de Docker en commits a la rama principal
  • Compilación de imágenes multiarquitectura (amd64, arm64)
  • Publicación de contenedores en GitHub Container Registry

Desarrollo local

Para el desarrollo local, utiliza los scripts proporcionados:

  • ./scripts/build-local.sh: Compila el proyecto y crea una imagen de Docker local
  • ./scripts/run-local.sh: Ejecuta la imagen de Docker local con tus credenciales

Licencia

MIT