Planka看板
STDIOPlanka看板项目管理集成MCP服务器
Planka看板项目管理集成MCP服务器
Servidor MCP (Model Context Protocol) para integración completa con tableros Kanban de Planka. Permite gestionar proyectos, tableros, tarjetas, tareas y colaboración directamente desde aplicaciones MCP como Claude.
mcp_kanban_project_board_managerGestiona proyectos y tableros con operaciones CRUD completas.
action, id, projectId, name, position, boardIdmcp_kanban_list_managerAdministra listas dentro de los tableros.
action, id, boardId, name, positionmcp_kanban_card_managerGestión completa de tarjetas Kanban.
action, id, listId, name, description, tasksmcp_kanban_stopwatchControl de cronómetros para seguimiento de tiempo.
action, idmcp_kanban_label_managerGestión de etiquetas y categorización.
action, boardId, name, color, cardId, labelIdmcp_kanban_task_managerControl de tareas y subtareas.
action, cardId, name, tasks, isCompletedmcp_kanban_comment_managerSistema de comentarios para colaboración.
action, cardId, textmcp_kanban_membership_managerControl de acceso y permisos por tablero.
action, boardId, userId, role, canCommentnpm install
cp config.example.env .env # Editar .env con la configuración de su servidor Planka
npm run build
| Variable | Descripción | Por Defecto |
|---|---|---|
PLANKA_BASE_URL | URL base del servidor Planka | http://localhost:3000 |
PLANKA_AGENT_EMAIL | Email para autenticación | - |
PLANKA_AGENT_PASSWORD | Contraseña para autenticación | - |
PLANKA_ALLOW_INSECURE | Permitir conexiones HTTPS sin validar certificado SSL (útil para certificados autofirmados o internos) | false |
Claude Desktop:
%APPDATA%\Claude\claude_desktop_config.json~/Library/Application Support/Claude/claude_desktop_config.json~/.config/claude/claude_desktop_config.jsonConfiguración básica con NPX (RECOMENDADO):
{ "mcpServers": { "planka": { "command": "npx", "args": ["@grec0/mcp-planka@latest"], "env": { "PLANKA_BASE_URL": "http://localhost:3000", "PLANKA_AGENT_EMAIL": "[email protected]", "PLANKA_AGENT_PASSWORD": "demo" } } } }
⚠️ IMPORTANTE: Usar
@latestgarantiza que se use la versión más reciente del paquete. Sin esto, puedes obtener errores como "no server info found".
Para servidor Planka remoto:
{ "mcpServers": { "planka": { "command": "npx", "args": ["@grec0/mcp-planka@latest"], "env": { "PLANKA_BASE_URL": "https://tu-planka-server.com", "PLANKA_AGENT_EMAIL": "[email protected]", "PLANKA_AGENT_PASSWORD": "tu-contraseña" } } } }
Para servidor Planka con certificado SSL autofirmado o interno:
{ "mcpServers": { "planka": { "command": "npx", "args": ["@grec0/mcp-planka@latest"], "env": { "PLANKA_BASE_URL": "https://planka-interno.empresa.com", "PLANKA_AGENT_EMAIL": "[email protected]", "PLANKA_AGENT_PASSWORD": "tu-contraseña", "PLANKA_ALLOW_INSECURE": "true" } } } }
{ "mcpServers": { "planka": { "command": "node", "args": ["C:/ruta/a/kanban-mcp/dist/index.js"], "env": { "PLANKA_BASE_URL": "http://localhost:3000", "PLANKA_AGENT_EMAIL": "[email protected]", "PLANKA_AGENT_PASSWORD": "demo" } } } }
{ "mcpServers": { "planka": { "command": "npm", "args": ["run", "dev"], "cwd": "C:/ruta/a/kanban-mcp", "env": { "PLANKA_BASE_URL": "http://localhost:3000", "PLANKA_AGENT_EMAIL": "[email protected]", "PLANKA_AGENT_PASSWORD": "demo" } } } }
Después de configurar el MCP, puedes verificar que funciona correctamente:
mcp_kanban_project_board_manager(action: "get_projects", page: 1, perPage: 10)
mcp_kanban_project_board_manager(action: "create_board", projectId: "ID_DEL_PROYECTO", name: "Tablero de Prueba", position: 1)
Este error típicamente ocurre por:
Falta el @latest en la configuración:
// ❌ INCORRECTO "args": ["@grec0/mcp-planka"] // ✅ CORRECTO "args": ["@grec0/mcp-planka@latest"]
Variables de entorno faltantes o incorrectas:
"env": { "PLANKA_BASE_URL": "http://localhost:3000", "PLANKA_AGENT_EMAIL": "[email protected]", "PLANKA_AGENT_PASSWORD": "demo" }
El servidor Planka no está ejecutándose:
http://localhost:3000Caché de npm desactualizado:
npm cache clean --force npx @grec0/mcp-planka@latest
Si obtiene errores relacionados con certificados SSL autofirmados o internos:
Error: unable to verify the first certificate
Error: UNABLE_TO_VERIFY_LEAF_SIGNATURE
Solución: Habilitar conexiones inseguras agregando PLANKA_ALLOW_INSECURE: "true" a la configuración:
"env": { "PLANKA_BASE_URL": "https://planka-interno.empresa.com", "PLANKA_AGENT_EMAIL": "[email protected]", "PLANKA_AGENT_PASSWORD": "tu-contraseña", "PLANKA_ALLOW_INSECURE": "true" }
⚠️ ADVERTENCIA DE SEGURIDAD: Solo usar
PLANKA_ALLOW_INSECURE=trueen entornos internos de confianza. Esta opción desactiva la validación de certificados SSL y no debe usarse para servidores públicos en Internet.
PLANKA_BASE_URL sea correcta y accesible# Configuración básica PLANKA_BASE_URL=http://localhost:3000 PLANKA_AGENT_EMAIL=[email protected] PLANKA_AGENT_PASSWORD=demo # Opcional: Para certificados SSL autofirmados o internos PLANKA_ALLOW_INSECURE=true
Si necesita un servidor Planka local para desarrollo:
# Usando Docker Compose docker-compose up -d # O usando NPM scripts del proyecto npm run up # Acceder a Planka # URL: http://localhost:3000 # Credenciales por defecto: [email protected] / demo
npm run start
npm run dev
npm run inspector
# Iniciar contenedores Planka npm run up # Detener contenedores npm run down # Reiniciar contenedores npm run restart
// Listar proyectos mcp_kanban_project_board_manager({ action: "get_projects", page: 1, perPage: 10 }) // Crear tablero mcp_kanban_project_board_manager({ action: "create_board", projectId: "project_id", name: "Mi Nuevo Tablero", position: 1 })
// Crear tarjeta con tareas mcp_kanban_card_manager({ action: "create_with_tasks", listId: "list_id", name: "Nueva Funcionalidad", description: "Implementar nueva característica", tasks: ["Diseño", "Desarrollo", "Testing", "Deploy"], comment: "Tarjeta creada automáticamente" }) // Mover tarjeta entre listas mcp_kanban_card_manager({ action: "move", id: "card_id", listId: "new_list_id", position: 0 })
// Iniciar cronómetro mcp_kanban_stopwatch({ action: "start", id: "card_id" }) // Detener cronómetro mcp_kanban_stopwatch({ action: "stop", id: "card_id" })
Si obtiene errores de conexión:
PLANKA_BASE_URL sea correcta# Probar conectividad manualmente curl -X POST http://localhost:3000/api/access-tokens \ -H "Content-Type: application/json" \ -d '{"emailOrUsername": "[email protected]", "password": "demo"}'
Si NPX no encuentra el paquete:
# Limpiar cache de NPX npx clear-npx-cache # O instalar globalmente npm install -g @grec0/mcp-planka
# Verificar variables de entorno echo $PLANKA_BASE_URL echo $PLANKA_AGENT_EMAIL # No mostrar password en logs por seguridad
Verificar:
PLANKA_BASE_URL configurada correctamentePLANKA_AGENT_EMAIL y PLANKA_AGENT_PASSWORD válidosnpm test
git checkout -b feature/nueva-funcionalidad)git commit -am 'Add nueva funcionalidad')git push origin feature/nueva-funcionalidad)Este proyecto está licenciado bajo la Licencia MIT - ver el archivo LICENSE para detalles.