FAI Legal Research Assistant MCP
An AI legal research and drafting assistant for Pakistani law that searches an indexed corpus of statute sections and court judgments, answers with exact statutory text and real citations, and drafts court documents from templates. It supports tools for searching judgments, statutes, and retrieving drafting templates.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://failegal.site/mcpWhat its tools do
5 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Official MCP Registry namespace is tied to failegal.site ·
- Passed Endpoint is on the registry namespace domain ·
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Finding the governing section of a Pakistani statute and quoting its text exactly
- Finding Pakistani precedent on a point with verified citations
- Drafting court documents like bail petitions or writs from templates
- Checking whether a remembered citation is real before filing
Source and maintenance
Protocol and capabilities
- Server
- fai-legal 1.0.0
- MCP protocol negotiated in check
- 2025-11-25
- Tools
- 5 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {
"listChanged": true
}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
5 advertised
search_judgments — Search Pakistani judgments
Find reported judgments (case law, precedents) of Pakistani courts: Supreme Court of Pakistan, Lahore, Sindh, Peshawar, Balochistan and Islamabad High Courts, Federal Shariat Court and others. Use for any request like "Supreme Court judgment on bike snatching", "case law on pre-arrest bail mala fide", "precedent on specific performance". Returns citation (e.g. 2022 SCMR 1577), court, year, parties, judges, provisions and a sentence from the court's own judgment, ranked by relevance; off-topic matches are dropped, so an empty list means no on-point judgment was found. Pakistan only.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"court": {
"enum": [
"Federal Constitutional Court",
"Supreme Court",
"Lahore High Court",
"Islamabad High Court",
"Peshawar High Court",
"Sindh High Court",
"Balochistan High Court",
"Federal Shariat Court",
"AJK courts",
"Gilgit-Baltistan",
"Tribunals"
],
"type": "string",
"description": "Only this court. Omit to search all Pakistani courts."
},
"limit": {
"type": "integer",
"default": 5,
"maximum": 5,
"minimum": 1,
"description": "How many judgments to return (max 5)."
},
"query": {
"type": "string",
"maxLength": 300,
"minLength": 3,
"description": "The legal issue or facts in plain English, e.g. \"motorcycle snatched at gunpoint robbery conviction\"."
},
"year_to": {
"type": "integer",
"maximum": 2100,
"minimum": 1947,
"description": "Latest year of the report."
},
"year_from": {
"type": "integer",
"maximum": 2100,
"minimum": 1947,
"description": "Earliest year of the report."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"results",
"note"
],
"properties": {
"note": {
"type": "string"
},
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"citation",
"court",
"year",
"decided_on",
"parties",
"judges",
"case_no",
"outcome",
"provisions",
"headnote",
"summary",
"relevance"
],
"properties": {
"year": {
"type": [
"number",
"null"
]
},
"court": {
"type": "string"
},
"judges": {
"type": [
"string",
"null"
]
},
"case_no": {
"type": [
"string",
"null"
]
},
"outcome": {
"type": [
"string",
"null"
]
},
"parties": {
"type": [
"string",
"null"
]
},
"summary": {
"type": [
"string",
"null"
]
},
"citation": {
"type": "string"
},
"headnote": {
"type": [
"string",
"null"
]
},
"relevance": {
"type": [
"number",
"null"
]
},
"decided_on": {
"type": [
"string",
"null"
]
},
"provisions": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}{
"title": "Search Pakistani judgments",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}search_statutes — Search Pakistani statutes
Find the sections of Pakistani laws relevant to a question: Pakistan Penal Code (PPC), Code of Criminal Procedure (CrPC), Code of Civil Procedure (CPC), the Constitution, Contract Act, Limitation Act, Qanun-e-Shahadat, family, tax, labour and provincial laws. Use for "punishment for snatching a motorcycle", "which section covers cheque dishonour", "bail in a non-bailable offence". Understands everyday words (murder finds qatl-i-amd, s.302 PPC). Returns section text with its citation.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"query"
],
"properties": {
"act": {
"type": "string",
"maxLength": 120,
"description": "Only search this act, e.g. \"Code of Criminal Procedure\"."
},
"limit": {
"type": "integer",
"default": 5,
"maximum": 10,
"minimum": 1
},
"query": {
"type": "string",
"maxLength": 300,
"minLength": 2,
"description": "The question or topic, or a section reference like \"section 302 PPC\"."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"results",
"note"
],
"properties": {
"note": {
"type": "string"
},
"results": {
"type": "array",
"items": {
"type": "object",
"required": [
"citation",
"act",
"section",
"heading",
"chapter",
"text",
"scanned_copy"
],
"properties": {
"act": {
"type": "string"
},
"text": {
"type": "string"
},
"chapter": {
"type": [
"string",
"null"
]
},
"heading": {
"type": [
"string",
"null"
]
},
"section": {
"type": "string"
},
"citation": {
"type": "string"
},
"scanned_copy": {
"type": "boolean"
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}{
"title": "Search Pakistani statutes",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_statute_section — Get a section of a Pakistani law
Return the full text of one section or article of a Pakistani law when the act and number are known, e.g. act "PPC", section "392"; act "Constitution", section "199".
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"act",
"section"
],
"properties": {
"act": {
"type": "string",
"maxLength": 120,
"minLength": 2,
"description": "Act name or common short form: PPC, CrPC, CPC, Constitution, Contract Act, Qanun-e-Shahadat..."
},
"section": {
"type": "string",
"maxLength": 20,
"minLength": 1,
"description": "Section or article number, e.g. \"489-F\", \"199\"."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"found",
"sections",
"note"
],
"properties": {
"note": {
"type": "string"
},
"found": {
"type": "boolean"
},
"message": {
"type": "string"
},
"sections": {
"type": "array",
"items": {
"type": "object",
"required": [
"citation",
"act",
"section",
"heading",
"chapter",
"text",
"scanned_copy"
],
"properties": {
"act": {
"type": "string"
},
"text": {
"type": "string"
},
"chapter": {
"type": [
"string",
"null"
]
},
"heading": {
"type": [
"string",
"null"
]
},
"section": {
"type": "string"
},
"citation": {
"type": "string"
},
"scanned_copy": {
"type": "boolean"
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}{
"title": "Get a section of a Pakistani law",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}list_drafting_templates — List Pakistani legal drafting templates
List FAI's reviewed Pakistani legal drafting templates (legal notice, plaint, bail application, written statement, affidavit, agreements, family and rent matters and more). Use when the user wants to draft a Pakistani legal document; then call get_drafting_template with the chosen id.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"filter": {
"type": "string",
"default": "",
"maxLength": 80,
"description": "Optional words to narrow the list, e.g. \"bail\" or \"notice\"."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"count",
"templates",
"note"
],
"properties": {
"note": {
"type": "string"
},
"count": {
"type": "number"
},
"templates": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"name",
"category",
"description",
"forum"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"forum": {
"type": "string"
},
"category": {
"type": "string"
},
"description": {
"type": "string"
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false
}{
"title": "List Pakistani legal drafting templates",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_drafting_template — Get a Pakistani legal drafting template
Return one reviewed template: its structure, the facts that must be collected first, and the standard wording for its Pakistani forum. Ask the user for any missing facts, never invent them, then fill the template.
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"template_id"
],
"properties": {
"template_id": {
"type": "string",
"maxLength": 80,
"minLength": 2,
"description": "An id from list_drafting_templates, e.g. \"legal-notice\"."
}
}
}{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"found",
"note"
],
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"note": {
"type": "string"
},
"forum": {
"type": "string"
},
"found": {
"type": "boolean"
},
"message": {
"type": "string"
},
"category": {
"type": "string"
},
"template": {
"type": "string"
}
},
"additionalProperties": false
}{
"title": "Get a Pakistani legal drafting template",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
90-day uptime
A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.
- 2026-11-07: 1 of 1 checks answered
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 1048 ms
- 95th percentile latency
- 1048 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 1048 ms · metadata changed · 5 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http fai-legal-research-assistant-mcp https://failegal.site/mcpCodex
codex mcp add fai-legal-research-assistant-mcp --url https://failegal.site/mcpCursor
{
"mcpServers": {
"fai-legal-research-assistant-mcp": {
"url": "https://failegal.site/mcp"
}
}
}Cline
{
"mcpServers": {
"fai-legal-research-assistant-mcp": {
"type": "streamableHttp",
"url": "https://failegal.site/mcp",
"disabled": false
}
}
}VS Code
{
"servers": {
"fai-legal-research-assistant-mcp": {
"type": "http",
"url": "https://failegal.site/mcp"
}
}
}Gemini CLI
gemini mcp add --transport http fai-legal-research-assistant-mcp https://failegal.site/mcpClaude Desktop
https://failegal.site/mcpWindsurf
{
"mcpServers": {
"fai-legal-research-assistant-mcp": {
"serverUrl": "https://failegal.site/mcp"
}
}
}Let your agent find its tools
Find servers like FAI Legal Research Assistant MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other documentation and reference servers
Do you run FAI Legal Research Assistant MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.