# clio-mcp

Connects Claude Code to Clio through MCP for work with matters, notes, documents, and billing. Useful when an agent needs live practice data.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 25
- Author: oktopeak
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/oktopeak/clio-mcp
- Updated: 2026-10-19
- HTML: https://affpapa.org/en/nevibecode/mcp/clio-mcp

## What it does

clio-mcp connects Claude Code to Clio through the Model Context Protocol. It exposes data about matters, custom fields, notes, contacts, documents, folders, tasks, calendar entries, and billing. The agent can query the Clio API instead of relying on manually copied records.

Tool calls are appended to the local `~/.clio-mcp/audit.log`, while the authentication token is encrypted at rest. Setup requires a registered Clio developer app and the values `CLIO_CLIENT_ID`, `CLIO_CLIENT_SECRET`, and `ENCRYPTION_KEY`. Without those credentials, the server cannot establish a Clio connection.

## Requirements
- Needs: Node.js (commands run via npx)
- Environment variables: `CLIO_CLIENT_ID`, `CLIO_CLIENT_SECRET`, `ENCRYPTION_KEY`, `CLIO_REDIRECT_PORT`, `CLIO_REGION`, `READ_ONLY`, `CLIO_API_BASE`, `CLIO_AUTH_URL`, `CLIO_TOKEN_URL`, `TOKEN_BROKER_URL` — keys and tokens: ask the human for the values, never commit them or put them in shared files.

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add --env CLIO_CLIENT_ID=<CLIO_CLIENT_ID> --env CLIO_CLIENT_SECRET=<CLIO_CLIENT_SECRET> --env ENCRYPTION_KEY=<ENCRYPTION_KEY> --env CLIO_REDIRECT_PORT=<CLIO_REDIRECT_PORT> --env CLIO_REGION=<CLIO_REGION> --transport stdio clio-mcp -- npx -y @oktopeak/clio-mcp
```
Replace <…> with your own values. 5 more environment variables are in the server README

### Codex

**Platform CLI**
```bash
codex mcp add clio-mcp --env CLIO_CLIENT_ID=<CLIO_CLIENT_ID> --env CLIO_CLIENT_SECRET=<CLIO_CLIENT_SECRET> --env ENCRYPTION_KEY=<ENCRYPTION_KEY> --env CLIO_REDIRECT_PORT=<CLIO_REDIRECT_PORT> --env CLIO_REGION=<CLIO_REGION> -- npx -y @oktopeak/clio-mcp
```
Replace <…> with your own values. 5 more environment variables are in the server README

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "clio-mcp": {
            "command": "npx",
            "args": [
                "-y",
                "@oktopeak/clio-mcp"
            ],
            "env": {
                "CLIO_CLIENT_ID": "<CLIO_CLIENT_ID>",
                "CLIO_CLIENT_SECRET": "<CLIO_CLIENT_SECRET>",
                "ENCRYPTION_KEY": "<ENCRYPTION_KEY>",
                "CLIO_REDIRECT_PORT": "<CLIO_REDIRECT_PORT>",
                "CLIO_REGION": "<CLIO_REGION>"
            }
        }
    }
}
```
Replace <…> with your own values. 5 more environment variables are in the server README

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "clio-mcp": {
            "type": "stdio",
            "command": "npx",
            "args": [
                "-y",
                "@oktopeak/clio-mcp"
            ],
            "env": {
                "CLIO_CLIENT_ID": "<CLIO_CLIENT_ID>",
                "CLIO_CLIENT_SECRET": "<CLIO_CLIENT_SECRET>",
                "ENCRYPTION_KEY": "<ENCRYPTION_KEY>",
                "CLIO_REDIRECT_PORT": "<CLIO_REDIRECT_PORT>",
                "CLIO_REGION": "<CLIO_REGION>"
            }
        }
    }
}
```
Replace <…> with your own values. 5 more environment variables are in the server README

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add -e CLIO_CLIENT_ID=<CLIO_CLIENT_ID> -e CLIO_CLIENT_SECRET=<CLIO_CLIENT_SECRET> -e ENCRYPTION_KEY=<ENCRYPTION_KEY> -e CLIO_REDIRECT_PORT=<CLIO_REDIRECT_PORT> -e CLIO_REGION=<CLIO_REGION> clio-mcp npx -y @oktopeak/clio-mcp
```
Replace <…> with your own values. 5 more environment variables are in the server README

## When to use it
- search Clio matters and contacts from the agent
- retrieve notes and custom fields for a matter
- inspect documents and folders through Claude Code
- review tasks, calendar entries, and billing data
- send Clio data actions through an MCP server

## Example prompts
- Find open Clio matters connected to this client.
- Show the notes and custom fields for the matter with this name.
- Check the documents, tasks, and billing records for this matter.

## Similar
- [MCP Toolbox for Databases](https://affpapa.org/en/nevibecode/mcp/googleapis-mcp-toolbox-for-databases.md) — MCP server · ★ 16717
- [PostHog MCP Server](https://affpapa.org/en/nevibecode/mcp/posthog-mcp-server.md) — MCP server · ★ 40409
- [OpenWork MCP Gateway](https://affpapa.org/en/nevibecode/mcp/openwork-mcp-gateway.md) — MCP server · ★ 24242
- [Keploy](https://affpapa.org/en/nevibecode/mcp/keploy.md) — MCP server · ★ 18727
- [Nhost](https://affpapa.org/en/nevibecode/mcp/nhost.md) — MCP server · ★ 9366
- [basebalance.cloud — x402 RPC & MCP gateway](https://affpapa.org/en/nevibecode/mcp/basebalancecloud-x402-rpc-mcp-gateway.md) — MCP server · ★ 7506

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
