Asana

Asana's hosted MCP server connects assistants to tasks, projects, teams, comments, and work-management context.

Connection specification

Remote endpoint
https://mcp.asana.com/v2/mcp
Browser access
Not yet measured
Declared MCP transport
Streamable HTTP
Live-validated MCP transport
Not yet verified — Latest validation did not verify a transport
Declared authentication
OAuth 2.1
Detected authentication
OAuth 2.1 detected or retained from publisher evidence
Protocol lifecycle
Not yet negotiated
Authorization server
https://app.asana.com
Category
Project Management

Product documentation · Official listing documentation

Provider guidance

  • OAuth clients must be pre-registered with Asana client credentials; the server does not advertise Dynamic Client Registration.

Browse all MCP servers · Test this endpoint in the MCP Playground

Authorization setup

Hosted mcptest operator setup required

A user-created Asana app and secret work with documented supported clients that can protect the secret. Hosted mcptest cannot accept the secret in the browser or use that app automatically; Retry remains unavailable until the mcptest operator configures a confidential binding server-side.

Publisher evidence reviewed .

Client ID
Required
Client secret
Required — never enter it in a browser
Browser/public client
Not supported

Required non-secret settings

App type
MCP app (required)
App name
A recognizable integration name (required)
Distribution
Specific test workspaces or any workspace (required)
Scope
Omit scope or use default (optional)

Callback URIs

  • https://mcptest.io/oauth/callback
  • http://localhost:8080/callback
  • cursor://anysphere.cursor-mcp/oauth/callback
  • http://127.0.0.1:33418/
  • https://vscode.dev/redirect
  • http://localhost:3334/oauth/callback

Provider setup steps

  1. Create a new application in the Asana developer console and select MCP app as the app type.
  2. Give the app a recognizable name and retain its client ID in protected configuration.
  3. Register the exact callback URI for the client that will perform authorization.
  4. Under Manage distribution, select specific workspaces and add each test workspace, or select any workspace.
  5. Use the app and secret with a documented supported client that can protect the secret; creating the app alone does not enable hosted mcptest.
  6. For hosted mcptest, its operator must configure the client ID and secret as a confidential server-side binding before Retry becomes available; never paste the secret into mcptest in a browser.

Open provider setup or application page

Publisher documentation

Connect this server to your client

Claude Code setup

Run in a terminal. This user-scoped entry is available across projects.

claude mcp add --transport http --scope user --client-id "${ASANA_CLIENT_ID}" --client-secret --callback-port 8080 'asana' 'https://mcp.asana.com/v2/mcp'

Hosted mcptest operator setup required: A user-created Asana app and secret work with documented supported clients that can protect the secret. Hosted mcptest cannot accept the secret in the browser or use that app automatically; Retry remains unavailable until the mcptest operator configures a confidential binding server-side.

  • Using live-validated endpoint: https://mcp.asana.com/v2/mcp
  • Hosted mcptest operator setup required: A user-created Asana app and secret work with documented supported clients that can protect the secret. Hosted mcptest cannot accept the secret in the browser or use that app automatically; Retry remains unavailable until the mcptest operator configures a confidential binding server-side.
  • Provider setup: Create a new application in the Asana developer console and select MCP app as the app type.
  • Provider setup: Give the app a recognizable name and retain its client ID in protected configuration.
  • Provider setup: Register the exact callback URI for the client that will perform authorization.
  • Provider setup: Under Manage distribution, select specific workspaces and add each test workspace, or select any workspace.
  • Provider setup: Use the app and secret with a documented supported client that can protect the secret; creating the app alone does not enable hosted mcptest.
  • Provider setup: For hosted mcptest, its operator must configure the client ID and secret as a confidential server-side binding before Retry becomes available; never paste the secret into mcptest in a browser.
  • Publisher evidence (reviewed 2026-08-24): https://developers.asana.com/docs/connecting-mcp-clients-to-asanas-v2-server
  • Provider guidance: OAuth clients must be pre-registered with Asana client credentials; the server does not advertise Dynamic Client Registration.
  • Register this exact Claude Code redirect URL: http://localhost:8080/callback.
  • The bare --client-secret option opens Claude Code's masked prompt; the secret is stored securely instead of appearing in the command or configuration file.

Claude Code MCP documentation

Codex CLI setup

Add to ~/.codex/config.toml. This publisher-documented bridge requires Node.js, which serializes the OAuth client information at execution time.

[mcp_servers.asana]
command = "node"
args = [
  "-e",
  "const { spawnSync } = require(\"node:child_process\"); const [endpoint, callbackPort, resource] = process.argv.slice(1); const clientInfo = JSON.stringify({ client_id: process.env[\"ASANA_CLIENT_ID\"], client_secret: process.env[\"ASANA_CLIENT_SECRET\"] }); const result = spawnSync(\"npx\", [\"-y\", \"mcp-remote@latest\", endpoint, callbackPort, \"--static-oauth-client-info\", clientInfo, \"--resource\", resource], { stdio: \"inherit\" }); if (result.error) throw result.error; process.exit(result.status === null ? 1 : result.status);",
  "https://mcp.asana.com/v2/mcp",
  "3334",
  "https://mcp.asana.com/v2"
]
env_vars = ["ASANA_CLIENT_ID", "ASANA_CLIENT_SECRET"]

Hosted mcptest operator setup required: A user-created Asana app and secret work with documented supported clients that can protect the secret. Hosted mcptest cannot accept the secret in the browser or use that app automatically; Retry remains unavailable until the mcptest operator configures a confidential binding server-side.

  • Using live-validated endpoint: https://mcp.asana.com/v2/mcp
  • Hosted mcptest operator setup required: A user-created Asana app and secret work with documented supported clients that can protect the secret. Hosted mcptest cannot accept the secret in the browser or use that app automatically; Retry remains unavailable until the mcptest operator configures a confidential binding server-side.
  • Provider setup: Create a new application in the Asana developer console and select MCP app as the app type.
  • Provider setup: Give the app a recognizable name and retain its client ID in protected configuration.
  • Provider setup: Register the exact callback URI for the client that will perform authorization.
  • Provider setup: Under Manage distribution, select specific workspaces and add each test workspace, or select any workspace.
  • Provider setup: Use the app and secret with a documented supported client that can protect the secret; creating the app alone does not enable hosted mcptest.
  • Provider setup: For hosted mcptest, its operator must configure the client ID and secret as a confidential server-side binding before Retry becomes available; never paste the secret into mcptest in a browser.
  • Publisher evidence (reviewed 2026-08-24): https://developers.asana.com/docs/connecting-mcp-clients-to-asanas-v2-server
  • Provider guidance: OAuth clients must be pre-registered with Asana client credentials; the server does not advertise Dynamic Client Registration.
  • Register this exact Codex redirect URL: http://localhost:3334/oauth/callback.
  • This is Asana's publisher-documented mcp-remote compatibility setup. The publisher warns that mcp-remote is experimental community software; review it before use.
  • Store ASANA_CLIENT_ID and ASANA_CLIENT_SECRET in a protected environment or secret manager; never commit their values.

Codex MCP documentation

Cursor setup

Add to .cursor/mcp.json for this project, or ~/.cursor/mcp.json for all projects.

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

Hosted mcptest operator setup required: A user-created Asana app and secret work with documented supported clients that can protect the secret. Hosted mcptest cannot accept the secret in the browser or use that app automatically; Retry remains unavailable until the mcptest operator configures a confidential binding server-side.

  • Using live-validated endpoint: https://mcp.asana.com/v2/mcp
  • Hosted mcptest operator setup required: A user-created Asana app and secret work with documented supported clients that can protect the secret. Hosted mcptest cannot accept the secret in the browser or use that app automatically; Retry remains unavailable until the mcptest operator configures a confidential binding server-side.
  • Provider setup: Create a new application in the Asana developer console and select MCP app as the app type.
  • Provider setup: Give the app a recognizable name and retain its client ID in protected configuration.
  • Provider setup: Register the exact callback URI for the client that will perform authorization.
  • Provider setup: Under Manage distribution, select specific workspaces and add each test workspace, or select any workspace.
  • Provider setup: Use the app and secret with a documented supported client that can protect the secret; creating the app alone does not enable hosted mcptest.
  • Provider setup: For hosted mcptest, its operator must configure the client ID and secret as a confidential server-side binding before Retry becomes available; never paste the secret into mcptest in a browser.
  • Publisher evidence (reviewed 2026-08-24): https://developers.asana.com/docs/connecting-mcp-clients-to-asanas-v2-server
  • Provider guidance: OAuth clients must be pre-registered with Asana client credentials; the server does not advertise Dynamic Client Registration.
  • Register this exact Cursor redirect URL: cursor://anysphere.cursor-mcp/oauth/callback.
  • Cursor Static OAuth reads the client ID and secret from the named environment variables; never commit either value.

Cursor MCP documentation

VS Code setup

Run “MCP: Add Server”, choose HTTP, enter this URL and name, then choose Workspace or Global scope. VS Code will prompt for the registered credentials when the server starts.

{
  "servers": {
    "asana": {
      "type": "http",
      "url": "https://mcp.asana.com/v2/mcp"
    }
  }
}

Hosted mcptest operator setup required: A user-created Asana app and secret work with documented supported clients that can protect the secret. Hosted mcptest cannot accept the secret in the browser or use that app automatically; Retry remains unavailable until the mcptest operator configures a confidential binding server-side.

  • Using live-validated endpoint: https://mcp.asana.com/v2/mcp
  • Hosted mcptest operator setup required: A user-created Asana app and secret work with documented supported clients that can protect the secret. Hosted mcptest cannot accept the secret in the browser or use that app automatically; Retry remains unavailable until the mcptest operator configures a confidential binding server-side.
  • Provider setup: Create a new application in the Asana developer console and select MCP app as the app type.
  • Provider setup: Give the app a recognizable name and retain its client ID in protected configuration.
  • Provider setup: Register the exact callback URI for the client that will perform authorization.
  • Provider setup: Under Manage distribution, select specific workspaces and add each test workspace, or select any workspace.
  • Provider setup: Use the app and secret with a documented supported client that can protect the secret; creating the app alone does not enable hosted mcptest.
  • Provider setup: For hosted mcptest, its operator must configure the client ID and secret as a confidential server-side binding before Retry becomes available; never paste the secret into mcptest in a browser.
  • Publisher evidence (reviewed 2026-08-24): https://developers.asana.com/docs/connecting-mcp-clients-to-asanas-v2-server
  • Provider guidance: OAuth clients must be pre-registered with Asana client credentials; the server does not advertise Dynamic Client Registration.
  • Register these exact VS Code redirect URLs: http://127.0.0.1:33418/, https://vscode.dev/redirect.
  • Start the server after adding it. VS Code detects that Dynamic Client Registration is unavailable and natively prompts first for the client ID and then for the client secret; it stores the credentials securely and manages token refresh.

VS Code MCP documentation

Latest validation evidence

Validation status
Online when last tested
Validation checked at
Aug 18, 2026 at 1:35 PM
Validation detail
Authentication challenge at https://mcp.asana.com/v2/mcp returned HTTP 401; endpoint was reachable but did not complete an MCP probe; authentication oauth