CanLII MCP Server

MCP for CanLII: Canadian case law and legislation metadata (federal, provincial, territorial).

Remote serverstreamable-httpTypeScript

What is the CanLII MCP server?

Most database access work still happens through a UI a human drives. CanLII MCP server moves it into the conversation instead. MCP for CanLII: Canadian case law and legislation metadata (federal, provincial, territorial).

The short version

The hosted instance is public. No Vaquill token is required. Provide your own CanLII key one of two ways:

Getting it running

Because this one is hosted, setup is mostly authentication — you point your client at the endpoint and approve access. Nothing runs on your machine, so there is no runtime to keep patched.

The tools it exposes

The server publishes 7 tools. What each one is for:

  • list_case_databases — List all courts and tribunals in the CanLII collection
  • list_cases — Browse decisions from a specific court/tribunal database
  • get_case — Get metadata for a specific case (title, citation, date, keywords)
  • get_case_citations — Get cases cited by a case, cases citing it, or legislation it references
  • list_legislation_databases — List all statute and regulation databases
  • list_legislation — Browse statutes or regulations from a specific database
  • get_legislation — Get metadata for a specific piece of legislation

What it needs from you

Configuration is passed through the environment: CANLII_API, YOUR_CANLII_API_KEY, MCP_AUTH_TOKEN. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

Things to watch

  • Your data travels to the provider's service, so the usual questions apply about what you send and what they retain.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

How it compares

Plenty of database access servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. CanLII's toolset — list_case_databases, list_cases, get_case and 4 more — is a fair guide to whether it matches your workflow. It is maintained by Vaquill-AI; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Available tools

ToolWhat it does
list_case_databasesList all courts and tribunals in the CanLII collection
list_casesBrowse decisions from a specific court/tribunal database
get_caseGet metadata for a specific case (title, citation, date, keywords)
get_case_citationsGet cases cited by a case, cases citing it, or legislation it references
list_legislation_databasesList all statute and regulation databases
list_legislationBrowse statutes or regulations from a specific database
get_legislationGet metadata for a specific piece of legislation

How to install the CanLII MCP server

{
  "mcpServers": {
    "canlii": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@tomilashy/canlii-mcp"],
      "env": {
        "CANLII_API": "your_api_key"
      }
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

VariableDescriptionRequired
CANLII_APIConfiguration value read at startup.Optional
YOUR_CANLII_API_KEYCredential the server authenticates with.Yes
MCP_AUTH_TOKENCredential the server authenticates with.Yes

Example prompts to try

  • Use CanLII to list case databases.
  • Use CanLII to list cases.
  • Use CanLII to get case.

Frequently asked questions

It connects CanLII to MCP-compatible AI assistants such as Claude and Cursor, exposing 7 tools (list_case_databases, list_cases, get_case, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with CanLII directly.