Gorelo MCP Server
MCP server for Gorelo's PSA (Professional Services Automation) REST API - ticket, client, contact, contract, asset, and time-tracking visibility - for AI assistants and the WYRE Conduit gateway.
Authentication
Generate an API key for your Gorelo organization and send it as the X-API-Key header - this server handles that on every request. There is no token exchange.
Configuration
| Env var | Description |
|---|---|
GORELO_API_KEY | Gorelo Public API key for the tenant. |
GORELO_REGION | us (default) or au - your account's regional API host. |
MCP_TRANSPORT | stdio (default) or http. |
AUTH_MODE | env (default, reads the vars above) or gateway (credentials arrive per-request via X-Gorelo-* headers, injected by the Conduit gateway). |
CONDUIT_S2S_SECRET | When set, the HTTP transport requires a valid X-Gateway-S2S header (Conduit sidecar auth) on every /mcp request. |
LOG_LEVEL | debug | info (default) | warn | error. |
Tools
Tickets
gorelo_list_tickets- list tickets, filterable by status/client/priority/type/assignee/contact/tag/group/keyword/date range.gorelo_get_ticket- get a single ticket's full detail.gorelo_list_ticket_statuses- list configured ticket statuses.gorelo_list_ticket_tags- list configured ticket tags.gorelo_list_ticket_types- list configured ticket types.gorelo_list_ticket_comments- list comments on a ticket.gorelo_get_ticket_comment- get a single comment on a ticket.gorelo_list_ticket_conversations- list a ticket's main thread, side conversations, and approvals.gorelo_get_ticket_approval- get a single approval's status and approvers.
Clients
gorelo_list_clients- list clients.gorelo_get_client- get a single client.gorelo_list_client_locations- list a client's locations.
Contacts
gorelo_list_contacts- list contacts, optionally filtered by client.gorelo_get_contact- get a single contact.
Contracts
gorelo_list_contracts- list billing contracts and their service lines.
Assets
gorelo_list_assets- list agent (managed device) assets.gorelo_get_asset- get a single agent asset.gorelo_list_custom_assets- list custom (non-agent) assets.
Time Tracking
gorelo_list_time_entries- list logged time across tickets and tasks.gorelo_get_time_entry- get a single time entry.gorelo_list_billing_roles- list configured billing roles.gorelo_list_work_types- list configured work types.
Organization
gorelo_list_users- list users (technicians).gorelo_list_groups- list technician groups.
Scope
This is a v1 read-only surface: every tool is a GET against Gorelo's Public API. Every write action (creating or updating tickets/comments/clients/contacts/time entries, posting external alerts, uploading attachments, and all delete endpoints) is out of scope for this release and can be added as a follow-up once there's a concrete need for it.
GET /v1/invoices/{id}/pdf is also out of scope: it returns a binary PDF rather than JSON, and this wave's connectors treat binary report/document endpoints as a separate concern from structured data visibility.
Development
npm install
npm run build
npm test
npm run lint # tsc --noEmit
Docker
docker build -t gorelo-mcp .
docker run -p 8080:8080 \
-e GORELO_API_KEY=... \
gorelo-mcp