Skip to content
Developer ToolsClaude Desktop Guide

Asana Claude Desktop Integration

This guide explains how to configure Claude Desktop (Mac and Windows) to use the Asana API through the Model Context Protocol (MCP). The integration exposes 10 API endpointsas callable tools inside Claude's chat interface, including Get attachments from an object, Upload an attachment, Get an attachment, and more. No API keys or credentials are needed — setup takes approximately 30 seconds. The server runs locally via npx and communicates over STDIO transport. Paste the JSON configuration below into your claude_desktop_config.json file to get started.

Integration Specs

ClientClaude Desktop
Runtimenpx
AuthenticationNone
Setup Time~30 sec

Setup Instructions

1

Open Claude Settings

Launch Claude Desktop, open Settings (click your profile) → Developer → click 'Edit Config'.

2

Locate configuration file

This opens your local 'claude_desktop_config.json' file in your system editor.

3

Insert Server Config JSON

Paste the JSON configuration schema block (provided below) into the 'mcpServers' object.

4

Add authentication credentials

No credentials needed; leave the 'env' mapping empty.

5

Restart Claude app

Save the config file and restart Claude Desktop to load your new tools.

Configuration JSON

claude_desktop_config.json

Copy and paste this config snippet inside your local configuration file.

{
  "mcpServers": {
    "asana-com": {
      "command": "npx",
      "args": [
        "-y",
        "@mcp/asana-com"
      ],
      "env": {
        "ASANA_API_KEY": "your_asana_api_key"
      }
    }
  }
}

Required Environment Keys

Provide these variable keys in your local environment section:

ASANA_API_KEY

Replace your_asana_api_key with your secret key credentials.

Available Tools (10)

These endpoints are parsed from the OpenAPI schema and converted to Claude-compatible tools:

GET/attachments
Get attachments from an object
POST/attachments
Upload an attachment
GET/attachments/{attachment_gid}
Get an attachment
DELETE/attachments/{attachment_gid}
Delete an attachment
POST/batch
Submit parallel requests
POST/custom_fields
Create a custom field
GET/custom_fields/{custom_field_gid}
Get a custom field
PUT/custom_fields/{custom_field_gid}
Update a custom field
DELETE/custom_fields/{custom_field_gid}
Delete a custom field
POST/custom_fields/{custom_field_gid}/enum_options
Create an enum option