Legalis MCP Server

Legalis MCP Server

MCP server for Legalis, a Brazilian legal document AI that enables attorneys to manage cases, generate legal documents, search legislation, and more via natural language.

Category
Visit Server

README

Legalis MCP Server

Assistente jurídico com IA para advogados brasileiros

Leia em Português

MCP (Model Context Protocol) server for Legalis — Brazilian legal document AI for attorneys.

Connect Claude (or any MCP-compatible client) to your Legalis account and interact with cases, generate legal documents, search legislation, and more using natural language.


Quick start

1. Install

pip install legalis-mcp
# or with uv:
uv tool install legalis-mcp

2. Authenticate

legalis-mcp auth

This opens your browser. Log in to Legalis normally — tokens are saved to ~/.legalis/credentials.json (owner-readable only).

3. Configure Claude

Add to your Claude configuration (~/.claude/claude_desktop_config.json for Claude Desktop, or claude_code_config.json for Claude Code):

{
  "mcpServers": {
    "legalis": {
      "command": "legalis-mcp",
      "args": ["serve"]
    }
  }
}

4. Use

In Claude, try:

  • "Liste meus casos no Legalis"
  • "Crie um caso de rescisão indireta para João Silva"
  • "Gere a seção de fundamentos jurídicos da peça X do caso Y"
  • "Pesquise legislação trabalhista sobre justa causa"
  • "Quantas gerações ainda tenho disponíveis este mês?"

Available tools

Cases

Tool Description
list_cases List cases (paginated, filterable by status)
get_case Get case details by ID
create_case Create a new case
update_case Update case fields
search_cases Full-text search across cases
delete_case Delete a case permanently

Legal documents

Tool Description
list_legal_documents List peças processuais for a case
get_legal_document Get a document with all sections
create_legal_document Create a new legal document
generate_section AI-generate a document section (fatos, fundamentos, pedidos…)
update_section_text Manually edit a document section
get_case_context Get case context (facts, parties, evidence)
update_case_context Update case context
delete_legal_document Delete a legal document
export_legal_document_docx Export a document as DOCX

Events & Tasks

Tool Description
create_case_event Create an event on a case (internal or client-visible)
list_case_events List events for a case
delete_case_event Delete a case event
create_case_task Create a task with due date and priority
list_case_tasks List tasks for a case
update_case_task Update a task's fields
complete_case_task Mark a task as complete
delete_case_task Delete a task
list_upcoming_tasks List upcoming tasks across all cases
list_overdue_tasks List all overdue tasks

Other

Tool Description
run_interview AI-guided case intake interview
list_templates List available document templates
get_template Get template details and sections
search_legislation Search Brazilian legislation (LexML)
get_my_usage Check AI quota and billing period usage

API coverage

The table below maps every Legalis backend endpoint to its MCP tool (when available).

Cases

Endpoint Method MCP Tool
/api/cases GET list_cases
/api/cases POST create_case
/api/cases/{id} GET get_case
/api/cases/{id} PUT update_case
/api/cases/{id} DELETE delete_case
/api/cases/search GET search_cases
/api/cases/{id}/overview GET
/api/cases/{id}/portal-token POST / DELETE

Legal documents

Endpoint Method MCP Tool
/api/cases/{id}/legal-documents GET list_legal_documents
/api/cases/{id}/legal-documents POST create_legal_document
/api/cases/{id}/legal-documents/{doc} GET get_legal_document
/api/cases/{id}/legal-documents/{doc} DELETE delete_legal_document
/api/cases/{id}/legal-documents/{doc}/sections/{key}/generate POST generate_section
/api/cases/{id}/legal-documents/{doc}/sections/{key}/text PUT update_section_text
/api/cases/{id}/legal-documents/{doc}/export/docx GET export_legal_document_docx

Case context

Endpoint Method MCP Tool
/api/cases/{id}/context GET get_case_context
/api/cases/{id}/context PUT update_case_context
/api/cases/{id}/context/history GET

Tasks

Endpoint Method MCP Tool
/api/cases/{id}/tasks GET list_case_tasks
/api/cases/{id}/tasks POST create_case_task
/api/cases/{id}/tasks/{task} PUT update_case_task
/api/cases/{id}/tasks/{task} DELETE delete_case_task
/api/cases/{id}/tasks/{task}/complete POST complete_case_task
/api/tasks/upcoming GET list_upcoming_tasks
/api/tasks/overdue GET list_overdue_tasks

Events

Endpoint Method MCP Tool
/api/cases/{id}/events GET list_case_events
/api/cases/{id}/events POST create_case_event
/api/cases/{id}/events/{event} DELETE delete_case_event

Templates & Legislation

Endpoint Method MCP Tool
/api/templates GET list_templates
/api/templates/{id} GET get_template
/api/legislacao GET search_legislation

Usage

Endpoint Method MCP Tool
/api/plans/my-usage GET get_my_usage

Not yet covered

Endpoint Notes
/api/cases/{id}/overview BFF endpoint — case + tasks + events in one call
/api/cases/{id}/portal-token Share case status with clients via public link
/api/cases/{id}/context/history Context version history
/api/users/me User profile read/update
/api/users/settings Notification and UI preferences
/api/users/documents Uploaded documents (non-generated)
/api/voice-agent/* Voice assistant (plan-gated feature)
/api/corporates/{id}/users Team member management
/api/subordinates/invite Invite team members

CLI commands

legalis-mcp auth      # Authenticate via browser
legalis-mcp serve     # Start MCP server (stdio)
legalis-mcp status    # Verify authentication
legalis-mcp logout    # Remove stored credentials

Development

git clone <repo>
cd mcp
pip install -e ".[test]"

# Run unit tests (no external services needed)
pytest tests/unit/ -v

# Run integration tests (requires Docker)
cd ../integration && docker-compose up -d
cd ../mcp
LEGALIS_API_URL=http://localhost:8000 \
LEGALIS_ACCESS_TOKEN=<token> \
LEGALIS_REFRESH_TOKEN=<refresh> \
pytest tests/integration/ -v

Environment variables

Variable Default Description
LEGALIS_API_URL https://hai-production-612f.up.railway.app Backend URL
LEGALIS_ACCESS_TOKEN Pre-issued token (CI/test only)
LEGALIS_REFRESH_TOKEN Refresh token (CI/test only)
LEGALIS_CREDENTIALS_FILE ~/.legalis/credentials.json Credentials file path
LEGALIS_OAUTH_PORT 3742 Local OAuth callback port

Security

  • Credentials are stored in ~/.legalis/credentials.json with 600 permissions (owner read/write only).
  • The OAuth redirect is restricted to http://localhost — open-redirect attacks are blocked at the backend.
  • Tokens are never stored in the MCP configuration file.
  • All API calls go through the existing Legalis backend — RBAC, rate limiting, and quotas apply normally.

Publishing

# PyPI
pip install build twine
python -m build
twine upload dist/*

# Then register at:
# - smithery.ai (MCP marketplace)
# - mcp.so (community directory)
# - github.com/modelcontextprotocol/servers (official list)

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured