CustomerOS MCP Server
Provides tools for managing CustomerOS tickets, accounts, team members, and notes, backed by a Supabase database.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
CustomerOS MCP Server
A local Model Context Protocol server for managing CustomerOS — tickets, accounts, team members, and notes — backed by Supabase.
Built for use with Claude Code but works with any MCP client.
Tools
Tool | Description |
| List all accounts with status |
| Find account by name (fuzzy search) |
| List team members with roles |
| List tickets, optionally filtered by status |
| List your open tickets |
| Get full ticket details by ID |
| List client notes for an account |
| List ticket templates with defaults |
| Create a new ticket with template, account, assignee |
| Update ticket status, assignee, deadline, description |
Related MCP server: Self-Hosted Supabase MCP Server
Setup
1. Install
git clone https://github.com/throxy-labs/customeros-mcp.git
cd customeros-mcp
bun install # or npm install
bun run build # or npm run build2. Environment Variables
Contact bergen@throxy.com for access credentials.
Set these in your shell or .env:
CUSTOMEROS_SUPABASE_URL=<provided>
CUSTOMEROS_SUPABASE_ANON_KEY=<provided>
CUSTOMEROS_BERGEN_EMPLOYEE_ID=<your-employee-uuid> # optional, for get_my_tickets3. Configure MCP Client
Claude Code — add to your .mcp.json or Claude Code settings:
{
"mcpServers": {
"customeros": {
"command": "node",
"args": ["/path/to/customeros-mcp/dist/index.js"],
"env": {
"CUSTOMEROS_SUPABASE_URL": "https://your-project.supabase.co",
"CUSTOMEROS_SUPABASE_ANON_KEY": "your-anon-key",
"CUSTOMEROS_BERGEN_EMPLOYEE_ID": "your-employee-uuid"
}
}
}
}Usage Examples
Once connected, your MCP client can call tools like:
list_tickets(status: "todo")
create_ticket(template: "email", account: "Acme", title: "March Campaign", assignee: "bergen")
update_ticket(ticket: "TK-320", status: "backlog")
get_ticket(id: "TK-492")Ticket descriptions support markdown (## headers, - lists, bold) and are automatically converted to HTML for the CustomerOS UI.
Supabase Schema
Expects these tables in your Supabase project:
accounts— id, name, statusteam_members— id, name, role, teamtickets— id, identifier, title, description, status, template, account_id, account_name, employee_id, employee_name, deadline, custom_fields, created_atclient_notes— id, content, author_name, account_id, created_atticket_templates— slug, label, description, default_employee_name, default_deadline_days, fields, sort_order
License
MIT
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Connectors
MCP server for interacting with the Supabase platform
Official Airtable MCP server — database and operations layer for agents.
MCP server for customer-io
API-first CRM for LLMs - contacts, companies, deals and activities over a native MCP server.
Related MCP Servers
- AlicenseNot gradedqualityNot gradedmaintenanceAn MCP server that provides tools for interacting with Supabase databases, storage, and edge functions.45MIT
- AlicenseAqualityDmaintenanceA protocol server that enables interaction with self-hosted Supabase instances directly from development environments, allowing database introspection, management of migrations, auth users, and storage through MCP clients like IDE extensions.21138MIT
- AlicenseNot gradedqualityDmaintenanceA runtime-configurable MCP server for Supabase databases that enables dynamic tool creation through JSON configuration. Build custom database operations (select, insert, update, delete) without writing code, with built-in authentication and template support.12 npm11MIT
- AlicenseNot gradedqualityDmaintenanceMCP server for Supabase, enabling database CRUD, storage management, auth administration, project management, edge functions, and secrets via 31 tools.10 npmMIT