MCP server for Tobi AI - Brain Dump and Task Management integration for Claude Desktop, Cursor, and other MCP clients
npm install tobi-mcp-serverAn MCP (Model Context Protocol) server that exposes Tobi AI's productivity features to AI assistants like Claude Desktop, Cursor, and Windsurf.
- Brain Dump - Convert unstructured thoughts into organized tasks
- Task Management - Create, read, and update tasks
- Project Organization - View projects for task organization
- Life Graph - Search your contacts and organizations
- Daily Brief - Get your personalized morning brief
- Pro subscription at tobiai.app
- Node.js 18+
1. Go to tobiai.app/settings/integrations
2. Click Generate New Key
3. Copy the key (starts with tk_live_)
> Note: API keys are only shown once. Save it securely!
#### Claude Desktop
Add to ~/.claude/mcp.json:
``json`
{
"mcpServers": {
"tobi": {
"command": "npx",
"args": ["tobi-mcp-server"],
"env": {
"TOBI_API_KEY": "tk_live_your_key_here"
}
}
}
}
Then restart Claude Desktop.
#### Cursor
Add to your Cursor MCP configuration (Settings > MCP):
`json`
{
"tobi": {
"command": "npx",
"args": ["tobi-mcp-server"],
"env": {
"TOBI_API_KEY": "tk_live_your_key_here"
}
}
}
Ask Claude or your AI assistant:
> "Use Tobi to brain dump: I need to fix the login bug, prepare slides for Monday's meeting, and remember to buy groceries"
You should see tasks created in your Tobi account!
Send unstructured text to Tobi AI for processing into tasks.
Input:
- text (string, required): Your unstructured thoughts, minimum 10 characters
Output:
- Summary of tasks created
- List of tasks with priorities and due dates
- Any insights or emotional flags detected
- Clarifying questions if the AI needs more context
Example:
``
"need to fix the auth bug before Friday, call mom sometime this week,
and we should probably add rate limiting at some point"
---
Retrieve tasks from Tobi with optional filtering.
Input:
- status (string, optional): "todo", "in_progress", "done", or "archived"priority
- (string, optional): "low", "medium", "high", or "urgent"projectId
- (string, optional): Filter to a specific projectlimit
- (number, optional): Max results (default: 50, max: 100)offset
- (number, optional): Pagination offset
Output:
- List of tasks with full details (title, priority, status, due dates, project)
- Pagination info
Example use cases:
- "Show me my urgent tasks"
- "What bugs do I need to fix?"
- "Get all tasks in the Backend project"
---
Create a new task in Tobi.
Input:
- title (string, required): Task titledescription
- (string, optional): Additional detailspriority
- (string, optional): "low", "medium", "high", or "urgent" (default: medium)status
- (string, optional): "todo", "in_progress", or "done" (default: todo)dueDate
- (string, optional): Due date in YYYY-MM-DD formatdueTime
- (string, optional): Due time in HH:MM formatprojectId
- (string, optional): Assign to a projectestimatedMinutes
- (number, optional): Time estimateisHardDeadline
- (boolean, optional): Whether due date is firm
Output:
- Created task with all details
Example use cases:
- "Create a task to fix the authentication bug"
- "Add a high priority task due Friday: Review PR #123"
- "Log this bug: Users can't reset passwords"
---
Update an existing task.
Input:
- id (string, required): Task ID to updatetitle
- (string, optional): New titledescription
- (string, optional): New descriptionpriority
- (string, optional): New prioritystatus
- (string, optional): New status (use "done" to complete)dueDate
- (string/null, optional): New due date or null to removedueTime
- (string/null, optional): New due time or null to removeprojectId
- (string/null, optional): Move to project or null to removeestimatedMinutes
- (number/null, optional): Update estimateisHardDeadline
- (boolean, optional): Update deadline type
Output:
- Updated task with all details
Example use cases:
- "Mark task abc123 as done"
- "Change the priority of task xyz789 to urgent"
- "Move task to the Backend project"
---
Get all projects for task organization.
Input:
- None required
Output:
- List of projects with names, IDs, colors, and task counts
Example use cases:
- "What projects do I have?"
- "Get project IDs so I can assign tasks"
---
Search contacts and organizations in Tobi's Life Graph.
Input:
- query (string, optional): Search term (name, email, company)type
- (string, optional): "people", "organizations", or "all" (default: all)isVip
- (boolean, optional): Filter to VIP contacts onlylimit
- (number, optional): Max results (default: 20, max: 50)
Output:
- Matching people with contact info and relationship scores
- Matching organizations with interaction history
Example use cases:
- "Find John's contact info"
- "Who are my VIP contacts?"
- "Look up Acme Corp"
- "Find people I haven't talked to recently"
---
Get your personalized morning brief.
Input:
- None required
Output:
- Today's task summary
- Meeting schedule with prep tips
- Emails needing attention
- Relationship reminders
- Warnings about deadlines or overload
Example use cases:
- "What's on my plate today?"
- "Give me my morning brief"
- "What should I focus on?"
| Variable | Required | Description |
|----------|----------|-------------|
| TOBI_API_KEY | Yes | Your Tobi API key (starts with tk_live_) |TOBI_API_BASE
| | No | Override API URL (default: https://api.tobiai.app/api) |
When you find a bug while coding, use create_task:
``
"Create an urgent task: Login redirect failing on Safari -
users see blank page after OAuth callback.
File: src/auth/callback.ts"
Use get_tasks and update_task together:
1. "Show me tasks I worked on today (status: in_progress)"
2. "Mark task abc123 as done"
3. "Move task xyz789 to tomorrow" (update dueDate)
Use life_graph_search before meetings:
``
"Search Life Graph for John Smith at Acme Corp"
Get context on who you're meeting with, last interactions, and relationship health.
Use daily_brief to start your day:
``
"Get my daily brief from Tobi"
See what's urgent, what meetings you have, and who needs follow-up.
- Check that the key hasn't been revoked at tobiai.app/settings/integrations$3
- API access requires a Pro subscription
- Upgrade at tobiai.app/pricing$3
- Make sure the env block is correctly configured in your MCP client$3
- Free tier has a 50 task limit
- Upgrade to Pro for unlimited tasksDevelopment
`bash
Install dependencies
pnpm installBuild
pnpm buildRun with inspector
pnpm inspector
``MIT