clio-mcp-server

LROC-NY/clio-mcp-server

3.2

If you are the rightful owner of clio-mcp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

The Clio MCP Server is a cross-platform server designed to integrate Clio legal practice management with AI assistants like Claude, providing seamless access to Clio's API resources.

Tools
19
Resources
0
Prompts
0

Clio MCP Server

A Model Context Protocol (MCP) server for integrating Clio legal practice management with AI assistants like Claude.

Features

āœ… Fully Implemented

  • šŸ” OAuth 2.0 Authentication: Secure token-based authentication
  • šŸŒ Multi-region Support: US, EU, CA, and AU Clio instances
  • šŸ“ Matter Management: Create, read, update matters
  • šŸ‘„ Contact Management: Full CRUD operations with email/phone fields
  • āœ… Task Management: Create and manage tasks
  • šŸ“… Calendar Integration: Access calendar entries
  • ā±ļø Time Tracking: Activities and time entries
  • šŸ’° Billing: Access bills and financial data
  • šŸ“„ Document Management: Upload, download, list documents and folders
  • šŸ’¬ Communications: Log and track client communications
  • šŸ”§ Custom Fields: Read and update custom field values

āš ļø Limited Support

  • Clio Grow: Only lead submission API available (requires separate inbox_lead_token)

āŒ Not Available (No Public API)

  • Clio Draft Features:
    • Document templates
    • Court forms
    • eSignatures
    • Document automation
    • These features are only available through the Clio web interface

Quick Start

Installation

# Clone the repository
git clone https://github.com/LROC-NY/clio-mcp-server.git
cd clio-mcp-server

# Install dependencies
npm install

Configuration

  1. Get Clio API Credentials:

    • Log in to Clio
    • Go to Settings → Developer Applications
    • Create a new application or use existing
    • Copy Client ID and Client Secret
  2. Configure the Server:

Create clio-config.json:

{
  "clientId": "YOUR_CLIENT_ID",
  "clientSecret": "YOUR_CLIENT_SECRET",
  "region": "US"
}

Or use environment variables (.env):

CLIO_CLIENT_ID=your_client_id
CLIO_CLIENT_SECRET=your_client_secret
CLIO_REGION=US
  1. Get Access Token:
# Get OAuth URL
node oauth-helpers/get-auth-url.js

# Visit the URL, authorize, and get the code
# Exchange code for token
node oauth-helpers/exchange-code.js YOUR_AUTH_CODE

Platform Setup

Claude Code

Add to your Claude Code configuration:

claude mcp add-json clio '{
  "type": "stdio",
  "command": "node",
  "args": ["/path/to/clio-mcp-server/src/index.js"],
  "env": {
    "CLIO_CLIENT_ID": "your_client_id",
    "CLIO_CLIENT_SECRET": "your_client_secret"
  }
}'

Claude Desktop

Add to your Claude Desktop MCP settings with the appropriate configuration.

Available Tools

Core Management

  • get_matters - Retrieve legal matters
  • get_contacts - Retrieve contacts with emails/phones
  • get_tasks - Retrieve tasks
  • create_task - Create new tasks
  • get_activities - Retrieve time entries
  • get_calendar_entries - Retrieve calendar events

Document Management

  • list_documents - List documents
  • get_document - Get document details
  • upload_document - Upload new document
  • download_document - Download document
  • delete_document - Delete document
  • list_folders - List document folders
  • create_folder - Create new folder

Financial

  • get_bills - Retrieve bills
  • get_trust_accounts - Get trust account information

Communications

  • get_contact_communications - Get communication history
  • log_communication - Log a new communication

Custom Fields

  • get_custom_fields - Get custom field definitions
  • get_matter_with_custom_fields - Get matter with custom field values
  • update_custom_field - Update custom field value

Clio Grow (Limited)

  • submit_lead_to_inbox - Submit lead to Clio Grow (requires inbox_lead_token)

Testing

Run the test suite:

# Test basic connectivity
node tests/test-basic.js

# Test specific features
node tests/test-corrected.js

# Test contact management
node tests/test-contact-emails.js

API Limitations

Clio Draft

Clio Draft does not provide a public API. Features like document templates, court forms, and eSignatures are only available through the Clio web interface.

Clio Grow

Only the lead submission endpoint is available. Full lead management requires using the Clio Grow web interface.

Rate Limits

Clio API has rate limiting. The server includes automatic retry logic for rate-limited requests.

Project Structure

clio-mcp-server/
ā”œā”€ā”€ src/
│   ā”œā”€ā”€ index.js              # Main MCP server
│   ā”œā”€ā”€ api.js                # API client
│   ā”œā”€ā”€ auth.js               # OAuth handling
│   ā”œā”€ā”€ config.js             # Configuration loader
│   └── tools/
│       ā”œā”€ā”€ additional-tools.js       # Bills, users, etc.
│       ā”œā”€ā”€ client-communication.js   # Contact management
│       ā”œā”€ā”€ custom-fields.js          # Custom fields
│       ā”œā”€ā”€ document-management.js    # Documents/folders
│       └── clio-grow-fixed.js       # Lead submission
ā”œā”€ā”€ oauth-helpers/            # OAuth flow scripts
ā”œā”€ā”€ tests/                    # Test scripts
└── clio-config.json         # Configuration file

Troubleshooting

"No access token" error

  • Run the OAuth flow to get a fresh token
  • Tokens expire after 30 days

404 errors on API calls

  • Verify the endpoint exists in Clio's API documentation
  • Check if the feature requires additional Clio subscriptions
  • Some features (Clio Draft) have no API access

Connection errors

  • Verify your Clio region setting (US/EU/CA/AU)
  • Check network connectivity
  • Ensure API credentials are correct

Contributing

Contributions welcome! Please:

  1. Fork the repository
  2. Create a feature branch
  3. Submit a pull request

License

MIT License - see LICENSE file for details

Support