mcp-server-polarion
Servidor MCP de Polarion ALM para Claude, Cursor y Copilot: lee y escribe documentos, elementos de trabajo y enlaces de trazabilidad.
Documentación
mcp-server-polarion
Habla con tu Polarion — la IA lee, escribe y reorganiza documentos, elementos de trabajo, ejecuciones de prueba y enlaces de trazabilidad.
Características · Inicio rápido · Herramientas · Ejemplos de prompts · Configuración
Un servidor de Model Context Protocol (MCP) para Polarion ALM, construido para instancias reales: cada escritura admite dry_run, las validaciones comprueban campos y valores de enumeración antes de confirmar cualquier cambio, y las solicitudes se limitan a un tope de velocidad que configuras para tu instancia, de modo que un asistente de IA pueda trabajar con datos de producción sin sorpresas.

Características
- 46 herramientas que cubren lectura y escritura en documentos, elementos de trabajo, ejecuciones de prueba, enlaces de trazabilidad, comentarios y adjuntos.
- Lectura — renderiza documentos como Markdown, busca con Lucene o SQL, recorre enlaces entrantes/salientes, resuelve opciones de enumeración.
- Escritura — crea y actualiza elementos de trabajo, documentos y ejecuciones de prueba, gestiona enlaces, reorganiza la estructura de documentos, publica comentarios.
- Escrituras seguras — cada herramienta de escritura admite
dry_run, y las validaciones previas a la escritura comprueban campos, valores de enumeración y destinos de enlaces antes de tocar Polarion. - Se lleva bien con tu servidor — las solicitudes se serializan y se limitan a un tope de velocidad configurable, con reintentos automáticos en respuestas 429/5xx.
- Diseñado para LLMs — asíncrono estricto, totalmente tipado, paginación en cada herramienta de listado, docstrings escritos como manual del asistente.
Inicio rápido
Requiere Polarion 2506+ y uv — consulta Requisitos previos. La vía más rápida — Claude Code:
claude mcp add mcp-server-polarion \
-e POLARION_URL=https://polarion.example.com \
-e POLARION_TOKEN=your-personal-access-token \
-- uvx mcp-server-polarion
Otros clientes (VS Code, Claude Desktop, Cursor) — consulta Configuración del cliente.
Herramientas
Lectura
| Herramienta | Descripción |
|---|---|
list_projects | Lista los proyectos accesibles |
list_documents | Lista los documentos de un proyecto |
list_work_items | Lista los elementos de trabajo de un proyecto (consulta Lucene/SQL) |
list_test_runs | Lista las ejecuciones de prueba de un proyecto (consulta Lucene, filtro de plantillas) |
get_test_run | Obtén los detalles de una ejecución de prueba, opcionalmente con el cuerpo del informe HTML sin procesar |
list_test_records | Lista los registros de ejecución de una ejecución de prueba, uno por iteración de caso de prueba |
get_test_record | Obtén el comentario de ejecución y la revisión del caso de prueba de un registro de prueba |
get_sql_query_recipes | Obtén recetas SQL listas para copiar y pegar para consultas avanzadas |
get_html_recipes | Obtén plantillas HTML de Polarion listas para copiar y pegar para ediciones de cuerpo HTML sin procesar |
get_document | Obtén los metadatos de un documento, opcionalmente con el HTML del cuerpo sin procesar |
read_document | Renderiza un documento de principio a fin como Markdown |
read_document_parts | Lista las partes estructurales de un documento con metadatos de elementos de trabajo incrustados |
get_work_item | Obtén los detalles de un elemento de trabajo con el cuerpo como HTML sin procesar |
read_work_item | Obtén los detalles de un elemento de trabajo con el cuerpo como Markdown |
list_work_item_links | Lista los enlaces salientes o entrantes de un elemento de trabajo |
list_document_attachments | Lista los adjuntos de un documento con nombre de archivo, tamaño y autor |
get_document_attachment_content | Obtén un adjunto de imagen para visualizarlo (mapa de bits como imagen, SVG como texto) |
list_work_item_attachments | Lista los adjuntos de un elemento de trabajo con nombre de archivo, tamaño y autor |
get_work_item_attachment_content | Obtén un adjunto de imagen de un elemento de trabajo para visualizarlo (mapa de bits como imagen, SVG como texto) |
list_test_record_attachments | Lista los adjuntos de un registro de prueba con nombre de archivo, tamaño y autor |
get_test_record_attachment_content | Obtén un adjunto de imagen de un registro de prueba para visualizarlo (mapa de bits como imagen, SVG como texto) |
list_document_comments | Lista los comentarios de un documento con relaciones de hilo |
list_work_item_comments | Lista los comentarios de un elemento de trabajo con relaciones de hilo |
list_document_enum_options | Resuelve los IDs de enumeración válidos para un campo de documento |
list_work_item_enum_options | Resuelve los IDs de enumeración válidos para un campo de elemento de trabajo |
Todas las herramientas de listado admiten paginación mediante los parámetros page_size (1–100) y page_number.
Escritura
| Herramienta | Descripción |
|---|---|
create_work_items | Crea uno o más elementos de trabajo en una sola solicitud |
update_work_items | Actualiza campos, cuerpo o estado de flujo de trabajo en uno o más elementos de trabajo |
create_document | Crea un nuevo documento |
update_document | Actualiza metadatos, cuerpo o estado de flujo de trabajo de un documento |
copy_document | Copia un documento a un nuevo nombre, espacio o proyecto |
create_test_runs | Crea una o más ejecuciones de prueba, opcionalmente desde una plantilla |
create_test_records | Registra los resultados de ejecución de casos de prueba en una ejecución de prueba |
update_test_runs | Actualiza título, estado, grupo o campos personalizados en una o más ejecuciones de prueba |
update_test_records | Actualiza resultado, comentario o enlace de defecto en uno o más registros de prueba de una ejecución de prueba |
create_work_item_links | Crea uno o más enlaces salientes desde un elemento de trabajo fuente |
update_work_item_link | Actualiza suspect / revision en un enlace saliente |
delete_work_item_links | Elimina uno o más enlaces salientes de un elemento de trabajo fuente |
move_work_item_to_document | Adjunta un elemento de trabajo a un documento en una posición elegida |
move_work_item_from_document | Desvincula un elemento de trabajo de su documento |
create_document_attachments | Sube uno o más archivos locales como adjuntos de documento |
create_work_item_attachments | Sube uno o más archivos locales como adjuntos de elemento de trabajo |
create_test_record_attachments | Sube uno o más archivos locales como adjuntos de registro de prueba |
create_document_comments | Añade uno o más comentarios o respuestas a un documento |
create_work_item_comments | Añade uno o más comentarios o respuestas a un elemento de trabajo |
update_document_comment | Resuelve o reabre un comentario de documento |
update_work_item_comment | Resuelve o reabre un comentario de elemento de trabajo |
Ejemplos de prompts
Descubrimiento y búsqueda
"Lista los proyectos a los que tengo acceso y luego muestra los documentos del proyecto MCPT con sus tipos."
"Lista los documentos del espacio 'Specifications' del proyecto MCPT."
"Encuentra todos los requisitos aprobados en el proyecto MCPT cuyo título comience con 'Auth' y muéstrame su documento propietario."
"Busca en el proyecto MCPT elementos de trabajo donde el campo personalizado 'verification_method' sea 'Test' — obtén primero las recetas SQL si necesitas una unión."
"Encuentra todos los elementos de trabajo en el módulo SRS del proyecto MCPT que se cambiaron en el último sprint."
Lectura y resumen
"Lee el documento SRS del proyecto MCPT y resume cada requisito abierto."
"Muéstrame el esquema estructural del documento SRS — encabezados y los elementos de trabajo debajo de cada uno."
"Lee el elemento de trabajo MCPT-042 como Markdown y explica qué pide."
"Muestra los enlaces salientes y entrantes de MCPT-042 y marca cualquier tarea hija que siga abierta."
"¿Qué requisitos del documento SRS no tienen un enlace inverso 'verifies' desde un caso de prueba?"
"Lista los hilos de comentarios abiertos en el documento SRS y quién inició cada uno."
Creación y edición
"Crea una tarea en el proyecto MCPT titulada 'Refactor authentication module' y enlázala a MCPT-042 como 'relates_to'."
"Crea tres elementos de trabajo de caso de prueba en el proyecto MCPT a partir de esta lista de verificación y enlaza cada uno a MCPT-042 como 'verifies'."
"Añade un nuevo requisito bajo la sección 3.2 del documento SRS con el cuerpo que acabo de redactar."
"Actualiza la descripción de MCPT-042 con el texto revisado que pegaré, manteniendo el formato existente."
"Añade un comentario en el documento SRS pidiendo al propietario que aclare la sección 4, luego responde al hilo T-12 marcándolo como resuelto."
"Crea una ejecución de prueba REG-SPRINT-7 en el proyecto MCPT desde la plantilla 'Regression' con estado 'open'."
Flujo de trabajo y reorganización
"Lista los valores de estado válidos para un defecto en el proyecto MCPT, luego mueve MCPT-077 a 'in_review'."
"Sube la prioridad de MCPT-042 a 90, establece la severidad en 'major' y aprueba el flujo de trabajo."
"Cambia MCPT-201 de tarea a requisito y vuelve a aplicar su estado anterior."
"Mueve MCPT-201 al documento SRS justo después de MCPT-150."
"Desvincula MCPT-077 de su documento para poder rehacerlo como tarea independiente."
"Marca el enlace 'blocks' de MCPT-042 a MCPT-099 como sospechoso, luego elimina el enlace obsoleto 'relates_to' a MCPT-010."
Configuración
Requisitos previos
Se requiere Polarion 2506 o superior. Las versiones anteriores carecen de los endpoints de la API REST de los que depende este servidor.
Este servidor se distribuye como un paquete de Python y requiere uv para ejecutarse.
Instala uv (si aún no está instalado):
# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
O mediante pip:
pip install uv
No se necesita ninguna otra instalación: uvx mcp-server-polarion descarga y ejecuta el servidor automáticamente.
Variables de entorno
| Variable | Descripción | Ejemplo |
|---|---|---|
POLARION_URL | URL base de tu instancia de Polarion | https://polarion.example.com |
POLARION_TOKEN | Token de acceso personal para autenticación | your-personal-access-token |
POLARION_MAX_REQUESTS_PER_SECOND | Opcional. Límite de velocidad de solicitudes del lado del cliente: auméntalo para igualar el límite de tu despliegue, o establece 0 para desactivar el ritmo. Las escrituras mantienen una pausa extra fija de todos modos (predeterminado: 1) | 1 |
Para generar un token de acceso personal, abre Polarion, haz clic en tu nombre de usuario y ve a Mi cuenta → Tokens de acceso personal.
Configuración del cliente
VS Code (GitHub Copilot)
Añade a .vscode/mcp.json:
{
"servers": {
"mcp-server-polarion": {
"type": "stdio",
"command": "uvx",
"args": ["mcp-server-polarion"],
"env": {
"POLARION_URL": "https://polarion.example.com",
"POLARION_TOKEN": "your-personal-access-token"
}
}
}
}
Claude Desktop
Añade a claude_desktop_config.json:
{
"mcpServers": {
"mcp-server-polarion": {
"command": "uvx",
"args": ["mcp-server-polarion"],
"env": {
"POLARION_URL": "https://polarion.example.com",
"POLARION_TOKEN": "your-personal-access-token"
}
}
}
}
Cursor
Añade a la configuración MCP de Cursor:
{
"mcpServers": {
"mcp-server-polarion": {
"command": "uvx",
"args": ["mcp-server-polarion"],
"env": {
"POLARION_URL": "https://polarion.example.com",
"POLARION_TOKEN": "your-personal-access-token"
}
}
}
}
Claude Code
Regístrate mediante el comando claude mcp add:
claude mcp add mcp-server-polarion \
-e POLARION_URL=https://polarion.example.com \
-e POLARION_TOKEN=your-personal-access-token \
-- uvx mcp-server-polarion
Contribuciones
Los informes de errores y las solicitudes de extracción son bienvenidos: consulta CONTRIBUTING.md para conocer las convenciones de ramas, commits y revisiones.