Servidor MCP de Shortcut.com
Una implementación de un servidor de Protocolo de Contexto de Modelo (MCP) para acceder y buscar tickets en Shortcut.com.
Descripción general
Este proyecto implementa un servidor MCP que permite a Claude y a otros asistentes de IA compatibles con MCP interactuar con el sistema de gestión de tickets de Shortcut.com. Con esta integración, los asistentes de IA pueden:
Listado y búsqueda de historias (tickets) en Shortcut
Obtenga información detallada sobre historias específicas
Crea nuevas historias
Actualizar historias existentes
Añadir comentarios a las historias
Recuperar estados de flujo de trabajo y proyectos
Prerrequisitos
Python 3.10+
Token de API de Shortcut.com
Instalación
Clonar este repositorio:
git clone https://github.com/yourusername/mcp-server-shortcut.git cd mcp-server-shortcutCree un entorno virtual e instale dependencias:
# Using uv (recommended) curl -LsSf https://astral.sh/uv/install.sh | sh # For Mac/Linux uv venv source .venv/bin/activate # On Mac/Linux or .venv\Scripts\activate on Windows uv pip install -r requirements.txt # Using pip python -m venv venv source venv/bin/activate # On Mac/Linux or venv\Scripts\activate on Windows pip install -r requirements.txtCree un archivo
.enven el directorio raíz del proyecto con su token de API de acceso directo:SHORTCUT_API_TOKEN=your_token_here SERVER_PORT=5000 SERVER_HOST=0.0.0.0 DEBUG_MODE=True
Ejecución del servidor
Inicie el servidor MCP usando:
Configuración de Claude Desktop
Para utilizar este servidor MCP con Claude Desktop:
Editar el archivo de configuración de Claude Desktop:
Mac:
~/Library/Application Support/Claude/claude_desktop_config.jsonVentanas:
%APPDATA%\Claude\claude_desktop_config.json
Agregue la configuración del servidor MCP:
{ "mcpServers": { "shortcut": { "command": "python", "args": ["-m", "src.server"], "env": { "SHORTCUT_API_TOKEN": "your_token_here" } } } }Reinicie Claude Desktop.
Capacidades MCP disponibles
Recursos
shortcut://stories- Accede a una lista de historiasshortcut://story/{story_id}- Acceder a una historia específica
Herramientas
list_stories- Lista de historias con filtrado opcionalsearch_stories- Busca historias mediante consultas de textoget_story_details- Obtenga información detallada sobre una historia específicacreate_story- Crea una nueva historiaupdate_story- Actualizar una historia existenteadd_comment- Agregar un comentario a una historialist_workflow_states: enumera todos los estados del flujo de trabajolist_projects- Lista todos los proyectos
Indicaciones
create_bug_report- Generar una plantilla para informes de errorescreate_feature_request- Generar una plantilla para solicitudes de funciones
Estructura del proyecto
src/- Directorio del código fuenteserver.py- Implementación del servidor MCP principalconfig.py- Gestión de configuraciónshortcut_client.py- Cliente para la API de acceso directoutils.py- Funciones de utilidad y modelos de datos
requirements.txt- Dependencias del proyecto.env- Variables de entorno (no rastreadas en git)
Desarrollo
Añadiendo nuevas capacidades
Para agregar una nueva capacidad al servidor MCP:
Agregue cualquier método API nuevo a
shortcut_client.pyDefina modelos de Pydantic en
utils.pysi es necesarioImplemente la funcionalidad MCP usando decoradores en
server.py:Utilice
@mcp.resource()para recursos de solo lecturaUtilice
@mcp.tool()para acciones que puedan modificar datosUtilice
@mcp.prompt()para generar plantillas o texto estructurado
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
Licencia
This server cannot be installed