This server provides Australian legal research capabilities through the Model Context Protocol, specializing in case law and legislation searches with intelligent document retrieval.
Search Functions
Search Australian case law and legislation using natural language queries (e.g., "negligence duty of care" or "Privacy Act")
Intelligent sorting that auto-detects case name queries vs topic searches, applying relevance sorting for specific cases and date sorting for topics
Filter by jurisdiction (Commonwealth, Victoria, Federal, or other)
Customize result limits (1-50 results)
Primary sources only—filters out journal articles and commentary
Document Retrieval
Fetch full-text documents from case and legislation URLs
Extract text from HTML and PDF sources, including OCR support for scanned PDFs
Preserve paragraph numbers (
[N]) for accurate pinpoint citationsExtract neutral citations (e.g.,
[2025] HCA 26)
Output Options
Multiple formats available: JSON, plain text, markdown, or HTML
Structured results including case titles, URLs, citations, jurisdiction, and dates
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AusLaw MCPsearch for recent cases on negligence duty of care"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
AusLaw MCP
Model Context Protocol (MCP) server for Australian and New Zealand legal research. Searches AustLII for case law and legislation, retrieves full-text judgements with paragraph numbers preserved, and supports OCR for scanned PDFs.
Status: ✅ Working MVP with intelligent search relevance
Features
Current Capabilities
✅ Case law search: Natural language queries across all Australian and NZ jurisdictions
✅ All jurisdictions: Commonwealth, all States/Territories (VIC, NSW, QLD, SA, WA, TAS, NT, ACT), and New Zealand
✅ Intelligent search relevance: Auto-detects case name queries vs topic searches
Case name queries (e.g., "Donoghue v Stevenson") use relevance sorting
Topic queries (e.g., "negligence duty of care") use date sorting for recent cases
✅ Multiple search methods: Title-only, phrase, boolean, proximity searches
✅ Pagination: Retrieve additional pages of results with offset parameter
✅ Legislation search: Find Australian and NZ legislation
✅ Primary sources only: Filters out journal articles and commentary
✅ Citation extraction: Extracts neutral citations
[2025] HCA 26and reported citations(2024) 350 ALR 123✅ jade.io search: Search jade.io for cases by cross-referencing AustLII results with jade.io metadata
✅ jade.io citation search: Find jade.io articles by neutral citation
✅ Multi-source merging: Merge and deduplicate results from AustLII and jade.io (jade.io preferred)
✅ jade.io URL support: Fetch document text from jade.io URLs (requires user access)
✅ jade.io article resolution: Resolve jade.io article metadata by ID
✅ jade.io citation lookup: Generate jade.io lookup URLs from neutral citations
✅ Paragraph preservation: Keeps
[N]paragraph numbers for pinpoint citations✅ Multiple formats: JSON, text, markdown, or HTML output
✅ Document retrieval: Full text from HTML and PDF sources (AustLII, jade.io)
✅ OCR support: Tesseract OCR fallback for scanned PDFs
Roadmap
✅ jade.io search: Search jade.io by cross-referencing AustLII results with jade.io article metadata (no API required)
✅ Multi-source integration: Merge and deduplicate results from AustLII and jade.io
🔜 Page numbers: Will extract page numbers from reported versions
🔜 Authority ranking: Will prioritise reported over unreported judgements
See ROADMAP.md for detailed development plans.
Quick Start
1. Clone and Build
For local development with hot reload:
2. Configure Your MCP Client
Important: You must build the project (
npm run build) before configuring any client. All clients launch the compileddist/index.js.
Claude Desktop
Edit your Claude Desktop configuration file:
OS | Path |
macOS |
|
Windows |
|
Linux |
|
Add the following (replace /path/to/auslaw-mcp with your actual install path):
Restart Claude Desktop after saving.
Claude Code (CLI)
Register the MCP server using the claude mcp add command:
To verify it was added:
Codex (OpenAI CLI)
Add auslaw-mcp as a server in your Codex MCP configuration file (~/.codex/config.json or project-level .codex/config.json):
Cursor
Open Settings → MCP and add a new server with:
Name:
auslaw-mcpCommand:
node /path/to/auslaw-mcp/dist/index.js
Or edit .cursor/mcp.json in your project root:
Docker Deployment
See docs/DOCKER.md for detailed Docker deployment instructions.
Kubernetes (k3s) Deployment
See k8s/README.md for complete Kubernetes deployment guide.
Example Queries for AI Assistants
Once the MCP is connected, you can ask an AI assistant like Claude natural language questions. Here are examples organised by use case:
Finding Recent Decisions
"What cases were decided by Australian courts today?"
"Show me the latest Federal Court decisions from this week"
"Find recent Victorian Supreme Court cases about contract disputes"
"What are the newest High Court judgments?"
Researching Legal Topics
"Find Australian cases about duty of care in professional negligence"
"Search for cases dealing with unfair dismissal in the construction industry"
"What are the leading cases on misleading and deceptive conduct under the ACL?"
"Find cases about breach of directors' duties in the last 2 years"
"Search for NSW cases involving defamation on social media"
Finding Specific Cases
"Find the Mabo case"
"Look up Donoghue v Stevenson"
"Find the High Court decision in Palmer v McGowan"
"Search for Re Wakim - the constitutional case about cross-vesting"
Comparing Jurisdictions
"Compare how Victoria and New South Wales courts have treated non-compete clauses"
"Find Queensland cases about adverse possession"
"What's the leading New Zealand case on unjust enrichment?"
Legislation Research
"Find the Privacy Act"
"Search for legislation about workplace health and safety in Victoria"
"What Commonwealth legislation deals with competition law?"
"Find the New Zealand equivalent of the Australian Consumer Law"
Deep Research Tasks
"Find cases that have considered section 52 of the Trade Practices Act and summarise how courts have interpreted 'misleading and deceptive conduct'"
"Research the development of the 'reasonable person' test in negligence across Australian jurisdictions"
"Find all High Court cases about constitutional implied freedoms in the last 10 years and identify the key principles"
jade.io Search
"Search jade.io for cases about negligence duty of care"
"Find the jade.io article for [2008] NSWSC 323"
"Search for Mabo v Queensland and include jade.io results"
Document Retrieval
"Fetch the full text of [2024] HCA 1 and summarise the key holdings"
"Get the judgment in Mabo v Queensland (No 2) and explain the doctrine of native title it established"
Available Tools
search_cases
Search Australian and New Zealand case law.
Parameters:
Parameter | Required | Description |
| Yes | Search query (e.g., "negligence duty of care", "Mabo v Queensland") |
| No | Filter: |
| No | Max results 1-50 (default 10) |
| No |
|
| No |
|
| No | Skip first N results for pagination (e.g., 50 for page 2) |
| No | Include jade.io results (merged and deduplicated) |
| No |
|
Search Methods:
Method | Description | Best For |
| AustLII decides | General use |
| Search case names only | Finding specific cases by name |
| Exact phrase match | Legal terms of art |
| All words must appear | Precise searches |
| Any word matches | Broad searches |
| Words near each other | Conceptual searches |
| Raw SINO query syntax | Power users |
Examples:
Find a specific case:
Recent NSW cases on a topic:
Exact phrase search:
Pagination (get results 51-100):
search_legislation
Search Australian and New Zealand legislation.
Parameters:
Parameter | Required | Description |
| Yes | Search query |
| No | Filter: |
| No | Max results 1-50 (default 10) |
| No |
|
| No |
|
| No | Skip first N results for pagination |
| No | Include jade.io results (merged and deduplicated) |
| No |
|
Example:
search_jade
Search jade.io for Australian case law by cross-referencing AustLII results with jade.io article metadata. Works without jade.io API access.
Parameters:
Parameter | Required | Description |
| Yes | Search query (e.g., "negligence duty of care") |
| No | Filter: |
| No | Max results 1-50 (default 10) |
| No |
|
| No |
|
Example:
search_jade_by_citation
Find a jade.io article by neutral citation. Resolves the citation to jade.io article metadata.
Parameters:
Parameter | Required | Description |
| Yes | Neutral citation (e.g., |
Example:
fetch_document_text
Fetch full text from a case or legislation URL. Supports HTML and PDF with OCR fallback.
Parameters:
Parameter | Required | Description |
| Yes | URL of the document (AustLII or jade.io) |
| No |
|
Example:
resolve_jade_article
Resolve metadata for a jade.io article by its numeric ID. Returns case name, neutral citation, jurisdiction, and year.
Parameters:
Parameter | Required | Description |
| Yes | jade.io article numeric ID (positive integer) |
Example:
jade_citation_lookup
Generate a jade.io lookup URL for a given neutral citation. Returns a URL that opens jade.io with the citation search.
Parameters:
Parameter | Required | Description |
| Yes | Neutral citation string (e.g., |
Example:
Jurisdictions
Code | Jurisdiction |
| Commonwealth of Australia |
| Federal courts (alias for cth) |
| Victoria |
| New South Wales |
| Queensland |
| South Australia |
| Western Australia |
| Tasmania |
| Northern Territory |
| Australian Capital Territory |
| New Zealand |
| All jurisdictions (no filter) |
Running Tests
Test scenarios include:
Negligence and duty of care - Personal injury law searches
Contract disputes - Commercial law and breach of contract
Constitutional law - High Court constitutional matters
Employment law - Unfair dismissal and workplace relations
Property and land law - Native title and land rights disputes
Project Structure
Deployment
Docker
Quick start:
See docs/DOCKER.md for detailed Docker deployment instructions.
Kubernetes (k3s)
Quick start:
See k8s/README.md for complete k3s deployment guide and DEPLOYMENT_CHECKLIST.md for a comprehensive deployment checklist.
Configuration
All configuration can be customized via environment variables:
AUSTLII_SEARCH_BASE- AustLII search endpointAUSTLII_REFERER- Referer headerAUSTLII_USER_AGENT- User agent stringAUSTLII_TIMEOUT- Request timeout (ms)JADE_BASE_URL- jade.io base URLJADE_USER_AGENT- jade.io user agent stringJADE_TIMEOUT- jade.io request timeout (ms)OCR_LANGUAGE- Tesseract OCR languageOCR_OEM,OCR_PSM- OCR engine settingsDEFAULT_SEARCH_LIMIT- Default search resultsMAX_SEARCH_LIMIT- Maximum search resultsDEFAULT_OUTPUT_FORMAT- Default format (json/text/markdown/html)DEFAULT_SORT_BY- Default sort order (auto/relevance/date)LOG_LEVEL- Logging level (0=DEBUG, 1=INFO, 2=WARN, 3=ERROR)
See config.yaml for defaults and .env.example for a template.
Data Sources and Attribution
This project retrieves legal data from publicly accessible databases.
AustLII (Australasian Legal Information Institute)
Website: https://www.austlii.edu.au
Terms of Use: https://www.austlii.edu.au/austlii/terms.html
AustLII provides free access to Australian and New Zealand legal materials
jade.io
Search integration works by cross-referencing AustLII results with jade.io article metadata
Maximum 5 concurrent jade.io article resolutions to avoid overwhelming the server
Users must have their own jade.io subscription for full document access
This tool does not bypass jade.io's access controls
Respects jade.io's terms of service
Fair Use
Please use this tool responsibly:
Implement reasonable delays between requests
Cache results when appropriate
Don't overload public legal databases
Consider supporting AustLII through donations
Contributing
See CONTRIBUTING.md for full contribution guidelines and AGENTS.md for AI agent instructions.
Key principles:
Primary sources only (no journal articles)
Citation accuracy is paramount
All tests must pass before committing
Real-world testing (hits live AustLII)
Disclaimer
This tool is for legal research purposes only and does not constitute legal advice.
Search results may not be comprehensive and should not be relied upon as a complete statement of the law
AustLII databases may not include all decisions or the most recent updates
Always verify citations and check for subsequent treatment of cases
Legal advice should be sought from a qualified legal practitioner for any specific legal matter
The authors and contributors accept no liability for any loss or damage arising from use of this tool
License
MIT