MCP and agents

MCP (Model Context Protocol) lets an external AI agent connect to Law1 as you. Claude, Cursor, Microsoft Copilot Studio, and other MCP clients can then search issues and open judgement text for one Org you choose. Law1 hosts the remote server, so there is nothing to run locally and no API key to copy.

The agent acts as your User on that Org — the same content grants, the same view pool, and the same abuse limits as the app. It cannot write, and it cannot see your other orgs.

Which plans can connect

Org planMCP agents
FreeCannot connect
TrialCan connect
BasicCan connect
ProCan connect

Trial can use MCP, but Trial cannot use the Research API. Those two machine surfaces have separate rules. Free cannot connect to either.

Any Member or Owner of an eligible Org can connect — the agent is not Owner-only. A User with no eligible Org cannot finish the connect step: create an Org, or have an Owner upgrade a Free Org.

Connect Claude

Claude Code and the Claude apps (claude.ai and Claude Desktop) all add Law1 as a custom connector with the server URL https://law1.in/mcp.

For Claude Code:

claude mcp add --transport http law1 https://law1.in/mcp

Then run /mcp in Claude Code and complete the Law1 sign-in. For the Claude apps, open Connectors, choose Add custom connector, and enter the same URL.

Connect Cursor

In Cursor, add a remote MCP server with the URL https://law1.in/mcp (Customize → MCP, or ~/.cursor/mcp.json):

{
  "mcpServers": {
    "law1": {
      "url": "https://law1.in/mcp"
    }
  }
}

Cursor has one pre-registered public client on Law1, so you do not create OAuth credentials yourself:

  • client_id: LLTuCFuiSeszBnkkdgzzzOAZsfxPObar
  • Registered redirect URIs, exactly:
    • https://www.cursor.com/agents/mcp/oauth/callback (Cursor web and Cursor Agents)
    • http://localhost:8787/callback (Cursor desktop app)

To use that client in mcp.json, add the auth block:

{
  "mcpServers": {
    "law1": {
      "url": "https://law1.in/mcp",
      "auth": {
        "CLIENT_ID": "LLTuCFuiSeszBnkkdgzzzOAZsfxPObar"
      }
    }
  }
}

Connect Microsoft Copilot Studio

A Copilot Studio agent connects to Law1 as a tool. Open the agent, then:

  1. Go to the agent's Tools page and select Add a tool → Model Context Protocol.
  2. Enter a Name (for example, Law1) and a short Description, and set the Server URL to https://law1.in/mcp.
  3. Under authentication, choose OAuth 2.0, then Dynamic discovery. Law1 supports dynamic client registration, so there is no client ID or client secret to create or paste.
  4. Select Create, then Next, create the connection, and choose Add and configure. Copilot Studio opens the Law1 sign-in in your browser — approve one Org as in Approving a connection.
  5. Review the tools Copilot lists (search_issues and get_judgement). All tools are on by default; to disable one, turn off Allow all on the MCP server's settings page and toggle the individual tools.

Copilot Studio's UI changes often. For the current, authoritative steps, see Microsoft's Add tools and resources from an MCP server to your agent.

Approving a connection

On first connect, your browser opens the Law1 sign-in — the same login and one-time code as the site, and no password. The consent page then:

  • lists only your Trial, Basic, or Pro memberships, by Org name and Org code;
  • pre-selects your Org when you have exactly one eligible Org;
  • lets you Approve on one Org, or Deny to create nothing.

The chosen Org is pinned to that connected agent. A second Org needs a second connect, and switching orgs in the browser does not retarget a connected agent.

What an agent can do

Two read tools and two prompts. There is no write, no issue body, no PDF, and no judgement search.

KindNameWhat it does
Toolsearch_issuesSearches issues with the same filters as issue search. Returns one markdown page of issue cards (10 per page). Does not open a body and does not spend a view.
Toolget_judgementOpens one judgement body by pdf_hash or Law1 citation. Returns the judgement text as markdown. Spends a view on the first body open of that judgement in the period.
Promptsearch_issuesTells the host to call the search tool with the query. Does not run the search itself.
Promptget_judgementTells the host to call the body tool with the id. Does not fetch the body itself.

Successful tool results are plain markdown text — no structured JSON, and no remaining-pool numbers. A tool that cannot complete returns an error with a code; look the code up on Error codes.

Shared pools and limits

An agent is your User, so it shares the app’s limits:

  • Org view pool — opening a judgement body spends one distinct-case view on the pinned Org, the same pool the app uses. Re-opening the same judgement in the same period does not spend another view. Search never spends a view.
  • 80 body opens per User per day — every successful body return counts, including a free re-open, on the India calendar day. The cap is per person and shared across the app, the Research API, and agents.
  • Org request burst — the same per-Org bucket as the app and the Research API. Seats do not enlarge it. Over the bucket, wait for the retry window and continue.

A body block, a daily cap, or an exhausted pool comes back as a tool error with no body. No success result includes a remaining-quota number.

Manage connected agents

Your own connected agents, on Account. Account has a Connected agents section, after Sessions. Each row shows the client and the pinned Org, marked Active or Expired, with Disconnect. You can disconnect only your own connected agents. Disconnect takes effect for tool calls right away, and Law1 does not send an email.

Every connected agent on an Org, for Owners. The Org menu has Connected agents for Owners, including after an Org lapses to Free. The page is /org/…/connected-agents. It lists every connected agent on the Org — expired ones too — with the member’s name and email, and an Owner can disconnect any of them. Members do not see the page.