Command Palette

Search for a command to run...

UnylyUnyly
Browse all

CustomerOS Server

FreeNot checked

A local MCP server for managing CustomerOS tickets, accounts, team members, and notes, backed by Supabase.

GitHubEmbed

About

A local MCP server for managing CustomerOS tickets, accounts, team members, and notes, backed by Supabase.

README

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_accounts List all accounts with status
get_account Find account by name (fuzzy search)
list_team List team members with roles
list_tickets List tickets, optionally filtered by status
get_my_tickets List your open tickets
get_ticket Get full ticket details by ID
list_notes List client notes for an account
list_templates List ticket templates with defaults
create_ticket Create a new ticket with template, account, assignee
update_ticket Update ticket status, assignee, deadline, description

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 build

2. Environment Variables

Contact [email protected] 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_tickets

3. 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, status
  • team_members — id, name, role, team
  • tickets — id, identifier, title, description, status, template, account_id, account_name, employee_id, employee_name, deadline, custom_fields, created_at
  • client_notes — id, content, author_name, account_id, created_at
  • ticket_templates — slug, label, description, default_employee_name, default_deadline_days, fields, sort_order

License

MIT

from github.com/brgmry/customeros-mcp

Installing CustomerOS Server

This server has no published package — it is built from source. Open the repository and follow its README.

▸ github.com/brgmry/customeros-mcp

FAQ

Is CustomerOS Server MCP free?

Yes, CustomerOS Server MCP is free — one-click install via Unyly at no cost.

Does CustomerOS Server need an API key?

No, CustomerOS Server runs without API keys or environment variables.

Is CustomerOS Server hosted or self-hosted?

A hosted option is available: Unyly runs the server in the cloud, no local setup required.

How do I install CustomerOS Server in Claude Desktop, Claude Code or Cursor?

Open CustomerOS Server on unyly.org, pick your client tab (Claude Desktop, Claude Code, Cursor) and press Install — the config is generated automatically, no JSON editing.

Related MCPs

Compare CustomerOS Server with

Not sure what to pick?

Find your stack in 60 seconds

Author?

Embed badge for your README

Browse similar

All development MCPs