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;