Back to MCP Servers

Asana MCP Server

Official Asana MCP server providing AI assistants with access to the Asana Work Graph for tasks, projects, status updates, and reporting.

Collaboration by Asana OAuth2 active
Overview

The Asana MCP server is the official, Asana-hosted remote MCP endpoint that lets AI assistants and agentic clients access the Asana Work Graph. It runs at https://mcp.asana.com/v2/mcp (the V2 server, generally available) and replaces the V1 beta server at https://mcp.asana.com/sse, which is being deprecated on 2026-05-11. Authentication is OAuth 2.0 with PKCE against an MCP app you register in the Asana developer console.

The server exposes three groups of tools: read tools for querying workspace data (universal search, tasks, projects, users, status overviews), write tools for mutating data (creating up to 50 tasks at once, creating projects, updating tasks, posting comments and status updates), and interactive preview tools for clients like Claude and ChatGPT that render approval UIs before committing changes. Tokens issued for MCP are scoped to MCP and do not work against the standard Asana REST API.

Because it is provider-hosted, there is nothing to self-host. Enterprise+ and Legacy Enterprise workspaces can govern MCP client access through Asana's app management; other tiers connect directly through any MCP client that supports Streamable HTTP transport and OAuth.

Tools

Tool Description
search_objects Universal search across Asana resource types including tasks, projects, portfolios, and goals.
get_task / get_tasks Fetch individual task details or filtered lists of tasks.
get_project / get_projects Retrieve project information and structure.
get_status_overview Generate an aggregated status report with task summaries and blockers for a project.
get_user / get_users Access user and team membership information.
create_tasks Create up to 50 tasks in a single call with assignees, due dates, and custom fields.
create_project Create a new project, optionally with sections and tasks.
update_tasks Modify task properties such as assignee, due date, status, or custom fields.
add_comment Post a comment to a task with HTML formatting and @-mentions.
create_project_status_update Post a colored status update (on-track, at-risk, off-track) to a project.
create_task_preview Interactive tool (Claude and ChatGPT) that renders a preview UI before creating a task.
create_project_preview Interactive tool that previews a project before creation.
search_tasks_preview Interactive tool that previews a task search query and results.
Setup Guide

Prerequisites

  • An Asana account with access to the workspace you want to expose
  • An MCP app registered in the Asana developer console to obtain a CLIENT_ID and CLIENT_SECRET
  • An MCP client that supports Streamable HTTP transport and OAuth 2.0 (Claude, ChatGPT, Cursor, VS Code, Claude Code, Windsurf, Codex, Kiro)

Server URL

https://mcp.asana.com/v2/mcp

Claude Code

claude mcp add --transport http \
  --client-id YOUR_CLIENT_ID \
  --client-secret \
  --callback-port 8080 \
  asana https://mcp.asana.com/v2/mcp

You will be prompted to paste the client secret securely.

Cursor

In Cursor Settings, under "Tools & MCP":

{
  "mcpServers": {
    "asana": {
      "url": "https://mcp.asana.com/v2/mcp",
      "auth": {
        "CLIENT_ID": "${env:ASANA_CLIENT_ID}",
        "CLIENT_SECRET": "${env:ASANA_CLIENT_SECRET}"
      }
    }
  }
}

VS Code

Open the Command Palette (Ctrl+Shift+P), run MCP: Add Server, choose HTTP transport, and enter https://mcp.asana.com/v2/mcp. Provide your Client ID and Secret when prompted.

Claude Desktop and ChatGPT

Both have native Asana app integrations. Connect via the in-app integrations menu rather than editing config files.

Windsurf, Codex, Kiro

These bridge through mcp-remote. Point them at https://mcp.asana.com/v2/mcp and supply ASANA_CLIENT_ID and ASANA_CLIENT_SECRET as environment variables.

Use Cases
  • Ask an agent to bulk-create sprint tasks in Asana from a meeting transcript or spec doc, with assignees and due dates filled in.
  • Generate a weekly project status update by aggregating incomplete tasks, blockers, and overdue items via get_status_overview and posting back with create_project_status_update.
  • Triage inbound work: search for tasks assigned to a user across all projects, then bulk-update priorities or due dates.
  • Pull cross-project reporting (e.g. all "at-risk" projects in a portfolio) into a Claude or ChatGPT analysis without leaving the chat.
  • Post structured comments with @-mentions on tasks to drive follow-ups from AI-assisted reviews.
Example Prompts
  • "Create 20 tasks in the Q3 Launch project from this PRD, assigning each to the listed owner with due dates spread over the next 4 weeks."
  • "Give me a status overview for the Website Redesign project and post an 'at-risk' update summarizing the blockers."
  • "Find all incomplete tasks assigned to me across every project and group them by due date."
  • "Add a comment on task GID 1209876 mentioning @design-lead and asking for spec approval."
  • "Search Asana for any goal containing 'NPS' and list the related projects and owners."
Pros
  • Official, Asana-hosted remote server: no self-hosting, infrastructure, or token refresh logic to maintain.
  • Broad tool coverage spanning search, read, write, and interactive preview flows across tasks, projects, users, and status updates.
  • Bulk operations (up to 50 tasks per create_tasks call) make it practical for agentic workflows.
  • Enterprise admin controls via Asana app management for governance.
Limitations
  • MCP tokens are scoped to MCP only and cannot be reused against the Asana REST API for capabilities the MCP server does not expose.
  • Requires registering your own OAuth client (CLIENT_ID and CLIENT_SECRET) for most coding clients, which is more setup than a simple API key.
  • The V1 beta endpoint (https://mcp.asana.com/sse) is being shut down on 2026-05-11, so any older integrations must migrate to V2.
Alternatives
  • roychri/mcp-server-asana: community-built, self-hosted Asana MCP server using a personal access token.
  • Linear MCP server (https://mcp.linear.app/sse) for teams using Linear instead of Asana.
  • ClickUp and Jira MCP integrations (via community servers or Zapier/Pipedream MCP) for similar project management surfaces.