remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Supports configuration management for the Teamwork MCP server, allowing secure storage of API credentials and server settings.
Serves as the runtime environment for the MCP server that connects to Teamwork, enabling project management operations like retrieving, creating, updating, and deleting tasks.
Enables seamless interaction with the Teamwork project management API, providing tools for managing projects, tasks, subtasks, people, and generating reports like utilization data in various formats.
Trabajo en equipo MCP
Un servidor MCP que se conecta a la API de Teamwork y proporciona una interfaz simplificada para interactuar con proyectos y tareas de Teamwork.
Características
- Conectarse a la API de trabajo en equipo
- Recuperar proyectos y tareas
- Crear, actualizar y eliminar tareas
- Puntos finales de API RESTful
- Manejo y registro de errores
- Servidor MCP para integración con Cursor y otras aplicaciones
Prerrequisitos
- Node.js (v14.17 o superior, se recomienda 18+ o incluso mejor la última versión LTS)
- npm o hilo
- Cuenta de trabajo en equipo con acceso a API
Herramientas MCP de trabajo en equipo disponibles
Las siguientes herramientas están disponibles a través del servidor MCP:
Herramientas del proyecto
getProjects
- Obtener todos los proyectos de TeamworkgetCurrentProject
: obtiene detalles sobre el proyecto actualcreateProject
- Crea un nuevo proyecto en Teamwork
Herramientas de tareas
getTasks
- Obtener todas las tareas de TeamworkgetTasksByProjectId
: obtiene todas las tareas de un proyecto específico en TeamworkgetTaskListsByProjectId
: obtiene todas las listas de tareas de un proyecto específico en TeamworkgetTaskById
- Obtener una tarea específica por ID de TeamworkcreateTask
- Crea una nueva tarea en TeamworkcreateSubTask
: crea una nueva subtarea debajo de una tarea principal en TeamworkupdateTask
- Actualizar una tarea existente en TeamworkdeleteTask
- Eliminar una tarea de TeamworkgetTasksMetricsComplete
: obtiene el recuento total de tareas completadas en TeamworkgetTasksMetricsLate
: obtiene el recuento total de tareas atrasadas en TeamworkgetTaskSubtasks
: obtiene todas las subtareas para una tarea específica en TeamworkgetTaskComments
: obtener comentarios para una tarea específica de Teamwork
Herramientas para comentarios
createComment
- Crea un comentario relacionado con una tarea/mensaje/cuaderno de notas
Herramientas de la empresa
getCompanies
- Obtenga todas las empresas de Teamwork con filtrado opcionalgetCompanyById
- Obtener una empresa específica por IDcreateCompany
- Crea una nueva empresa en TeamworkupdateCompany
- Actualizar la información de una empresa existentedeleteCompany
- Eliminar una empresa de Teamwork
Herramientas para personas
getPeople
- Obtener todas las personas de TeamworkgetPersonById
- Obtener una persona específica por ID de TeamworkgetProjectPeople
: obtiene todas las personas asignadas a un proyecto específico desde TeamworkaddPeopleToProject
- Agregar personas a un proyecto específico en TeamworkdeletePerson
- Eliminar una persona de TeamworkupdatePerson
- Actualizar la información de una persona (zona horaria, nombre, correo electrónico, etc.)getProjectsPeopleMetricsPerformance
: obtenga métricas de rendimiento de las personasgetProjectsPeopleUtilization
- Obtener la utilización de las personasgetProjectPerson
- Obtener una persona específica en un proyecto
Herramientas de informes
getProjectsReportingUserTaskCompletion
: obtener el informe de finalización de tareas del usuariogetProjectsReportingUtilization
: obtenga un informe de utilización en varios formatos CSV y HTML
Herramientas de tiempo
getTime
- Obtener todas las entradas de tiempogetProjectsAllocationsTime
- Obtener el tiempo de asignación del proyectogetTimezones
: obtiene todas las zonas horarias disponibles en Teamwork (útil al actualizar las zonas horarias de los usuarios)
Instalación
- Clonar el repositorio:Copy
- dependencias:Copy
- Cree un archivo
.env
basado en el archivo.env.example
:Copy - Actualice el archivo
.env
con sus credenciales de Teamwork.
Configuración
Edite el archivo .env
para configurar la aplicación:
PORT
: El puerto en el que se ejecutará el servidor (predeterminado: 3000)NODE_ENV
: El entorno (desarrollo, producción, prueba)LOG_LEVEL
: Nivel de registro (información, error, depuración)TEAMWORK_DOMAIN
: Su nombre de dominio de Teamwork (por ejemplo, "su-empresa" para https://su-empresa.teamwork.com )TEAMWORK_USERNAME
: Su nombre de usuario de Teamwork (correo electrónico)TEAMWORK_PASSWORD
: Su contraseña de trabajo en equipo
Configuración de credenciales
Puede proporcionar sus credenciales de Trabajo en Equipo de tres maneras:
- Variables de entorno : establezca
TEAMWORK_DOMAIN
,TEAMWORK_USERNAME
yTEAMWORK_PASSWORD
en su entorno. - Archivo .env : crea un archivo
.env
con las variables requeridas como se muestra arriba. - Argumentos de la línea de comandos : Pasar credenciales al ejecutar la aplicación:
O utilizando la forma corta:
Filtrado de herramientas
Puede controlar qué herramientas están disponibles para el servidor MCP utilizando los siguientes argumentos de la línea de comandos:
- Lista de permitidos : solo exponer herramientas específicas:O utilizando la forma corta:CopyCopy
- Lista de denegación : exponer todas las herramientas excepto las especificadas:O utilizando la forma corta:CopyCopy
Filtrado de herramientas con grupos
Ahora puede especificar grupos de herramientas para el filtrado, lo que permite un control más flexible sobre las herramientas disponibles para el servidor MCP. Los grupos disponibles son:
- Proyectos : Incluye todas las herramientas relacionadas con el proyecto.
- Tareas : incluye todas las herramientas relacionadas con las tareas.
- Personas : incluye todas las herramientas relacionadas con las personas.
- Informes : incluye todas las herramientas relacionadas con los informes.
- Tiempo : Incluye todas las herramientas relacionadas con el tiempo.
- Comentarios : Incluye herramientas de comentarios específicas.
Uso de grupos en el filtrado de herramientas
Puede especificar estos grupos en las listas de permitidos o denegados para incluir o excluir todas las herramientas dentro de un grupo. Por ejemplo:
- Lista de permitidos con grupos : solo exponer grupos específicos de herramientas:O utilizando la forma corta:CopyCopy
- Lista de denegación con grupos : expone todas las herramientas excepto aquellas en grupos específicos:O utilizando la forma corta:CopyCopy
De forma predeterminada, todas las herramientas se exponen si no se proporciona la lista de permitidos ni la de denegados. Si se proporcionan ambas, la lista de permitidos tiene prioridad.
El filtrado de herramientas se aplica en dos niveles para mejorar la seguridad:
- Al enumerar las herramientas disponibles (las herramientas que no están en la lista de permitidos o en la lista de denegados no serán visibles)
- Al ejecutar llamadas de herramientas (los intentos de llamar a herramientas filtradas serán rechazados con un error)
Configuración de su proyecto de trabajo en equipo
Para asociar su solución actual con un proyecto de Teamwork, puede utilizar el siguiente método:
Uso de un archivo de configuración
Puedes crear un archivo .teamwork
en la raíz de tu proyecto con la siguiente estructura:
Este simple archivo de configuración asocia su solución con un proyecto específico de Teamwork; podremos usarlo para almacenar más detalles en el futuro.
Una vez configurado, el MCP podrá encontrar su proyecto Teamwork y asociarlo con su solución actual, reduciendo la cantidad de llamadas API necesarias para obtener el proyecto y las tareas relacionadas con la solución en la que está trabajando.
Uso
Uso de NPX (recomendado)
La forma más sencilla de utilizar Teamwork MCP es con npx:
También puedes pasar opciones de configuración:
Construyendo la aplicación
Nota: Esto no es necesario si solo desea utilizar el MCP, utilice las instrucciones NPX anteriores.
Construir la aplicación:
Esto compilará el código TypeScript listo para usarse como un servidor MCP
Ejecutándose como un servidor MCP
Para ejecutar como servidor MCP para la integración con Cursor y otras aplicaciones, si está utilizando el archivo .env para su nombre de usuario, contraseña y URL, o si los ha guardado en variables de entorno:
NOTA: No olvide cambiar los detalles de la unidad y la ruta según dónde haya guardado el repositorio.
O puedes pasarlos usando argumentos de línea:
También puedes utilizar la forma abreviada:
Uso del inspector MCP
Para ejecutar el inspector MCP para depuración:
Agregar a Cursor (y otros clientes MCP)
Para agregar este servidor MCP a Cursor:
Versiones anteriores a la 0.47
- Abra Configuración del cursor > Funciones > MCP
- Haga clic en "+ Agregar nuevo servidor MCP"
- Introduzca un nombre para el servidor (por ejemplo, "Teamwork API")
- Seleccione "stdio" como tipo de transporte
- Ingrese el comando para ejecutar el servidor:
npx @vizioz/teamwork-mcp
y agregue las credenciales y los argumentos de la línea de comando del dominio como se mencionó anteriormente.- Puede incluir opciones de filtrado de herramientas:
--allow=getProjects,getTasks
o--deny=deleteTask
- Puede incluir opciones de filtrado de herramientas:
- Haga clic en "Agregar"
Versiones posteriores a 0.47 (editar la configuración manualmente)
Si desea agregar los argumentos de permitir o denegar mencionados anteriormente, simplemente agréguelos de esta manera, puede agregar cualquiera de los ejemplos dados anteriormente, también puede agregar grupos y herramientas individuales como se muestra a continuación:
Las herramientas Teamwork MCP ahora estarán disponibles para el Agente de cursor en Composer.
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
Descargo de responsabilidad
Este proyecto no está afiliado, respaldado ni patrocinado por Teamwork.com. El nombre "Teamwork" en el nombre del paquete (@vizioz/teamwork-mcp) se usa únicamente con fines descriptivos para indicar compatibilidad con la API de Teamwork.com.
You must be authenticated.
Un servidor MCP que se conecta a la API de Teamwork y proporciona una interfaz simplificada para interactuar con proyectos y tareas de Teamwork.