All integrations

Asana

Connect Asana to Claude, ChatGPT or Cursor via MCP. OAuth setup with workspaces, projects, tasks, stories, tags, and portfolios.

OAuth 31 tools

Overview

Connect Asana to give AI clients access to your workspaces, projects, tasks, stories, tags, and portfolios for product and project management. This is the hosted Asana MCP integration for Claude, ChatGPT, Cursor, and other MCP clients — no self-hosted server required.

This integration is not created by, affiliated with, or supported by Asana.

Common use cases

  • Asana connector for AI agents — list projects, search tasks, update work items, and post comments from chat.
  • Asana OAuth MCP — approve access once; stackgate.ai stores and refreshes credentials securely.
  • Private gateway — combine Asana with Gmail, Slack, and other integrations through one governed endpoint.

Prerequisites

  • An Asana account with workspaces and projects you want AI to access
  • A stackgate.ai account

Getting credentials

  1. Sign in to stackgate.ai.
  2. Go to Integrations and open Asana.
  3. Click Activate, then Connect Asana.
  4. Choose standard or scoped tool access, approve the Asana OAuth prompt — stackgate.ai stores your tokens securely.

No manual personal access tokens are required for end users.

Operators: create an OAuth app in the Asana developer console, set the redirect URI to https://stackgate.ai/oauth/asana/callback, and under OAuth → Permission scopes enable Full permissions. Asana’s section list/create endpoints (and some project fields) are not covered by granular scopes yet, so stackgate.ai requests the default scope. Hub-side Read/Write tool selection still limits which MCP tools a connection may call.

Using with AI clients

  • Dedicated endpoint: POST /mcp/asana with a Sanctum bearer token
  • Private gateway: one config for all integrations — use asana__* namespaced tools

See Documentation for HTTP authentication and private gateway setup.

Troubleshooting

  • 422 integration not configured — complete the OAuth connect flow in My Integrations.
  • OAuth redirect mismatch — in the Asana developer console, add this exact redirect URI: https://stackgate.ai/oauth/asana/callback. It must match ASANA_REDIRECT_URI character-for-character.
  • 401 unauthorized from Asana — disconnect and reconnect Asana from the integration page (access tokens expire after about an hour; refresh should renew them automatically).
  • 429 too many requests — Asana enforces per-minute and concurrency limits; wait for Retry-After and avoid tight polling loops.
  • forbidden_scopes on authorize — enable Full permissions on your Asana app under OAuth → Permission scopes (this integration requests the default scope).
  • Full permissions required / section tools fail — list-sections and create-section need Full permissions; reconnect Asana after enabling it. You can still discover section GIDs from list-tasksmemberships.section.
  • search-tasks premium-only — Asana’s task search API requires a paid Asana plan on the connected workspace.
  • portfolios plan-only — portfolio tools require Asana Business or Enterprise.

Available tools

  • get_me

    Return the connected Asana user profile.

  • list_workspaces

    List Asana workspaces accessible to the connected account.

  • list_teams

    List teams in an Asana workspace (organizations only).

  • list_users

    List users in an Asana workspace — use to resolve assignees.

  • typeahead

    Search Asana objects in a workspace via typeahead (task, project, user, portfolio, tag, and more).

  • list_projects

    List projects in an Asana workspace.

  • get_project

    Get details for an Asana project by GID.

  • create_project

    Create a project in an Asana workspace or team.

  • update_project

    Update an Asana project name, notes, archived flag, or color.

  • list_sections

    List sections (columns/groups) in an Asana project.

  • create_section

    Create a section in an Asana project.

  • list_tasks

    List tasks for a project, section, or assignee+workspace. Provide project_gid, section_gid, or assignee with workspace_gid.

  • search_tasks

    Search tasks in a workspace with text and filters (Asana task search API).

  • get_task

    Get full details for an Asana task by GID.

  • create_task

    Create an Asana task. Provide workspace and/or projects (project GID).

  • update_task

    Update an Asana task name, notes, assignee, due date, or completed status.

  • delete_task

    Permanently delete an Asana task.

  • duplicate_task

    Duplicate an Asana task.

  • list_subtasks

    List subtasks of an Asana task.

  • create_subtask

    Create a subtask under an Asana task.

  • add_task_to_section

    Move or add an Asana task into a project section.

  • add_task_to_project

    Add an Asana task to a project (optionally into a section).

  • remove_task_from_project

    Remove an Asana task from a project.

  • list_task_stories

    List stories (comments and activity) on an Asana task.

  • create_task_story

    Add a comment (story) to an Asana task.

  • list_tags

    List tags in an Asana workspace.

  • add_tag_to_task

    Add a tag to an Asana task.

  • remove_tag_from_task

    Remove a tag from an Asana task.

  • list_portfolios

    List portfolios in an Asana workspace owned by a user (defaults to me).

  • get_portfolio

    Get details for an Asana portfolio.

  • list_portfolio_items

    List items (projects/portfolios) in an Asana portfolio.

MCP endpoint: https://stackgate.ai/mcp/asana (HTTP) or via the private gateway.