Pakistan Case Law
Search 197,000+ Pakistani judgments by keyword, citation, or the legal question they settle.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"caselaw": {
"url": "https://pakistancaselaw.com/mcp"
}
}
}원격 엔드포인트
https://pakistancaselaw.com/mcpstreamable-http할 수 있는 일
도구 목록
도구 (7)
🟢caselaw_search(query, limit, offset, sort, response_format)
Full-text search of Pakistani judgments (Supreme Court & High Courts, 1970 onward). 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. Use sort='newest' when you need the current state of the law (later judgments supersede as statutes are amended), or sort='court' for the most authoritative first. Returns ranked cases with id, title, citation, court, year, a snippet, and the public URL. For an exact report citation use caselaw_lookup_citation. To read a case, pass its id to caselaw_get_case.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"description": "Keywords, e.g. 'bail murder 302' or 'khula dower'",
"maxLength": 200,
"minLength": 2,
"title": "Query",
"type": "string"
},
"limit": {
"default": 20,
"maximum": 50,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"offset": {
"default": 0,
"minimum": 0,
"title": "Offset",
"type": "integer"
},
"sort": {
"default": "relevance",
"description": "relevance (default: nearest on the point, then court/bench/recency/citations) | newest (latest law first — useful because amendments supersede) | court (most senior court first)",
"title": "Sort",
"type": "string"
},
"response_format": {
"$ref": "#/$defs/Fmt",
"default": "markdown"
}
},
"required": [
"query"
],
"$defs": {
"Fmt": {
"enum": [
"markdown",
"json"
],
"title": "Fmt",
"type": "string"
}
},
"title": "caselaw_searchArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "caselaw_searchOutput"
}🟢caselaw_search_questions(query, limit, offset, response_format)
Find judgments by the QUESTION they settle, rather than by words they contain. Every AI 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 an AI 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 written by an AI reading the judgment. They are a finding aid, not a holding: cite the judgment, never the question. Pass an id to caselaw_get_case to read it.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"description": "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'",
"maxLength": 200,
"minLength": 2,
"title": "Query",
"type": "string"
},
"limit": {
"default": 20,
"maximum": 50,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"offset": {
"default": 0,
"minimum": 0,
"title": "Offset",
"type": "integer"
},
"response_format": {
"$ref": "#/$defs/Fmt",
"default": "markdown"
}
},
"required": [
"query"
],
"$defs": {
"Fmt": {
"enum": [
"markdown",
"json"
],
"title": "Fmt",
"type": "string"
}
},
"title": "caselaw_search_questionsArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "caselaw_search_questionsOutput"
}🟢caselaw_lookup_citation(journal, year, page, limit, offset, ...)
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.
입력 스키마
{
"type": "object",
"properties": {
"journal": {
"description": "Law-report code, e.g. 'PLD', 'SCMR', 'CLC'",
"maxLength": 30,
"minLength": 1,
"title": "Journal",
"type": "string"
},
"year": {
"maximum": 2100,
"minimum": 1900,
"title": "Year",
"type": "integer"
},
"page": {
"anyOf": [
{
"minimum": 1,
"type": "integer"
},
{
"type": "null"
}
],
"default": null,
"description": "Page/serial number in the report (optional)",
"title": "Page"
},
"limit": {
"default": 20,
"maximum": 50,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"offset": {
"default": 0,
"minimum": 0,
"title": "Offset",
"type": "integer"
},
"response_format": {
"$ref": "#/$defs/Fmt",
"default": "markdown"
}
},
"required": [
"journal",
"year"
],
"$defs": {
"Fmt": {
"enum": [
"markdown",
"json"
],
"title": "Fmt",
"type": "string"
}
},
"title": "caselaw_lookup_citationArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "caselaw_lookup_citationOutput"
}🟢caselaw_get_case(case_id, section, response_format)
Fetch one judgment by id. section='summary' (default) returns metadata + the AI 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).
입력 스키마
{
"type": "object",
"properties": {
"case_id": {
"description": "Numeric judgment id (from a search/lookup/graph result)",
"minimum": 1,
"title": "Case Id",
"type": "integer"
},
"section": {
"$ref": "#/$defs/Section",
"default": "summary",
"description": "'summary' = metadata + AI headnote (cheap); 'full' = + judgment text"
},
"response_format": {
"$ref": "#/$defs/Fmt",
"default": "markdown"
}
},
"required": [
"case_id"
],
"$defs": {
"Fmt": {
"enum": [
"markdown",
"json"
],
"title": "Fmt",
"type": "string"
},
"Section": {
"enum": [
"summary",
"full"
],
"title": "Section",
"type": "string"
}
},
"title": "caselaw_get_caseArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "caselaw_get_caseOutput"
}🟢caselaw_get_citations(case_id, limit, offset, response_format)
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.
입력 스키마
{
"type": "object",
"properties": {
"case_id": {
"description": "Numeric judgment id",
"minimum": 1,
"title": "Case Id",
"type": "integer"
},
"limit": {
"default": 20,
"maximum": 50,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"offset": {
"default": 0,
"minimum": 0,
"title": "Offset",
"type": "integer"
},
"response_format": {
"$ref": "#/$defs/Fmt",
"default": "markdown"
}
},
"required": [
"case_id"
],
"$defs": {
"Fmt": {
"enum": [
"markdown",
"json"
],
"title": "Fmt",
"type": "string"
}
},
"title": "caselaw_get_citationsArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "caselaw_get_citationsOutput"
}🟢caselaw_get_cited_by(case_id, limit, offset, response_format)
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.
입력 스키마
{
"type": "object",
"properties": {
"case_id": {
"description": "Numeric judgment id",
"minimum": 1,
"title": "Case Id",
"type": "integer"
},
"limit": {
"default": 20,
"maximum": 50,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"offset": {
"default": 0,
"minimum": 0,
"title": "Offset",
"type": "integer"
},
"response_format": {
"$ref": "#/$defs/Fmt",
"default": "markdown"
}
},
"required": [
"case_id"
],
"$defs": {
"Fmt": {
"enum": [
"markdown",
"json"
],
"title": "Fmt",
"type": "string"
}
},
"title": "caselaw_get_cited_byArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "caselaw_get_cited_byOutput"
}🟢caselaw_most_cited(limit, offset, response_format)
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.
입력 스키마
{
"type": "object",
"properties": {
"limit": {
"default": 20,
"maximum": 50,
"minimum": 1,
"title": "Limit",
"type": "integer"
},
"offset": {
"default": 0,
"minimum": 0,
"title": "Offset",
"type": "integer"
},
"response_format": {
"$ref": "#/$defs/Fmt",
"default": "markdown"
}
},
"$defs": {
"Fmt": {
"enum": [
"markdown",
"json"
],
"title": "Fmt",
"type": "string"
}
},
"title": "caselaw_most_citedArguments"
}출력 스키마
{
"type": "object",
"properties": {
"result": {
"title": "Result",
"type": "string"
}
},
"required": [
"result"
],
"title": "caselaw_most_citedOutput"
}커뮤니티
증거