MCP & API
Org-scoped keys on your origin. Mailbox, tasks, calendar, resources — no Cloud OAuth, no connector tools.
API keys
Create an org API key in the dashboard. Keep it server-side. A key only touches that organization's data.
MCP
Point Cursor, Claude, or your agent at your dashboard origin — not `app.humaner.io`. Auth is the Bearer key. There is no hosted OAuth MCP on Self-Host.
mcp.json
{
"mcpServers": {
"humaner": {
"url": "https://your-origin/api/mcp",
"headers": {
"Authorization": "Bearer Your_api_key"
}
}
}
}| Surface | Tools |
|---|---|
| `list_mail_threads`, `read_mail_thread`, `search_mail_threads`, `list_mail_aliases`, `suggest_mail_reply`, `send_mail`, `assign_mail_thread`, `tag_mail_thread`, `add_mail_thread_note` | |
| Tasks | `list_tasks`, `create_task`, `create_task_from_mail_thread` |
| Calendar | `list_calendar_events`, `create_calendar_event` |
| Members | `list_team_members` |
Cloud-only tools
Linear, GitHub, Stripe, Notion, connectors, and `request_teammate` are not listed on Self-Host. Hybrid RAG / `search_knowledge` is Cloud Companion.
REST
Same tools over HTTP. Pass `tool` in the JSON body.
| Method | Path | Default tool |
|---|---|---|
| POST | /api/mcp | MCP streamable HTTP |
| POST | /api/v1/mail | `list_mail_threads` |
| POST | /api/v1/tasks | `list_tasks` |
| POST | /api/v1/calendar | `list_calendar_events` |
curl -X POST https://your-origin/api/v1/mail \
-H "Authorization: Bearer <your-api-key>" \
-H "Content-Type: application/json" \
-d '{ "tool": "list_mail_threads", "unreadOnly": true }'Draft helpers (`suggest_mail_reply`) need `CLAUDE_API_KEY` (or `ANTHROPIC_API_KEY`) on the server.