Asana
liveProductivitySaaSList Asana workspaces accessible to the authenticated user.
Tools
asana_list_workspacesGet all accessible Asana workspaces. Returns workspace names and IDs needed to list projects and tasks.
No parameters required.
Try it
asana_list_tasksList tasks in a project. Returns task ID, name, completion status, assignee, and due date. Requires project ID.
No parameters required.
Try it
asana_get_taskGet full task details including name, description, assignee, projects, tags, subtasks, and status. Requires task ID.
No parameters required.
Try it
asana_create_taskCreate a new task in a project. Returns task ID, name, and permalink. Requires project ID and task name.
No parameters required.
Try it
asana_list_projectsList all projects in a workspace. Returns project ID, name, and archived status. Requires workspace ID.
No parameters required.
Try it
asana_search_tasksSearch tasks across a workspace by keyword. Returns matching tasks with ID, name, completion status, and assignee. Requires workspace ID.
No parameters required.
Try it
Test with curl
The gateway speaks JSON-RPC 2.0 over HTTP POST. You can test any pack directly from the terminal.
curl -X POST https://gateway.pipeworx.io/asana/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'curl -X POST https://gateway.pipeworx.io/asana/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"asana_list_workspaces","arguments":{}}}'Use with the SDK
Install @pipeworx/sdk to call tools from any TypeScript/Node project.
import { Pipeworx } from '@pipeworx/sdk';
const px = new Pipeworx();
const result = await px.call("asana_list_workspaces", {});// Or ask in plain English:
const answer = await px.ask("list asana workspaces accessible to the authenticated user");