Asana

Interactuar con la API de Asana para gestionar tareas, proyectos y espacios de trabajo.

Documentación

Servidor MCP para Asana

npm version

Esta implementación del servidor de Protocolo de Contexto de Modelo (MCP) para Asana te permite hablar con la API de Asana desde un cliente MCP, como la aplicación de escritorio Claude de Anthropic, y muchos más.

Más detalles sobre MCP aquí:

mcp-server-asana MCP server

Variables de Entorno

  • ASANA_ACCESS_TOKEN: (Requerido) Tu token de acceso de Asana
  • READ_ONLY_MODE: (Opcional) Establécelo en 'true' para deshabilitar todas las operaciones de escritura. En este modo:
    • Las herramientas que modifican datos de Asana (crear, actualizar, eliminar) estarán deshabilitadas
    • El prompt create-task estará deshabilitado
    • Solo las operaciones de lectura estarán disponibles Esto es útil para pruebas o cuando deseas asegurarte de que no se puedan realizar cambios en tu espacio de trabajo de Asana.

Uso

En la herramienta de IA de tu elección (ej: Claude Desktop) pregunta algo sobre tareas, proyectos, espacios de trabajo y/o comentarios de asana. Mencionar la palabra "asana" aumentará la probabilidad de que el LLM elija la herramienta correcta.

Ejemplo:

¿Cuántas tareas de asana sin terminar tenemos en nuestro proyecto Sprint 30?

Otro ejemplo:

Claude Desktop Example

Herramientas

  1. asana_list_workspaces
    • Lista todos los espacios de trabajo disponibles en Asana
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Lista de espacios de trabajo
  2. asana_search_projects
    • Busca proyectos en Asana usando coincidencia de patrones de nombre
    • Entrada requerida:
      • workspace (string): El espacio de trabajo en el que buscar
      • name_pattern (string): Expresión regular para coincidir con nombres de proyectos
    • Entrada opcional:
      • archived (boolean): Solo devolver proyectos archivados (predeterminado: false)
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Lista de proyectos coincidentes
  3. asana_search_tasks
    • Busca tareas en un espacio de trabajo con opciones de filtrado avanzadas
    • Entrada requerida:
      • workspace (string): El espacio de trabajo en el que buscar
    • Entrada opcional:
      • text (string): Texto para buscar en nombres y descripciones de tareas
      • resource_subtype (string): Filtrar por subtipo de tarea (p. ej., milestone)
      • completed (boolean): Filtrar tareas completadas
      • is_subtask (boolean): Filtrar subtareas
      • has_attachment (boolean): Filtrar tareas con archivos adjuntos
      • is_blocked (boolean): Filtrar tareas con dependencias incompletas
      • is_blocking (boolean): Filtrar tareas incompletas con dependientes
      • assignee, projects, sections, tags, teams y muchos otros filtros avanzados
      • sort_by (string): Ordenar por due_date, created_at, completed_at, likes, modified_at (predeterminado: modified_at)
      • sort_ascending (boolean): Ordenar en orden ascendente (predeterminado: false)
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
      • custom_fields (object): Objeto que contiene filtros de campos personalizados
    • Devuelve: Lista de tareas coincidentes
  4. asana_get_task
    • Obtiene información detallada sobre una tarea específica
    • Entrada requerida:
      • task_id (string): El ID de la tarea a recuperar
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información detallada de la tarea
  5. asana_create_task
    • Crea una nueva tarea en un proyecto
    • Entrada requerida:
      • project_id (string): El proyecto en el que crear la tarea
      • name (string): Nombre de la tarea
    • Entrada opcional:
      • notes (string): Descripción de la tarea
      • html_notes (string): Descripción de la tarea con formato similar a HTML
      • due_on (string): Fecha de vencimiento en formato YYYY-MM-DD
      • assignee (string): Asignado (puede ser 'me' o un ID de usuario)
      • followers (array de strings): Matriz de IDs de usuario para agregar como seguidores
      • parent (string): El ID de la tarea principal bajo la cual establecer esta tarea
      • projects (array de strings): Matriz de IDs de proyecto para agregar esta tarea
      • resource_subtype (string): El tipo de tarea (default_task o milestone)
      • custom_fields (object): Objeto que mapea strings de GID de campos personalizados a sus valores
    • Devuelve: Información de la tarea creada
  6. asana_get_task_stories
    • Obtiene comentarios e historias para una tarea específica
    • Entrada requerida:
      • task_id (string): El ID de la tarea para obtener historias
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Lista de historias/comentarios de la tarea
  7. asana_update_task
    • Actualiza los detalles de una tarea existente
    • Entrada requerida:
      • task_id (string): El ID de la tarea a actualizar
    • Entrada opcional:
      • name (string): Nuevo nombre para la tarea
      • notes (string): Nueva descripción para la tarea
      • html_notes (string): Descripción de la tarea con formato similar a HTML (subconjunto de etiquetas HTML compatibles)
      • due_on (string): Nueva fecha de vencimiento en formato YYYY-MM-DD
      • assignee (string): Nuevo asignado (puede ser 'me' o un ID de usuario)
      • followers (array): Matriz de IDs de usuario para agregar como seguidores
      • parent (string): El ID de la tarea principal bajo la cual mover esta tarea
      • completed (boolean): Marcar la tarea como completada o no
      • resource_subtype (string): El tipo de tarea (default_task o milestone)
      • custom_fields (object): Objeto que mapea strings de GID de campos personalizados a sus valores
    • Devuelve: Información de la tarea actualizada
  8. asana_get_project
    • Obtiene información detallada sobre un proyecto específico
    • Entrada requerida:
      • project_id (string): El ID del proyecto a recuperar
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información detallada del proyecto
  9. asana_get_project_task_counts
    • Obtiene el número de tareas en un proyecto
    • Entrada requerida:
      • project_id (string): El ID del proyecto para obtener el conteo de tareas
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información del conteo de tareas
  10. asana_get_project_sections
    • Obtiene secciones en un proyecto
    • Entrada requerida:
      • project_id (string): El ID del proyecto para obtener secciones
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Lista de secciones del proyecto
  11. asana_create_task_story
    • Crea un comentario o historia en una tarea
    • Entrada requerida:
      • task_id (string): El ID de la tarea para agregar la historia
      • text (string): El contenido de texto de la historia/comentario
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información de la historia creada
  12. asana_add_task_dependencies
    • Establece dependencias para una tarea
    • Entrada requerida:
      • task_id (string): El ID de la tarea para agregar dependencias
      • dependencies (array de strings): Matriz de IDs de tareas de las que depende esta tarea
    • Devuelve: Dependencias de tarea actualizadas
  13. asana_add_task_dependents
    • Establece dependientes para una tarea (tareas que dependen de esta tarea)
    • Entrada requerida:
      • task_id (string): El ID de la tarea para agregar dependientes
      • dependents (array de strings): Matriz de IDs de tareas que dependen de esta tarea
    • Devuelve: Dependientes de tarea actualizados
  14. asana_create_subtask
    • Crea una nueva subtarea para una tarea existente
    • Entrada requerida:
      • parent_task_id (string): El ID de la tarea principal bajo la cual crear la subtarea
      • name (string): Nombre de la subtarea
    • Entrada opcional:
      • notes (string): Descripción de la subtarea
      • due_on (string): Fecha de vencimiento en formato YYYY-MM-DD
      • assignee (string): Asignado (puede ser 'me' o un ID de usuario)
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información de la subtarea creada
  15. asana_get_multiple_tasks_by_gid
    • Obtiene información detallada sobre múltiples tareas por sus GIDs (máximo 25 tareas)
    • Entrada requerida:
      • task_ids (array de strings o string separado por comas): GIDs de tareas a recuperar (máx. 25)
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Lista de información detallada de tareas
  16. asana_get_project_status
    • Obtiene una actualización de estado de un proyecto
    • Entrada requerida:
      • project_status_gid (string): El GID del estado del proyecto a recuperar
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información del estado del proyecto
  17. asana_get_project_statuses
    • Obtiene todas las actualizaciones de estado para un proyecto
    • Entrada requerida:
      • project_gid (string): El GID del proyecto para obtener estados
    • Entrada opcional:
      • limit (number): Resultados por página (1-100)
      • offset (string): Token de desplazamiento de paginación
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Lista de actualizaciones de estado del proyecto
  18. asana_create_project_status
    • Crea una nueva actualización de estado para un proyecto
    • Entrada requerida:
      • project_gid (string): El GID del proyecto para crear el estado
      • text (string): El contenido de texto de la actualización de estado
    • Entrada opcional:
      • color (string): El color del estado (green, yellow, red)
      • title (string): El título de la actualización de estado
      • html_text (string): Texto con formato HTML para la actualización de estado
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información del estado del proyecto creado
  19. asana_delete_project_status
    • Elimina una actualización de estado de un proyecto
    • Entrada requerida:
      • project_status_gid (string): El GID del estado del proyecto a eliminar
    • Devuelve: Confirmación de eliminación
  20. asana_set_parent_for_task
    • Establece el padre de una tarea y posiciona la subtarea entre las otras subtareas de ese padre
    • Entrada requerida:
      • task_id (string): El ID de la tarea sobre la que operar
      • data (object):
        • parent (string): El nuevo padre de la tarea, o null para sin padre
    • Entrada opcional:
      • insert_after (string): Una subtarea del padre para insertar la tarea después, o null para insertar al principio de la lista
      • insert_before (string): Una subtarea del padre para insertar la tarea antes, o null para insertar al final de la lista
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información de la tarea actualizada
  21. asana_get_tag
    • Obtiene información detallada sobre una etiqueta específica
    • Entrada requerida:
      • tag_gid (string): Identificador único global para la etiqueta
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información detallada de la etiqueta
  22. asana_get_tags_for_task
    • Obtiene las etiquetas de una tarea
    • Entrada requerida:
      • task_gid (string): La tarea sobre la que operar
    • Entrada opcional:
      • limit (number): Resultados por página. El número de objetos a devolver por página. El valor debe estar entre 1 y 100.
      • offset (string): Token de desplazamiento. Un desplazamiento a la siguiente página devuelta por la API.
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Lista de etiquetas asociadas con la tarea
  23. asana_get_tasks_for_tag
    • Obtiene tareas para una etiqueta específica
    • Entrada requerida:
      • tag_gid (string): El GID de la etiqueta para recuperar tareas
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
      • opt_pretty (boolean): Proporciona la respuesta en un formato 'bonito'
      • limit (integer): El número de objetos a devolver por página. El valor debe estar entre 1 y 100.
      • offset (string): Un desplazamiento a la siguiente página devuelta por la API.
    • Devuelve: Lista de tareas para la etiqueta especificada
  24. asana_get_tags_for_workspace
    • Obtiene etiquetas en un espacio de trabajo
    • Entrada requerida:
      • workspace_gid (string): Identificador único global para el espacio de trabajo u organización
    • Entrada opcional:
      • limit (integer): Resultados por página. El número de objetos a devolver por página. El valor debe estar entre 1 y 100.
      • offset (string): Token de desplazamiento. Un desplazamiento a la siguiente página devuelta por la API.
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Lista de etiquetas en el espacio de trabajo
  25. asana_update_tag
    • Actualiza una etiqueta existente
    • Entrada requerida:
      • tag_gid (string): Identificador único global para la etiqueta
    • Entrada opcional:
      • name (string): Nombre de la etiqueta
      • color (string): Color de la etiqueta. Puede ser uno de: dark-pink, dark-green, dark-blue, dark-red, dark-teal, dark-brown, dark-orange, dark-purple, dark-warm-gray, light-pink, light-green, light-blue, light-red, light-teal, light-brown, light-orange, light-purple, light-warm-gray
      • notes (string): Notas sobre la etiqueta
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información de la etiqueta actualizada
  26. asana_delete_tag
    • Elimina una etiqueta
    • Entrada requerida:
      • tag_gid (string): Identificador único global para la etiqueta
    • Devuelve: Confirmación de eliminación
  27. asana_create_tag_for_workspace
    • Crea una nueva etiqueta en un espacio de trabajo
    • Entrada requerida:
      • workspace_gid (string): Identificador único global para el espacio de trabajo u organización
  • name (string): Nombre de la etiqueta
    • Entrada opcional:
      • color (string): Color de la etiqueta. Puede ser uno de: dark-pink, dark-green, dark-blue, dark-red, dark-teal, dark-brown, dark-orange, dark-purple, dark-warm-gray, light-pink, light-green, light-blue, light-red, light-teal, light-brown, light-orange, light-purple, light-warm-gray
      • notes (string): Notas sobre la etiqueta
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información de la etiqueta creada
  1. asana_add_tag_to_task
    • Agregar una etiqueta a una tarea
    • Entrada requerida:
      • task_gid (string): El GID de la tarea a la que se agregará la etiqueta
      • tag_gid (string): El GID de la etiqueta que se agregará a la tarea
    • Devuelve: Respuesta de éxito
  2. asana_remove_tag_from_task
    • Eliminar una etiqueta de una tarea
    • Entrada requerida:
      • task_gid (string): El GID de la tarea de la que se eliminará la etiqueta
      • tag_gid (string): El GID de la etiqueta que se eliminará de la tarea
    • Devuelve: Respuesta de éxito
  3. asana_add_project_to_task
    • Agregar una tarea existente a un proyecto
    • Entrada requerida:
      • task_id (string): El ID de la tarea que se agregará al proyecto
      • project_id (string): El ID del proyecto al que se agregará la tarea
    • Entrada opcional:
      • section (string): El ID de la sección dentro del proyecto a la que se agregará la tarea
      • insert_after (string): Un ID de tarea después del cual insertar esta tarea. Como máximo se debe especificar uno de insert_before, insert_after o section.
      • insert_before (string): Un ID de tarea antes del cual insertar esta tarea. Como máximo se debe especificar uno de insert_before, insert_after o section.
    • Devuelve: Mensaje de éxito confirmando que la tarea fue agregada al proyecto
    • Notas: Si no se proporcionan argumentos de posicionamiento, la tarea se agregará al final del proyecto
  4. asana_remove_project_from_task
    • Eliminar una tarea de un proyecto
    • Entrada requerida:
      • task_id (string): El ID de la tarea que se eliminará del proyecto
      • project_id (string): El ID del proyecto del que se eliminará la tarea
    • Devuelve: Mensaje de éxito confirmando que la tarea fue eliminada del proyecto
    • Notas: La tarea seguirá existiendo en el sistema, pero ya no estará en el proyecto
  5. asana_delete_task
    • Eliminar una tarea permanentemente
    • Entrada requerida:
      • task_id (string): El ID de la tarea a eliminar
    • Devuelve: Mensaje de éxito confirmando que la tarea fue eliminada
    • Notas: Esta acción no se puede deshacer. La tarea se eliminará permanentemente.
  6. asana_create_project
    • Crear un nuevo proyecto en un espacio de trabajo o equipo
    • Entrada requerida:
      • workspace (string): El GID del espacio de trabajo en el que se creará el proyecto
      • name (string): Nombre del proyecto
    • Entrada opcional:
      • team (string): El GID del equipo (requerido para espacios de trabajo de organización)
      • notes (string): Descripción o notas para el proyecto
      • color (string): Color del proyecto (por ejemplo, dark-pink, dark-green, light-blue)
      • privacy_setting (string): Configuración de privacidad (public_to_workspace, private_to_team, private)
      • default_view (string): Vista predeterminada (list, board, calendar, timeline)
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: El objeto de proyecto creado
  7. asana_update_project
    • Actualizar los detalles de un proyecto (nombre, descripción, etc.)
    • Entrada requerida:
      • project_id (string): El GID del proyecto a actualizar
    • Entrada opcional:
      • name (string): Nuevo nombre para el proyecto
      • notes (string): Nueva descripción en texto plano para el proyecto
      • html_notes (string): Nueva descripción con formato HTML (debe ser XML válido de Asana)
      • color (string): Color del proyecto (por ejemplo, dark-pink, dark-green, light-blue)
      • privacy_setting (string): Configuración de privacidad (public_to_workspace, private_to_team, private)
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información del proyecto actualizada
  8. asana_create_section
    • Crear una nueva sección en un proyecto
    • Entrada requerida:
      • project_id (string): El GID del proyecto en el que se creará la sección
      • name (string): Nombre de la nueva sección
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información de la sección creada
  9. asana_update_section
    • Actualizar una sección (renombrarla)
    • Entrada requerida:
      • section_id (string): El GID de la sección a actualizar
      • name (string): Nuevo nombre para la sección
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
    • Devuelve: Información de la sección actualizada
  10. asana_delete_section
    • Eliminar una sección de un proyecto
    • Entrada requerida:
      • section_id (string): El GID de la sección a eliminar
    • Devuelve: Confirmación de eliminación
  11. asana_add_task_to_section
    • Mover una tarea a una sección dentro de su proyecto
    • Entrada requerida:
      • section_id (string): El GID de la sección a la que se agregará la tarea
      • task_id (string): El GID de la tarea a mover
    • Entrada opcional:
      • insert_before (string): Un GID de tarea antes del cual insertar la tarea
      • insert_after (string): Un GID de tarea después del cual insertar la tarea
    • Devuelve: Confirmación de éxito
  12. asana_get_subtasks
    • Obtener todas las subtareas de una tarea determinada. Devuelve una representación compacta de cada subtarea.
    • Entrada requerida:
      • task_gid (string): El GID de la tarea principal
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir (por ejemplo, 'name,completed,assignee,due_on')
    • Devuelve: Matriz de objetos de subtarea
  13. asana_get_tasks_for_project
    • Obtener todas las tareas en un proyecto. Use esto en lugar de search_tasks cuando necesite listar tareas en un proyecto específico. Funciona en planes gratuitos de Asana (a diferencia de search_tasks que requiere premium). Admite paginación y selección de campos opcionales.
    • Entrada requerida:
      • project_id (string): El GID del proyecto del que se obtendrán las tareas
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
      • limit (number): Resultados por página (1-100)
      • offset (string): Token de desplazamiento de paginación de una respuesta anterior
    • Devuelve: Matriz de objetos de tarea
  14. asana_get_my_tasks
    • Obtener tareas de la lista 'Mis tareas' del usuario autenticado en un espacio de trabajo
    • Entrada requerida:
      • workspace (string): El GID del espacio de trabajo del que se obtendrán Mis tareas
    • Entrada opcional:
      • opt_fields (string): Lista separada por comas de campos opcionales a incluir
      • completed_since (string): Solo devolver tareas completadas desde este momento (ISO 8601). Use 'now' para devolver solo tareas incompletas.
    • Devuelve: Lista de tareas de la lista Mis tareas del usuario

Prompts

  1. task-summary

    • Obtén un resumen y actualización de estado para una tarea basada en sus notas, campos personalizados y comentarios
    • Entrada requerida:
      • task_id (string): El ID de la tarea para obtener el resumen
    • Devuelve: Un prompt detallado con instrucciones para generar un resumen de tarea
  2. task-completeness

    • Analiza si la descripción de una tarea contiene todos los detalles necesarios para su finalización
    • Entrada requerida:
      • task_id (string): El ID o URL de la tarea a analizar
    • Devuelve: Un prompt detallado con instrucciones para analizar la completitud de la tarea
  3. create-task

    • Crea una nueva tarea con los detalles especificados
    • Entrada requerida:
      • project_name (string): El nombre del proyecto de Asana donde se debe crear la tarea
      • title (string): El título de la tarea
    • Entrada opcional:
      • notes (string): Notas o descripción para la tarea
      • due_date (string): Fecha de vencimiento de la tarea (formato YYYY-MM-DD)
    • Devuelve: Un prompt detallado con instrucciones para crear una tarea completa

Resources

  1. Espacios de trabajo - asana://workspace/{workspace_gid}

    • Representación de los espacios de trabajo de Asana como recursos
    • Cada espacio de trabajo se expone como un recurso separado
    • Formato URI: asana://workspace/{workspace_gid}
    • Devuelve: Objeto JSON con detalles del espacio de trabajo, incluyendo:
      • name: Nombre del espacio de trabajo (string)
      • id: ID global del espacio de trabajo (string)
      • type: Tipo de recurso (string)
      • is_organization: Si el espacio de trabajo es una organización (boolean)
      • email_domains: Lista de dominios de correo asociados con el espacio de trabajo (string[])
    • Tipo MIME: application/json
  2. Proyectos - asana://project/{project_gid}

    • Recurso plantilla para obtener detalles del proyecto por GID
    • Formato URI: asana://project/{project_gid}
    • Devuelve: Objeto JSON con detalles del proyecto, incluyendo:
      • name: Nombre del proyecto (string)
      • id: ID global del proyecto (string)
      • type: Tipo de recurso (string)
      • archived: Si el proyecto está archivado (boolean)
      • public: Si el proyecto es público (boolean)
      • notes: Descripción/notas del proyecto (string)
      • color: Color del proyecto (string)
      • default_view: Tipo de vista predeterminada (string)
      • due_date, due_on, start_on: Información de fecha del proyecto (string)
      • workspace: Objeto que contiene información del espacio de trabajo
      • team: Objeto que contiene información del equipo
      • sections: Arreglo de objetos de sección en el proyecto
      • custom_fields: Arreglo de definiciones de campos personalizados para el proyecto
    • Tipo MIME: application/json

Setup

  1. Crea una cuenta de Asana:

    • Visita Asana.
    • Haz clic en "Registrarse".
  2. Obtén el token de acceso de Asana:

  3. Opciones de instalación:

    Para Claude Desktop:

    Agrega lo siguiente a tu claude_desktop_config.json:

    {
      "mcpServers": {
        "asana": {
          "command": "npx",
          "args": ["-y", "@roychri/mcp-server-asana"],
          "env": {
            "ASANA_ACCESS_TOKEN": "your-asana-access-token"
          }
        }
      }
    }
    

    Para Claude Code:

    Usa el siguiente comando para instalar y configurar el servidor MCP:

    claude mcp add asana -e ASANA_ACCESS_TOKEN=<TOKEN> -- npx -y @roychri/mcp-server-asana
    

    Reemplaza <TOKEN> con tu token de acceso de Asana.

    Para Codex CLI:

    Agrega lo siguiente a tu ~/.codex/config.toml:

    [mcp_servers.asana]
    command = "npx"
    args = [
      "-y", "@roychri/mcp-server-asana"
    ]
    env = {ASANA_ACCESS_TOKEN= "<TOKEN>"}
    

    Reemplaza <TOKEN> con tu token de acceso de Asana.

Si deseas instalar la versión beta (aún no publicada), puedes usar:

  • @roychri/mcp-server-asana@beta

Puedes encontrar la versión beta actual, si existe, con cualquiera de las siguientes opciones:

  1. https://www.npmjs.com/package/@roychri/mcp-server-asana?activeTab=versions
  2. npm dist-tag ls @roychri/mcp-server-asana

Solución de problemas

Si encuentras errores de permisos:

  1. Asegúrate de que el plan de Asana que tienes permita el acceso a la API
  2. Confirma que el token de acceso y la configuración estén correctamente establecidos en claude_desktop_config.json.

Contribuciones

Clona este repositorio y comienza a hackear.

Pruébalo localmente con el MCP Inspector

Si deseas probar tus cambios, puedes usar el MCP Inspector de la siguiente manera:

npm run inspector

Esto expondrá el cliente al puerto 5173 y el servidor al puerto 3000.

Si esos puertos ya están siendo utilizados por otra cosa, puedes usar:

CLIENT_PORT=5009 SERVER_PORT=3009 npm run inspector

Licencia

Este servidor MCP está licenciado bajo la Licencia MIT. Esto significa que eres libre de usar, modificar y distribuir el software, sujeto a los términos y condiciones de la Licencia MIT. Para más detalles, consulta el archivo LICENSE en el repositorio del proyecto.