@aita.world/mcp
v0.12.0
Published
MCP server for AITA platform — projects, SPVs, dataroom, tasks, deals, offers, orders, analytics, catalog
Readme
@aita.world/mcp
MCP (Model Context Protocol) server for the AITA platform. Exposes platform operations as tools for AI assistants like Cursor and Claude Code.
Features
- Projects — List, create, read, update, delete projects
- SPV — Manage Special Purpose Vehicles and link/unlink projects
- Dataroom — Browse folders, upload/download files for projects, SPVs, and companies
- Tasks — Full task management with comments and file attachments
- Auth — Automatic login with token refresh
Configuration
Set these environment variables in your MCP server configuration:
| Variable | Required | Description |
|----------|----------|-------------|
| AITA_URL | Yes | AITA backend URL (e.g., https://api.aita.tech) |
| AITA_LOGIN | Yes | Email for authentication |
| AITA_PASSWORD | Yes | Password for authentication |
| AITA_COMPANY_ID | No | Default company ID for multi-tenant operations |
| AITA_LOG_LEVEL | No | Log level: debug, info, warn (default), error |
Setup
Cursor IDE
Add to .cursor/mcp.json in your project root:
{
"mcpServers": {
"aita": {
"command": "bun",
"args": ["run", "<path-to-repo>/bun-stack/packages/mcp/src/index.ts"],
"env": {
"AITA_URL": "https://api.aita.tech",
"AITA_LOGIN": "[email protected]",
"AITA_PASSWORD": "your-password",
"AITA_COMPANY_ID": "optional-company-id"
}
}
}
}Claude Code
Add to project settings (.claude/settings.json) or user settings (~/.claude/settings.json):
{
"mcpServers": {
"aita": {
"command": "bun",
"args": ["run", "<path-to-repo>/bun-stack/packages/mcp/src/index.ts"],
"env": {
"AITA_URL": "https://api.aita.tech",
"AITA_LOGIN": "[email protected]",
"AITA_PASSWORD": "your-password",
"AITA_COMPANY_ID": "optional-company-id"
}
}
}
}Available Tools
Auth (2 tools)
| Tool | Description |
|------|-------------|
| auth_login | Login with email/password (auto-runs on startup) |
| auth_status | Check auth status and get user profile |
Projects (5 tools)
| Tool | Description |
|------|-------------|
| project_list | List projects with filtering (name, SPV, published) |
| project_get | Get project details by ID |
| project_create | Create a new project |
| project_update | Update project fields |
| project_delete | Delete a project |
SPV (7 tools)
| Tool | Description |
|------|-------------|
| spv_list | List SPVs with filtering |
| spv_get | Get SPV details by ID |
| spv_create | Create a new SPV |
| spv_update | Update SPV fields |
| spv_delete | Delete an SPV |
| spv_link_project | Link a project to an SPV |
| spv_unlink_project | Unlink a project from an SPV |
Dataroom (7 tools)
| Tool | Description |
|------|-------------|
| dataroom_list_folders | List folders (supports SPV/project/company datarooms) |
| dataroom_get_folder | Get folder with subfolders and files |
| dataroom_create_folder | Create a folder |
| dataroom_list_files | List files in folder/business unit |
| dataroom_upload_file | Get presigned upload URL |
| dataroom_download_file | Get presigned download URL |
| dataroom_delete_file | Delete a file |
Tasks (12 tools)
| Tool | Description |
|------|-------------|
| task_list | List tasks with filtering and sorting. Supports slim=true for compact output (~80% smaller) and statusCategory filter |
| task_get | Get task details by ID |
| task_create | Create a new task |
| task_update | Update task fields |
| task_delete | Delete a task |
| task_add_comment | Add comment to a task |
| task_list_comments | List task comments |
| task_attach_file | Attach a file to a task |
| task_list_attachments | List task attachments |
| label_list | List available task labels with optional name filter |
| task_add_label | Add a label to a task |
| task_remove_label | Remove a label from a task |
Development
# Install dependencies
make install
# Run in dev mode (auto-restart)
make dev
# Run MCP server
make run
# Run tests
make test
# Type check
make typecheck
# Build for distribution
make build
# Clean build artifacts
make cleanArchitecture
src/
├── index.ts # Entry point (MCP server bootstrap)
├── server.ts # MCP server setup + tool registration
├── config.ts # Configuration (env vars)
├── types.ts # Shared TypeScript types
├── client/
│ ├── api-client.ts # HTTP client wrapper (fetch + auth headers)
│ └── auth.ts # Token management (login, refresh)
└── tools/
├── index.ts # Tool registry
├── auth.tools.ts # Auth tools
├── project.tools.ts # Project CRUD tools
├── spv.tools.ts # SPV CRUD + linking tools
├── dataroom.tools.ts # Folder/file management tools
└── task.tools.ts # Task CRUD + comments + attachments