clio-analytics-mcp-server
v0.2.0
Published
Headless Model Context Protocol (MCP) server for the Clio Manage API v4. Refresh-token auth via env — no interactive OAuth, no keychain. Built for Analytics Model.
Maintainers
Readme
clio-analytics-mcp-server
Headless Model Context Protocol server for the Clio Manage API v4, built for the Analytics Model platform.
Unlike interactive Clio MCP servers, this one does no browser OAuth and uses no OS keychain. It authenticates entirely from environment variables using a refresh token captured once at connection-creation time — which is exactly what a multi-tenant backend that spawns the server per query needs.
Auth model
Clio refresh tokens do not expire, so a single captured refresh token is valid indefinitely. The server caches the access token in-process and refreshes ~60s before expiry.
Required env:
CLIO_CLIENT_ID # app-wide (Clio App Key)
CLIO_CLIENT_SECRET # app-wide (Clio App Secret)
CLIO_REFRESH_TOKEN # per-firm, captured during the OAuth connect flowOptional env:
CLIO_REGION # us (default) | eu | ca | auRun
CLIO_CLIENT_ID=... CLIO_CLIENT_SECRET=... CLIO_REFRESH_TOKEN=... \
npx -y clio-analytics-mcp-serverOr as a connector entry:
{
"command": "npx",
"args": ["-y", "clio-analytics-mcp-server"],
"env": {
"CLIO_CLIENT_ID": "...",
"CLIO_CLIENT_SECRET": "...",
"CLIO_REFRESH_TOKEN": "...",
"CLIO_REGION": "us"
}
}Tools (read-only)
| Tool | Description |
|---|---|
| clio_who_am_i | Authenticated user + firm — confirms the connection is live |
| list_matters | Matters, filterable by status / text query |
| get_matter | Single matter by ID |
| search_contacts | Contacts by name, email, or company |
| get_contact | Single contact by ID |
| list_documents | Documents, filterable by matter / name |
| list_tasks | Tasks, filterable by matter / status / due-date range |
| list_calendar_entries | Calendar entries in a date range |
| list_time_entries | Billable time entries (activities, type=TimeEntry) |
| get_billing_summary | Bills for a matter (total, balance, issue date) |
| list_users | Firm users (attorneys and staff) |
Read-only by design — an analytics platform should not mutate a firm's live data by accident. Write tools can be added later behind an explicit opt-in flag.
Build
npm install
npm run build # → build/
npm run inspect # MCP InspectorLicense
MIT
