May 13, 2026 · 9 min read

MyCase MCP Server: Open-Source Claude Integration for Law Firms

The first open-source MCP connector for MyCase. Claude reads your cases, contacts, documents, calendar, and billing data directly from the MyCase API. Data stays on your infrastructure. Every interaction is logged. No content is routed through us, and no content is used to train external models.

If your firm runs on MyCase, you've probably hit a wall when trying to use Claude (or any general-purpose LLM) with your case data. There are two ways most firms have handled it so far:

  • Copy-paste: manually pull case notes or document text out of MyCase and paste it into Claude. Works for one-off tasks, fails the moment you want anything that touches multiple matters or runs on a schedule.
  • MyCase IQ: the AI feature built into the MyCase Pro and Advanced tiers. Lawyerist's review notes IQ supports only pre-configured prompts customized for specific tasks, which reduces hallucinations but caps what you can actually ask. You're not getting Claude. You're getting a vendor-curated subset.

Both approaches break the same way: they treat the AI as a separate product layered on top of MyCase. They don't give the AI structured, scoped, auditable access to your firm's actual data.

That's what an MCP server does. And as of May 2026, no one had shipped one for MyCase. So we built one, open-sourced it, and published it under MIT license on npm and the official MCP Registry.


What MCP changes

MCP (Model Context Protocol) is Anthropic's open standard for letting Claude talk to external systems. An MCP server is a small program that runs locally, holds credentials for one specific service, exposes a defined set of tools to Claude, and returns results inside the user's Claude session.

The architecture is the point. With an MCP server in front of MyCase:

  • The server runs on the attorney's own machine. OAuth tokens for MyCase live in an encrypted file under ~/.oktopeak-mycase/, not on a third-party server.
  • Claude reads MyCase data through the same OAuth-scoped API that any sanctioned MyCase integration would use. Nothing screen-scrapes, nothing sits between MyCase and Claude.
  • Every tool call writes a line to a local audit log. Timestamp, tool name, input parameters, result count, MyCase user ID. Append-only. Aligned with what ABA Formal Opinion 512 expects from AI use on client data.
  • No data passes through Oktopeak. The server is a piece of code your firm runs. It does not call home.

The cheaper, faster, more flexible AI experience is on one side of that diagram. The "vendor-curated AI feature with limited prompts" is on the other.


What the connector covers

18 tools total: 15 feature tools across the eight resource areas a practicing firm actually uses MyCase for, plus 3 authentication helpers (authenticate, auth-status, logout). Read access spans everything; write access is deliberately scoped to a small set of low-liability operations.

Tool MyCase Resource What it does
list-casesCasesList cases, filter by status (Open/Closed/Pending)
get-caseCasesFull case record by ID
create-caseCases (write)Create a case with clients, staff, and metadata
search-contactsContactsSearch by name, email, or company
get-contactContactsFull contact record
list-tasksTasksFilter by case, due date, status
create-taskTasks (write)Create a task on a case with due date and priority
list-documentsDocumentsDocuments on a case
get-document-urlDocumentsPre-signed download link
list-calendar-eventsCalendarHearings and deadlines by date range
log-callCalls (write)Log a call note to a case (experimental, off by default)
list-staffStaffList firm staff members
get-staffStaffFull staff member record by ID
list-time-entriesTimeBillable hours by case
get-billing-summaryInvoicesOutstanding invoices and trust balances (read-only)

Two MCP resources expose state to Claude at session start: mycase://auth/status shows the current connection state and firm name, and mycase://compliance/info shows an ABA Opinion 512 reminder. Both are read-only and surface in compatible MCP clients automatically.


Why writes are scoped

The connector reads everything but writes in only three places: creating tasks, creating cases, and logging call notes. The last of those (log-call) is experimental and stays off unless you explicitly enable it with MYCASE_EXPERIMENTAL_TOOLS=1, because its API endpoint is still being verified. Contacts, documents, calendar events, staff, time entries, and billing are all read-only.

This is deliberate. An LLM that can mutate contact records, modify time entries, or alter invoices is a malpractice incident waiting for a trigger. A wrong tool call doesn't just cost you data — in legal practice it can cost you a bar complaint or a fee dispute. Tasks, case creation, and call notes are the right places to let an AI write because they're easy to review, low-stakes if wrong, and they're what attorneys actually want to automate (capturing follow-ups during a Claude session, opening a matter from an intake conversation, logging a call summary).

If your firm has a specific need to expand write scope (for example, time-entry creation from email triage), the connector is MIT-licensed and the architecture supports adding tools without modifying the audit, auth, or rate-limit layers. We've built that for firms in our legal AI integration engagements.


ABA Opinion 512 alignment

ABA Formal Opinion 512 (issued July 2024) sets baseline expectations for how a lawyer using generative AI handles client data: informed consent, supervision, confidentiality, and the ability to demonstrate what happened. The connector implements three of those structurally:

  • Append-only audit log at ~/.oktopeak-mycase/audit.log. Every tool call writes a line: timestamp, tool name, parameters, result count, MyCase user ID. The log doesn't mutate. It is what your bar wants to see if you are ever asked to demonstrate AI use.
  • Encrypted credential storage using AES-256-GCM. Tokens never sit in plaintext, environment variables, or shell history.
  • Confidentiality boundary. The MCP server runs locally. The OAuth scope is your firm's. No data crosses Oktopeak's infrastructure. Your engagement with Anthropic for Claude is governed by Anthropic's own enterprise terms (which prohibit training on customer-submitted content).

For the deeper read on Opinion 512 and the chatbot-specific implications, see What ABA Formal Opinion 512 Actually Requires From Your Law Firm's AI Chatbot.


Setup

Five minutes, assuming you already have MyCase Advanced and Claude Desktop or Claude Code.

  1. Email MyCase support to request an OAuth application. They'll ask for: a redirect URI (use http://127.0.0.1:5678/callback, which matches the connector default), the read/write access level you want, and an admin email on your MyCase account. MyCase support issues a client ID and secret directly.
  2. Install the connector globally: npm install -g @oktopeak/mycase-mcp
  3. Add the server to your Claude Desktop config (claude_desktop_config.json) or Claude Code MCP config, with MYCASE_CLIENT_ID, MYCASE_CLIENT_SECRET, and a 64-character hex ENCRYPTION_KEY in the env block. Restart Claude.
  4. Inside Claude, call the authenticate tool. A browser tab opens for MyCase login. Once you approve, the loopback callback completes the OAuth flow and tokens are encrypted to ~/.oktopeak-mycase/tokens.enc.
  5. Try a test query: "List my open cases." Claude calls list-cases, returns the result, and an entry appears in ~/.oktopeak-mycase/audit.log.

Full setup walkthrough including the troubleshooting list lives in the README at github.com/oktopeak/mycase-mcp.


Limitations

  • MyCase Advanced tier required. The MyCase Open API is gated to the Advanced tier ($109/user/month with annual billing). The connector cannot work around this — Pro and Basic accounts cannot get API keys.
  • Single firm, single user per installation. One OAuth scope per running instance. Multi-firm or multi-user scenarios need a separate, hosted MCP server architecture; we build those as part of integration engagements but the open-source version is for individual installs.
  • stdio transport only in v1. No hosted HTTP MCP server, no remote access. Claude Desktop, Claude Code, and any other MCP-compatible client running on the same machine, that's the surface area.
  • No write access on cases, contacts, documents, calendar, time entries, or billing. By design (see "Why writes are scoped" above).
  • Rate-limited at 30 req/min by default. MyCase doesn't publish a hard rate limit; we use a conservative cap and respect Retry-After headers when MyCase returns 429.

Who this is for

Solo and small-firm attorneys on MyCase Advanced who want to use Claude for the things general LLMs are actually good at: drafting from precedent, summarizing matters, extracting data from documents, building case timelines, triaging intake, and combining MyCase data with other tools (court docket APIs, internal docs, jurisdiction-specific research) inside a single Claude session.

If you've already paid for MyCase Advanced (which includes IQ), you're not replacing IQ with this. You're getting a second AI surface that doesn't have IQ's prompt restrictions, that can be combined with other MCP servers, and that is fully auditable.

If you need this in production at firm scale (multi-user, hosted, custom workflows, integration with iManage/NetDocuments/document review tools), that's the work we do. Legal AI integration engagements typically run 4-6 weeks and include a hardened deployment of the open-source connector plus the firm-specific extensions.


Ship details

  • Source: github.com/oktopeak/mycase-mcp (TypeScript, MIT)
  • npm: @oktopeak/mycase-mcp@1.0.4 (npm install -g @oktopeak/mycase-mcp)
  • MCP Registry: io.github.oktopeak/mycase-mcp v1.0.4 (auto-ingested by PulseMCP and mcpservers.org)
  • Companion connector: if your firm uses Clio instead of (or alongside) MyCase, the Clio MCP connector is built on the same architecture

Questions, issues, feature requests: GitHub issues. Need this deployed at firm scale or extended for a specific workflow: book a call.

Legal Tech

Related Articles

View all Legal Tech articles ➔

Book a Call