Mycase MCP vs Melta UI
A side-by-side look at the Mycase MCP and Melta UI MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Mycase MCP for legal work as a local process; choose Melta UI for legal as a local process. You can also run both side by side in one mcpServers block.
Which MCP server should you choose?
Choose Mycase MCP when
- You need dedicated capabilities in the Legal domain.
- You prefer a local stdio subprocess transport.
- You have the keys it needs:
MYCASE_CLIENT_ID, MYCASE_CLIENT_SECRET. - You want tools like
authenticate, auth-status, logout.
Choose Melta UI when
- You need dedicated capabilities in the Legal domain.
- You prefer a local stdio subprocess transport.
- You want tools like
get_token, get_component, check_rule.
Feature & specification comparison
Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Legal | Legal |
| Quality signal | 63/100 · Good | 68/100 · Great |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | Not declared | Not declared |
| Pricing | Not declared | Not declared |
| Required env vars | MYCASE_CLIENT_IDMYCASE_CLIENT_SECRET | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 6 | 202 |
| Directory activity | 1 views 0 installs 0 upvotes | 3 views 0 installs 0 upvotes |
| Tools | 17 | 6 |
| Full listing | View Mycase MCP | View Melta UI |
Tools & capabilities
Mycase MCP tools 17
authenticateOpen the MyCase OAuth authorization page in the browser and store the resulting tokens encrypted on disk. Must be called before any other MyCase tools.auth-statusCheck whether the server is authenticated with MyCase and when the token expires.logoutRemove the stored MyCase tokens from disk.list-casesList cases from MyCase, optionally filtered by status.get-caseGet full details for a single MyCase case by its ID.create-caseCreate a new case in MyCase.search-contactsSearch for clients (people) in MyCase by name, email, or phone.get-contactGet full details for a single client (person) by ID.list-documentsList documents in MyCase, optionally filtered by case.get-document-urlGet the download URL for a document by its ID.list-tasksList tasks from MyCase. Always fetches every page before filtering, so the result is the firm's complete task set for the given filters. Check the 'complete' field on the response: if it is false the list is missing records and must not be treated as authoritative.create-taskCreate a new task in MyCase. Requires a name, due date, priority, and at least one staff member ID.- +5 more on the listing page
Melta UI tools 6
get_tokenGet a design token by dot-path. Returns the token object with its value and class mapping.get_componentGet component metadata including variants, sizes, accessibility requirements, HTML sample, per-state specs (stateSpecs: disabled/loading/open/empty etc. — each with delta class strings + aria changes), and anatomy parts (overlay/container/th etc. with element/roles/class). Prefer these structured fields over inferring states from the HTML sample.check_ruleCheck class strings against this design system's prohibition rules. Returns violations with reasons and alternatives.check_htmlLint a full HTML/JSX source against melta-ui rules — the same checks as CI and the PostToolUse hook (class rules + html-attr rules + composition rules for HTML). Use this AFTER generating UI code to self-verify before presenting it. Response always includes coverage info (manual rules cannot be auto-checked).searchSearch across tokens and components by keyword. Matches against names, values, class strings, and descriptions. Returns up to 20 results (truncated flag when more matched).get_rulesGet melta-ui prohibition rules from rules.json (107 total). Use this to retrieve manual/contextual rules that check_rule cannot auto-detect. Supports filtering by category, severity, or detector.
Ready-to-paste client configs
Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
Mycase MCP
{
"mcpServers": {
"mycase-mcp": {
"command": "npx",
"args": [
"-y",
"@oktopeak/mycase-mcp"
],
"env": {
"MYCASE_CLIENT_ID": "YOUR_MYCASE_CLIENT_ID_HERE",
"MYCASE_CLIENT_SECRET": "YOUR_MYCASE_CLIENT_SECRET_HERE"
}
}
}
}
Melta UI
{
"mcpServers": {
"melta-ui": {
"command": "npx",
"args": [
"-y",
"melta-ds-mcp"
]
}
}
}
Frequently asked questions
Mycase MCP is categorized under Legal and uses a local stdio subprocess. Melta UI belongs to Legal and uses a local stdio subprocess. Pick Mycase MCP for legal work and Melta UI for legal.
Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.
Mycase MCP has no declared pricing — check the project's own site. Melta UI has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.
Yes. MCP clients support multiple servers: add mycase-mcp and melta-ui as separate keys in the same mcpServers object, and your assistant will call tools from either one.
On AllMCPs, Mycase MCP has a quality signal of 63/100 (Good) with 1 views, 0 installs and 6 GitHub stars. Melta UI has 68/100 (Great) with 3 views, 0 installs and 202 GitHub stars.