Asana MCP Server

Asana is a project management and team collaboration platform. Use it to manage tasks, projects, sections, tags, and team workspaces. Supports task creation, assignment, commenting, search, and full project lifecycle management.

19 tools
SKILL.md

Start chatting with Asana tools

Open Studio to chat with 19 Asana tools right now — the skill is included automatically.

AI Skill
SKILL.md

Domain knowledge for Asana — workflow patterns, data models, and gotchas for your AI agent.

Asana

Asana organizes work into workspaces containing projects, which contain sections and tasks. Tasks are the atomic unit of work — they carry assignments, due dates, tags, subtasks, and a comment/story stream.

Data Model

  • Workspace — top-level container. All resources belong to a workspace. Has a GID, name, and is_organization flag.
  • Team — sub-group within an organization workspace. Projects belong to teams.
  • Project — a collection of tasks, displayed as list, board, timeline, or calendar. Has sections for grouping. Belongs to a workspace and optionally a team.
  • Section — a named grouping within a project (e.g. "To Do", "In Progress", "Done"). Tasks are ordered within sections.
  • Task — a unit of work. Has name, notes (description), assignee, due_on/due_at, completed status, tags, custom fields, parent (for subtasks), and memberships (which projects/sections it belongs to).
  • Subtask — a task whose parent is another task. Arbitrarily nestable.
  • Story — an entry in a task's activity feed. Can be a comment (type=comment) or system-generated (type=system). Comments have text and html_text.
  • Tag — a label applied to tasks across projects. Workspace-scoped.
  • User — a person in the workspace. Has name, email, photo, workspaces.

Entity Relationships

Workspace ─┬─ Teams (in organizations) ├─ Projects ─── Sections ─── Tasks ├─ Tags └─ Users

Task ─┬─ Subtasks (recursive) ├─ Stories (comments + system events) ├─ Tags (many-to-many) ├─ Attachments └─ Memberships (project + section placement)

Key Workflows

  1. Start with workspaces: Get workspaces to find the workspace GID needed for most operations.
  2. Browse projects: List projects in a workspace → get project details → list sections → list tasks in a project.
  3. Task management: Create/update/delete tasks. Assign to users, set due dates, add to projects.
  4. Search: Search tasks in a workspace by text, assignee, project, completion status, date ranges.
  5. Comments: Read stories on a task, add comments.
  6. Organization: Use sections to group tasks within projects. Use tags for cross-project labeling.

Gotchas

  • opt_fields is critical: By default, Asana returns compact representations (just GID and name). Use opt_fields to request additional fields like assignee, due_on, completed, notes, etc.
  • Workspace GID required: Most list/search operations require a workspace GID. Get it from the authenticated user's workspaces first.
  • Pagination: List endpoints use cursor-based pagination. Response includes next_page.offset for the next page. Default limit is 20, max 100.
  • Task memberships: A task can belong to multiple projects. The memberships field shows which projects and sections it's in.
  • Search is premium-only: The task search endpoint requires a Premium, Business, or Enterprise Asana plan. Returns max 100 results.
  • Search is eventually consistent: New/updated tasks may take 10-60 seconds to appear in search results.
  • Subtasks are separate: Subtasks don't appear in project task lists by default — they live under their parent task. Query subtasks explicitly.
  • due_on vs due_at: due_on is a date (YYYY-MM-DD), due_at is a datetime (ISO 8601). Only one should be set.
  • Delete is soft: Deleted tasks go to trash and are recoverable for 30 days.
  • Stories vs comments: The stories endpoint returns both comments and system-generated activity. Filter by type=comment for just comments.

Tools in this Server (19)

Asana Add Comment

Add a comment to an Asana task. Provide either plain text or HTML-formatted content. The comment appears in the task's story/activity feed.

Asana Add Task To Project

Add an existing Asana task to a project. Optionally specify a section within the project. A task can belong to multiple projects.

Asana Create Project

Create a new Asana project in a workspace. Specify name, layout (list/board/timeline/calendar), color, notes, and optionally a team for organization w...

Asana Create Section

Create a new section in an Asana project. Sections group tasks and appear as column headers in board view or dividers in list view.

Asana Create Task

Create a new Asana task. Provide at least a name and either workspace_gid or projects. Can set assignee, due date, notes, tags, parent (for subtasks),...

Asana Delete Task

Delete an Asana task. The task is moved to trash and recoverable for 30 days. All subtasks are also deleted.

Asana Get Me

Get the currently authenticated Asana user. Returns GID, name, email, and workspace memberships. Use this first to discover available workspace GIDs n...

Asana Get Projects

Get Asana projects. Pass project_gid to fetch a single project's full details including name, notes, owner, due dates, layout, and team. Omit project_...

Asana Get Sections

Get sections in an Asana project. Pass section_gid to fetch a single section. Omit section_gid and provide project_gid to list all sections (e.g. 'To ...

Asana Get Stories

Get stories (comments and activity log) on an Asana task. Stories include user comments (type=comment) and system-generated events (type=system) like ...

Asana Get Subtasks

Get subtasks of an Asana task. Subtasks are child tasks nested under a parent. Returns compact task representations — use opt_fields to include additi...

Asana Get Tags

Get Asana tags. Pass tag_gid to fetch a single tag. Omit tag_gid and provide workspace_gid to list all tags in the workspace. Tags are workspace-scope...

Asana Get Tasks

Get Asana tasks. Pass task_gid to fetch a single task's full details (name, notes, assignee, due_on, completed, subtasks, tags, memberships). Omit tas...

Asana Get Teams

List teams in an Asana organization workspace. Teams group users and projects. Only available for organization workspaces.

Asana Get Users

Get Asana users. Pass user_gid to fetch a single user's full profile. Omit user_gid and provide workspace_gid to list all users in a workspace. Return...

Asana Get Workspaces

List all Asana workspaces visible to the authenticated user. Returns workspace GIDs and names. Workspace GIDs are required for listing projects, users...

Asana Search Tasks

Search tasks in an Asana workspace. Supports full-text search, filtering by assignee, project, tag, completion status, due dates, and modification dat...

Asana Update Project

Update an existing Asana project. Only specified fields are changed. Can update name, notes, color, dates, visibility, archive status, and default vie...

Asana Update Task

Update an existing Asana task. Only specified fields are changed. Can update name, assignee, notes, due date, completion status, and more.

Integration Details

Authentication
One-click sign in

Frequently Asked Questions

What is the Asana MCP server?

Asana is a project management and team collaboration platform. Use it to manage tasks, projects, sections, tags, and team workspaces. Supports task creation, assignment, commenting, search, and full project lifecycle management. It provides 19 tools that AI agents can use through the Model Context Protocol (MCP).

How do I connect Asana to my AI agent?

Add the MCPBundles server URL to your MCP client configuration (Claude Desktop, Cursor, VS Code, etc.). The URL format is: https://mcp.mcpbundles.com/bundle/asana. Authentication is handled automatically.

How many tools does Asana provide?

Asana provides 19 tools that can be called by AI agents, along with a SKILL.md that gives your AI agent domain knowledge about when and how to use them.

What authentication does Asana require?

Asana uses One-click sign in. Asana requires credentials. Connect via MCPBundles and authentication is handled automatically.

Setup Instructions

Connect Asana to any MCP client in minutes

https://mcp.mcpbundles.com/bundle/asana

What is MCP?

Model Context Protocol lets AI tools call external capabilities securely through a single URL. This bundle groups tools behind an MCP endpoint that many clients can use.

Use this bundle in 3 steps

  1. Copy the MCP URL above
  2. Open your AI tool and add a new MCP/connector
  3. Paste the URL and follow any auth prompts

Claude Desktop Users

Skip the manual setup! Use the .mcpb file format for one-click installation. Check the Claude Desktop tab for setup instructions.

Pick your tool tab for exact steps

Select ChatGPT, Cursor, Claude Code, or another tab for copy-paste config.

Ready to use Asana?

Open Studio and start using 19 tools right now — no setup required

Asana MCP Server & Skill — 19 Tools