MCP Server

FAI Legal Research

site.failegal/fai-legal
Legal & Compliance Search & Research Public & reachable MCP 2025-11-25

What this MCP does

Searches Pakistani statutes and judgments and provides reviewed templates for drafting Pakistani legal documents.

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.
Read only Idempotent
Input schema
{'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".'}}}
Output schema
{'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}
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".
Read only Idempotent
Input schema
{'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".'}}}
Output schema
{'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}
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.
Read only Idempotent
Input schema
{'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".'}}}
Output schema
{'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}
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 headnote, ranked by relevance; off-topic matches are dropped, so an empty list means no on-point judgment was found. Pakistan only.
Read only Idempotent
Input schema
{'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.'}}}
Output schema
{'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}
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.
Read only Idempotent
Input schema
{'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".'}}}
Output schema
{'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}
Added
get_drafting_template
Oct. 4, 2026, 2:40 a.m.
Added
list_drafting_templates
Oct. 4, 2026, 2:40 a.m.
Added
get_statute_section
Oct. 4, 2026, 2:40 a.m.
Added
search_statutes
Oct. 4, 2026, 2:40 a.m.
Added
search_judgments
Oct. 4, 2026, 2:40 a.m.