FAI Legal Research

Pakistani case law and statutes: Supreme Court and High Court judgments, laws, drafting templates.

Should I use this

Quality & Safety

A
Description quality
86%
Schema completeness
97%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Findings (1)

  • LOWTool 'get_statute_section' description lacks action verbin get_statute_section

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,900Tokens (tool definitions)
~3.0 KBTypical response size
Moderate attention impact (1.48% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "fai-legal": {
      "url": "https://failegal.site/mcp"
    }
  }
}

Remote endpoints

https://failegal.site/mcpstreamable-http

What it can do

Tool inventory

Tools (5)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢search_judgments(query, court, year_from, year_to, limit)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 3,
      "maxLength": 300,
      "description": "The legal issue or facts in plain English, e.g. \"motorcycle snatched at gunpoint robbery conviction\"."
    },
    "court": {
      "description": "Only this court. Omit to search all Pakistani courts.",
      "type": "string",
      "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"
      ]
    },
    "year_from": {
      "description": "Earliest year of the report.",
      "type": "integer",
      "minimum": 1947,
      "maximum": 2100
    },
    "year_to": {
      "description": "Latest year of the report.",
      "type": "integer",
      "minimum": 1947,
      "maximum": 2100
    },
    "limit": {
      "default": 5,
      "description": "How many judgments to return (max 5).",
      "type": "integer",
      "minimum": 1,
      "maximum": 5
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "citation": {
            "type": "string"
          },
          "court": {
            "type": "string"
          },
          "year": {
            "type": [
              "number",
              "null"
            ]
          },
          "decided_on": {
            "type": [
              "string",
              "null"
            ]
          },
          "parties": {
            "type": [
              "string",
              "null"
            ]
          },
          "judges": {
            "type": [
              "string",
              "null"
            ]
          },
          "case_no": {
            "type": [
              "string",
              "null"
            ]
          },
          "outcome": {
            "type": [
              "string",
              "null"
            ]
          },
          "provisions": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "headnote": {
            "type": [
              "string",
              "null"
            ]
          },
          "summary": {
            "type": [
              "string",
              "null"
            ]
          },
          "relevance": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "citation",
          "court",
          "year",
          "decided_on",
          "parties",
          "judges",
          "case_no",
          "outcome",
          "provisions",
          "headnote",
          "summary",
          "relevance"
        ],
        "additionalProperties": false
      }
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "results",
    "note"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢search_statutes(query, act, limit)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 300,
      "description": "The question or topic, or a section reference like \"section 302 PPC\"."
    },
    "act": {
      "description": "Only search this act, e.g. \"Code of Criminal Procedure\".",
      "type": "string",
      "maxLength": 120
    },
    "limit": {
      "default": 5,
      "type": "integer",
      "minimum": 1,
      "maximum": 10
    }
  },
  "required": [
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "results": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "citation": {
            "type": "string"
          },
          "act": {
            "type": "string"
          },
          "section": {
            "type": "string"
          },
          "heading": {
            "type": [
              "string",
              "null"
            ]
          },
          "chapter": {
            "type": [
              "string",
              "null"
            ]
          },
          "text": {
            "type": "string"
          },
          "scanned_copy": {
            "type": "boolean"
          }
        },
        "required": [
          "citation",
          "act",
          "section",
          "heading",
          "chapter",
          "text",
          "scanned_copy"
        ],
        "additionalProperties": false
      }
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "results",
    "note"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_statute_section(act, section)

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".

Input Schema

{
  "type": "object",
  "properties": {
    "act": {
      "type": "string",
      "minLength": 2,
      "maxLength": 120,
      "description": "Act name or common short form: PPC, CrPC, CPC, Constitution, Contract Act, Qanun-e-Shahadat..."
    },
    "section": {
      "type": "string",
      "minLength": 1,
      "maxLength": 20,
      "description": "Section or article number, e.g. \"489-F\", \"199\"."
    }
  },
  "required": [
    "act",
    "section"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "found": {
      "type": "boolean"
    },
    "message": {
      "type": "string"
    },
    "sections": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "citation": {
            "type": "string"
          },
          "act": {
            "type": "string"
          },
          "section": {
            "type": "string"
          },
          "heading": {
            "type": [
              "string",
              "null"
            ]
          },
          "chapter": {
            "type": [
              "string",
              "null"
            ]
          },
          "text": {
            "type": "string"
          },
          "scanned_copy": {
            "type": "boolean"
          }
        },
        "required": [
          "citation",
          "act",
          "section",
          "heading",
          "chapter",
          "text",
          "scanned_copy"
        ],
        "additionalProperties": false
      }
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "found",
    "sections",
    "note"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢list_drafting_templates(filter)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "filter": {
      "default": "",
      "description": "Optional words to narrow the list, e.g. \"bail\" or \"notice\".",
      "type": "string",
      "maxLength": 80
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "count": {
      "type": "number"
    },
    "templates": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "category": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "forum": {
            "type": "string"
          }
        },
        "required": [
          "id",
          "name",
          "category",
          "description",
          "forum"
        ],
        "additionalProperties": false
      }
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "count",
    "templates",
    "note"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢get_drafting_template(template_id)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "template_id": {
      "type": "string",
      "minLength": 2,
      "maxLength": 80,
      "description": "An id from list_drafting_templates, e.g. \"legal-notice\"."
    }
  },
  "required": [
    "template_id"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "found": {
      "type": "boolean"
    },
    "message": {
      "type": "string"
    },
    "id": {
      "type": "string"
    },
    "name": {
      "type": "string"
    },
    "category": {
      "type": "string"
    },
    "forum": {
      "type": "string"
    },
    "template": {
      "type": "string"
    },
    "note": {
      "type": "string"
    }
  },
  "required": [
    "found",
    "note"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded5 tools