@joecardoso13/asana
70
MCP server for the Asana API
README
Asana MCP Server
An MCP (Model Context Protocol) server that provides access to the Asana API, allowing AI assistants to interact with Asana data.
Features
- List and retrieve items from the Asana API
- Async HTTP client with error handling
- Typed responses with Pydantic models
Installation
Using mpak (Recommended)
# Configure your API key
mpak config set @JoeCardoso13/asana api_key=your_api_key_here
# Run the server
mpak run @JoeCardoso13/asana
Manual Installation
# Clone the repository
git clone https://github.com/JoeCardoso13/mcp-asana.git
cd mcp-asana
# Install dependencies with uv
uv sync
# Set your API key
export ASANA_API_KEY=your_api_key_here
# Run the server
uv run python -m mcp_asana.server
Configuration
Getting Your API Key
- Go to https://app.asana.com/-/developer_console
- Create a new API key
- Copy the key
Claude Desktop Configuration
Add to your ~/.claude/settings.json:
{
"mcpServers": {
"asana": {
"command": "mpak",
"args": ["run", "@JoeCardoso13/asana"]
}
}
}
Available Tools
| Tool | Description |
|---|---|
list_items | List items from the API with optional limit |
get_item | Get a single item by its ID |
Development
# Install dev dependencies
uv sync --dev
# Run tests
uv run pytest tests/ -v
# Format code
uv run ruff format src/ tests/
# Lint
uv run ruff check src/ tests/
# Type check
uv run ty check src/
# Run all checks
make check
License
MIT