All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- jade.io search integration via AustLII cross-referencing (no API access required)
search_jadeMCP tool for searching jade.io cases/legislationsearch_jade_by_citationMCP tool for finding jade.io articles by neutral citationsearchJade()function: searches by cross-referencing AustLII results with jade.io metadatasearchJadeByCitation()function: resolves jade.io articles by neutral citationdeduplicateResults()function: deduplicates by neutral citation, preferring jade.iomergeSearchResults()function: merges results from AustLII and jade.io
includeJadeparameter onsearch_casesandsearch_legislationtools for multi-source merging- Maximum 5 concurrent jade.io article resolutions to avoid overwhelming the server
- Graceful fallback: if jade.io resolution fails, AustLII results are still returned
- ESLint and Prettier for code quality enforcement
- SECURITY.md for responsible vulnerability disclosure
- CONTRIBUTING.md with development guidelines
- CHANGELOG.md for tracking changes
- Comprehensive project improvement documentation
- Linting and formatting scripts in package.json
- Test coverage support configuration
- Unit tests for AustLII search internals (isCaseNameQuery, determineSortMode, boostTitleMatches, extractReportedCitation)
- Unit tests for configuration module
- Updated dependencies to address security vulnerabilities
- Enhanced documentation structure
- Migrated ESLint configuration from
.eslintrc.jsontoeslint.config.mjsfor ESLint v9 compatibility - Services now use custom error classes (AustLiiError, NetworkError, ParseError, OcrError) instead of generic Error
- Document fetcher now uses structured logger instead of console.warn/error
- Document fetcher now uses config and constants modules instead of hardcoded values
- Exported internal AustLII functions for testability
- Fixed 3 HIGH severity vulnerabilities in dependencies
- Added npm audit to development workflow
0.1.0 - 2024-12-01
- Initial MVP release
- AustLII search integration for Australian and NZ legal research
- Intelligent search relevance with auto-detection
- Case law search with jurisdiction filtering
- Legislation search capabilities
- Smart query detection (case names vs topic searches)
- Automatic sort mode selection (relevance vs date)
- Title matching boost for case name queries
- Full-text document retrieval (HTML and PDF)
- OCR support for scanned PDFs using Tesseract
- jade.io URL support for document fetching
- Citation extraction (neutral and reported formats)
- Paragraph number preservation for pinpoint citations
- Multiple output formats (JSON, text, markdown, HTML)
- Pagination support with offset parameter
- Multiple search methods (title, phrase, boolean, etc.)
- Comprehensive documentation (README, AGENTS, ROADMAP)
- Real-world integration tests (18 test scenarios)
- GitHub Actions CI/CD workflows
- TypeScript strict mode configuration
- MIT License
-
Search Tools:
search_cases- Search Australian and NZ case lawsearch_legislation- Search legislationfetch_document_text- Retrieve full text with OCR fallback
-
Jurisdictions Supported:
- Commonwealth (cth/federal)
- All Australian states and territories (VIC, NSW, QLD, SA, WA, TAS, NT, ACT)
- New Zealand (nz)
-
Smart Search:
- Auto-detects case name queries vs topic searches
- Relevance sorting for specific case lookups
- Date sorting for recent case research
- Title matching boost for better results
-
Citation Support:
- Neutral citations:
[2024] HCA 26 - Reported citations:
(2024) 350 ALR 123 - Paragraph numbers:
[N]format preservation
- Neutral citations:
- Node.js 18+ required
- TypeScript 5.9+ with strict mode
- Model Context Protocol (MCP) SDK 1.19+
- Vitest for testing
- Cheerio for HTML parsing
- Axios for HTTP requests
- Tesseract OCR for scanned PDFs
- Comprehensive README with usage examples
- AGENTS.md for AI-assisted development
- ROADMAP.md for planned features
- Architecture documentation
- 18 integration test scenarios
- Real-world API testing against AustLII
- Coverage of main use cases:
- Negligence and duty of care
- Contract disputes
- Constitutional law
- Employment law
- Property and land law