Skip to main content

Crate asanamcp

Crate asanamcp 

Source
Expand description

Asana MCP Server Library

This crate provides an MCP (Model Context Protocol) server for interacting with the Asana API. It can be used as a library or run as a standalone binary.

§Features

  • Hybrid typed responses: Minimal typed fields for recursion with raw JSON for AI consumption
  • Recursive operations: Fetch portfolios, tasks, and subtasks with configurable depth
  • Full CRUD support: Create, read, update, and manage relationships between resources

§Example

use asanamcp::{AsanaServer, AsanaClient};

// Create client directly for low-level API access
let client = AsanaClient::from_env()?;

// Or create the MCP server for tool-based access
let server = AsanaServer::new()?;

Re-exports§

pub use client::AsanaClient;
pub use error::Error;
pub use server::AsanaServer;
pub use server::params;
pub use types::FavoriteItem;
pub use types::FavoritesResponse;
pub use types::Job;
pub use types::PortfolioItem;
pub use types::PortfolioItemExpanded;
pub use types::PortfolioWithItems;
pub use types::Resource;
pub use types::Story;
pub use types::TaskDependency;
pub use types::TaskRef;
pub use types::TaskWithContext;

Modules§

client
HTTP client for the Asana API.
error
Error types for the Asana MCP server.
server
MCP server implementation for Asana.
types
Type definitions for hybrid response handling.