Pakistan Case Law
REMOTE · PAKISTANCASELAW.COM · SCANNED OCT 2
Search 230,000+ Pakistani court judgments by keyword, citation, or the legal question they settle.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security83
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability75
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 2300 tokens (~328/item across 7 items; 7 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management50
- Stability check failed: schema churn in the 30 days we've observed: 0 tool removals, 7 breaking changes, 0 auth/transport breaks, 0 additions. See how to fix → Fail
Tool Coverage85
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 47% of tool parameters carry a description.Partial
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 7 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 8 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the Pakistan Case Law MCP server?
Pakistan Case Law is a hosted endpoint at https://pakistancaselaw.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · pakistancaselaw.com
claude mcp add --transport http com-pakistancaselaw-caselaw 'https://pakistancaselaw.com/mcp'
{
"mcpServers": {
"com-pakistancaselaw-caselaw": {
"url": "https://pakistancaselaw.com/mcp"
}
}
} {
"servers": {
"com-pakistancaselaw-caselaw": {
"type": "http",
"url": "https://pakistancaselaw.com/mcp"
}
}
} [mcp_servers.com-pakistancaselaw-caselaw] url = "https://pakistancaselaw.com/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"com-pakistancaselaw-caselaw": {
"type": "remote",
"url": "https://pakistancaselaw.com/mcp",
"enabled": true
}
}
} openclaw mcp add com-pakistancaselaw-caselaw --url 'https://pakistancaselaw.com/mcp' --transport streamable-http
mcp_servers:
com-pakistancaselaw-caselaw:
url: "https://pakistancaselaw.com/mcp" {
"McpServers": {
"com-pakistancaselaw-caselaw": {
"Transport": "http",
"Url": "https://pakistancaselaw.com/mcp"
}
}
} assistant mcp add com-pakistancaselaw-caselaw -t streamable-http -u 'https://pakistancaselaw.com/mcp'
{
"mcpServers": {
"com-pakistancaselaw-caselaw": {
"type": "http",
"url": "https://pakistancaselaw.com/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 1 Oct 26 0
- Server version: 1.4.3 → 1.4.4 functional
- Server version: 1.4.1 → 1.4.3 functional
- 30 Sept 26 +1
- Tool “caselaw_get_case” rewrote its description, which is the text the model reads security
- Tool “caselaw_search” rewrote its description, which is the text the model reads security
- Tool “caselaw_search_questions” rewrote its description, which is the text the model reads security
- Schema quality: 271 → 326 ▼ functional
- Tool coverage: 31% → 47% ▲ functional
- Server version: 1.3.0 → 1.4.1 functional
- “caselaw_search” added an optional parameter “court” cosmetic
- “caselaw_search” added an optional parameter “journal” cosmetic
- “caselaw_search” added an optional parameter “judge” cosmetic
- “caselaw_search” added an optional parameter “year_from” cosmetic
- “caselaw_search” added an optional parameter “year_to” cosmetic
- “caselaw_search_questions” added an optional parameter “court” cosmetic
- “caselaw_search_questions” added an optional parameter “judge” cosmetic
- “caselaw_search_questions” added an optional parameter “year_from” cosmetic
- “caselaw_search_questions” added an optional parameter “year_to” cosmetic
- “caselaw_get_case” reworded the description of “section” cosmetic
- “caselaw_search” reworded the description of “query” cosmetic
- “caselaw_search” reworded the description of “sort” cosmetic
- “caselaw_search” made “query” optional cosmetic
- 28 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 25 Sept 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 16 Sept 26 0
- Tool “caselaw_search_questions” rewrote its description, which is the text the model reads security
- 15 Sept 26 0
- The server rewrote its instructions, which are the text every model session reads security
- Tool “caselaw_search” rewrote its description, which is the text the model reads security
- 14 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 43 to 47.
- 11 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 33 to 37.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 2 Oct 2026 · Probed https://pakistancaselaw.com/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=pakistancaselaw.com | CN=YE1,O=Let's Encrypt,C=US | 15 Aug 2026 | 13 Nov 2026 | ECDSA 256 | ECDSA-SHA384 | 6fa5f1e95b951523c0333037675ed9b1659 |
| SANs: pakistancaselaw.com | ||||||
| CN=YE1,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 5ddd70dd31f801c85c186a7a04b80afe |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
Background: What to check on a remote MCP endpoint →
DNSSEC secure
Validation of pakistancaselaw.com. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| com. | present | 19718 | 13 | Verified |
| pakistancaselaw.com. | present | 9577 | 13 | Verified |
| pakistancaselaw.com. | Verified address RRset verified with the apex keys |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=31536000; includeSubDomains |
| x-content-type-options | nosniff |
| x-frame-options | SAMEORIGIN |
| referrer-policy | strict-origin-when-cross-origin |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://pakistancaselaw.com/mcp | Verified | 200 | |
| http (plaintext) | http://pakistancaselaw.com/mcp | HTTPS enforced | 308 | https://pakistancaselaw.com/mcp |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
caselaw_get_case ~146
Fetch one judgment by id. section='summary' (default) returns metadata + the headnote (plain-language summary, the laws/provisions referred, and keyword tags) — read this first to judge relevance cheaply. section='full' additionally returns the judgment body text (capped at ~40,000 chars; the response flags body_truncated/body_chars_total when longer).
| Name | Type | Req | Description |
|---|---|---|---|
| case_id | integer | yes | Numeric judgment id (from a search/lookup/graph result) |
| response_format | string | – | – |
| section | string | – | 'summary' = metadata + headnote (cheap); 'full' = + judgment text |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
caselaw_get_citations ~138
Walk the citation graph FORWARD: list the in-corpus cases that THIS judgment cites (the precedents it relied on). Combine with caselaw_get_cited_by to traverse precedent backward and forward until a research question is resolved. Most useful on RECENT judgments: a 2024-25 case usually has nobody citing it yet, but its own citation list is a curated map of the established authority on the point.
| Name | Type | Req | Description |
|---|---|---|---|
| case_id | integer | yes | Numeric judgment id |
| limit | integer | – | – |
| offset | integer | – | – |
| response_format | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
caselaw_get_cited_by ~120
Walk the citation graph BACKWARD: list later cases that cite THIS judgment (how it was subsequently treated — followed, distinguished, relied upon). Returns newest first. Most useful on OLDER or landmark judgments: it shows whether the case is still followed and where the principle has been applied since. A leading case can have hundreds of citing cases.
| Name | Type | Req | Description |
|---|---|---|---|
| case_id | integer | yes | Numeric judgment id |
| limit | integer | – | – |
| offset | integer | – | – |
| response_format | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
caselaw_lookup_citation ~147
Find the judgment(s) at an exact law-report citation. Example: journal='PLD', year=1995, page=34 → PLD 1995 Supreme Court 34. Omit page to list everything reported in that journal+year. Returns the same case shape as caselaw_search.
| Name | Type | Req | Description |
|---|---|---|---|
| journal | string | yes | Law-report code, e.g. 'PLD', 'SCMR', 'CLC' |
| limit | integer | – | – |
| offset | integer | – | – |
| page | – | – | Page/serial number in the report (optional) |
| response_format | string | – | – |
| year | integer | yes | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
caselaw_most_cited ~73
List the most-cited (landmark) judgments in the corpus, ranked by how many other cases cite them. A good entry point for the leading authorities on Pakistani law.
| Name | Type | Req | Description |
|---|---|---|---|
| limit | integer | – | – |
| offset | integer | – | – |
| response_format | string | – | – |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
caselaw_search ~574
Full-text search of Pakistani judgments (Supreme Court, High Courts, Federal Shariat Court and tribunals, 1970 onward), with optional filters by court, judge, law report and year. Ranking follows how lawyers research: nearness to the legal point decides which cases are returned; among comparably-near cases, more senior court > larger bench > more recent > more cited. For the current state of the law, add year_from (e.g. 2025); use sort='court' for the most authoritative first. With no query, the filters list judgments newest first - e.g. court='Supreme Court' gives the latest Supreme Court judgments, journal='PLD' with year_from=year_to=2024 gives that volume, and sort='recently_added' alone shows what was added to the site most recently. Returns cases with id, title, citation, court, year, outcome and the public URL. For an exact report citation use caselaw_lookup_citation. To read a case, pass its id to caselaw_get_case.
| Name | Type | Req | Description |
|---|---|---|---|
| court | – | – | Only this court: 'Supreme Court', 'Lahore High Court' (or 'LHC'), 'Sindh High Court', 'Peshawar High Court', 'Islamabad High Court', 'Balochistan High Court', 'Federal Shariat Court', or a tribunal's… |
| journal | – | – | Only judgments reported in this law report: 'PLD', 'SCMR', 'CLC', 'YLR', 'PLC(CS)', 'PTD' ... With year_from/year_to it selects that volume, e.g. SCMR 2025. |
| judge | – | – | Only judgments where this judge sat on the bench. Spelling-tolerant: 'Asif Khosa', 'Qazi Faez Isa'. The reply names the judge it matched. |
| limit | integer | – | – |
| offset | integer | – | – |
| query | – | – | Keywords, e.g. 'bail murder 302' or 'khula dower'. May be left out when a filter is given. |
| response_format | string | – | – |
| sort | string | – | relevance (default: nearest on the point, then court/bench/recency/citations) | newest (the ~200 closest matches in strict date order) | court (most senior court first) | recently_added (newest addit… |
| year_from | – | – | Earliest year (inclusive) |
| year_to | – | – | Latest year (inclusive) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
caselaw_search_questions ~351
Find judgments by the QUESTION they settle, rather than by words they contain. Every judgment summary on this corpus records the questions that judgment actually decides — e.g. "Does delay in lodging the FIR by itself entitle the accused to bail?" This searches those questions, so it matches the shape a legal problem arrives in rather than the vocabulary a 1987 bench happened to use. COVERAGE IS PARTIAL: only some judgments have a summary with questions yet (the response's `coverage_note` gives the current live ratio, which keeps growing). An empty result means no *summarised* judgment matched — it does NOT mean no such judgment exists. Fall back to caselaw_search, which covers the whole corpus. The questions are prepared from the judgment text. They are a finding aid, not a holding: cite the judgment, never the question. Pass an id to caselaw_get_case to read it.
| Name | Type | Req | Description |
|---|---|---|---|
| court | – | – | Only this court, e.g. 'Supreme Court' or 'Lahore High Court' |
| judge | – | – | Only judgments where this judge sat on the bench (spelling-tolerant, e.g. 'Mansoor Ali Shah') |
| limit | integer | – | – |
| offset | integer | – | – |
| query | string | yes | The legal question or its subject, in the words a judgment would use — 'delay in lodging FIR', 'concurrent findings of fact', 'pre-arrest bail murder' |
| response_format | string | – | – |
| year_from | – | – | Earliest year (inclusive) |
| year_to | – | – | Latest year (inclusive) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | string | yes | – |
No examples provided.
What is the Pakistan Case Law MCP server?
Pakistan Case Law is an MCP server listed in the public MCP registry as com.pakistancaselaw/caselaw. Search 230,000+ Pakistani court judgments by keyword, citation, or the legal question they settle. This page covers its hosted endpoint (https://pakistancaselaw.com/mcp).
Is the Pakistan Case Law MCP server safe to use?
Pakistan Case Law scores 81 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the Pakistan Case Law MCP server expose?
Pakistan Case Law exposes 7 tools: caselaw_search, caselaw_search_questions, caselaw_lookup_citation, caselaw_get_case, caselaw_get_citations, and 2 more. Their descriptions and schemas cost roughly 1,549 tokens of context every time the server is loaded.
Does the Pakistan Case Law MCP server require authentication?
No. We connected to Pakistan Case Law without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the Pakistan Case Law MCP server still maintained?
Pakistan Case Law is still listed as active in the MCP registry. We last reached this channel on 2 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.