MCP server providing retrieval-first government program information from official Canadian sources
npm install @fasterinnerlooper/plain-gov-mcpTagline: "Government information, retrieved and explained."
This MCP server provides government program information based solely on freshly retrieved documents from pre-approved sources. It operates on a strict retrieval-first principle, ensuring all responses are grounded in official sources without prior knowledge or assumptions.
``bash`
npm install
npm run build
npm run inspector # Test the server
See Deployment Guide for complete installation instructions.
- Retrieves verbatim text from pre-approved government URLs
- Provides retrieved text directly from official sources
- Performs conservative eligibility assessments using rules engine
- Includes source URLs and verification dates in all outputs
Strict compliance: No summaries, explanations, or answers without retrieval. Returns verbatim retrieved text only.
- Country + Province: Canada + Alberta
- Domains: Taxes & Benefits, Small Business Administration
- Programs: GST Credit, Canada Child Benefit, Alberta Family Employment Tax Credit, GST Registration, Payroll Deductions
1. explain_program(program_id) - Retrieved text from official sourceget_eligibility_criteria(program_id)
2. - Retrieved text from official sourceeligibility_check(program_id, user_context)
3. - Conservative eligibility assessment using rules enginegenerate_checklist(program_id)
4. - Retrieved text from official sourcetimeline(program_id)
5. - Retrieved text from official sourcequestions_for_professional(program_id)
6. - Retrieved text from official source
- Canada.ca
- CRA official publications
- Alberta.ca program pages
- Public PDFs, bulletins, guides
No scraping forums. No third-party "tips".
- Retrieval-First Principle: All responses based on freshly retrieved documents from pre-approved URLs
- Verbatim Storage: Retrieved text stored exactly as received
- Retrieval Operation: Only verbatim text from pre-approved sources (no external data)
- Rules Engine: Deterministic eligibility checks (no LLM involvement)
- Error Handling: Retrieval failures return errors only, no fallbacks
- Output Requirements: All responses include source URL and last_verified date
Design choice: Retrieval only. Fail loudly on constraint violations.
❌ "How to minimise tax"
❌ "Best way to qualify"
❌ Edge-case exploitation
❌ Advice framed as instruction
We are a translator, not a strategist.
This keeps us out of trouble and attractive to institutions.
- Individual: $8–12/month CAD
- Small business: $19–29/month
- Professional / org: Seat-based or bulk licensing
Cheap insurance against mistakes.
`bash1. Install dependencies
npm install
$3
Add to your MCP client configuration (e.g., Claude Desktop):
macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json`json
{
"mcpServers": {
"plain-gov-mcp": {
"command": "node",
"args": [
"/absolute/path/to/PlainGov-MCP/build/index.js"
]
}
}
}
`Important: Use absolute paths and restart your MCP client after configuration.
See Deployment Guide for detailed instructions.
Usage
$3
1. explain_program - Get program information from official sources
2. get_eligibility_criteria - Retrieve eligibility requirements
3. eligibility_check - Check eligibility based on user context
4. generate_checklist - Get application checklist
5. timeline - Get key dates and deadlines
6. questions_for_professional - Get questions to ask professionals
$3
Check GST Credit eligibility:
`
User: "Am I eligible for GST Credit? Income: $45,000, live in Canada"Server uses eligibility_check tool:
- Status: eligible
- Includes source URL and verification date
- Provides disclaimer
`See Usage Examples for comprehensive scenarios.
Features
$3
- All responses based on freshly retrieved documents
- No cached content or prior knowledge
- Verbatim text from official sources
- Source attribution in every response$3
- Deterministic rules engine (no LLM)
- Errs on side of caution
- Clear status indicators (eligible/not_eligible/unclear)
- Identifies missing information$3
- Strict adherence to retrieval-first constraints
- Fail loudly on errors (no fallbacks)
- Complete source traceability
- Regular verification datesSee Architecture Documentation for technical details.
Compliance with Constraints
- No summaries/explanations without retrieval: All content based on freshly retrieved documents
- Retrieval restrictions: Only verbatim text from pre-approved sources, no prior knowledge
- Retrieval failures: Return error objects only, no fallbacks
- Output standards: Include source URL and last_verified date in all responses
- Rules engine: Eligibility uses deterministic logic, no LLM
- Fail loudly: System errors on any constraint violation
Ethical Guidelines
- No advice or interpretation
- Conservative eligibility assessments
- Direct to official sources only
- Clear disclaimers: "This is not advice"
- No optimization or loophole suggestions
Testing
$3
`bash
npm run inspector
``Open the provided URL in your browser to test tools interactively.
See Testing Guide for comprehensive testing procedures.
Common issues and solutions are documented in the Troubleshooting Guide.
Quick fixes:
- Server not appearing? Check configuration file syntax and restart client
- Retrieval failures? Verify internet connection
- Tools not working? Test with MCP Inspector
We welcome contributions that align with the retrieval-first principles and core mission.
Before contributing:
1. Read Contributing Guidelines
2. Review Architecture Documentation
3. Understand constraint compliance requirements
Ways to contribute:
- Add new government programs
- Improve documentation
- Report bugs
- Suggest enhancements
See CONTRIBUTING.md for detailed guidelines.
Current Version: 0.1.0
Status: Production-ready with comprehensive documentation
Completed:
- ✅ Core retrieval-first implementation
- ✅ 5 government programs (Canada & Alberta)
- ✅ 6 tools for program information
- ✅ Deterministic eligibility rules engine
- ✅ Comprehensive documentation suite
- ✅ MCP Inspector integration
- ✅ Error handling and compliance mechanisms
Roadmap:
- LLM integration for formatting (with strict constraints)
- Additional provinces and programs
- Caching layer with time-based invalidation
- Enhanced rules engine
- Automated testing suite
Documentation: Start with Deployment Guide
Issues: Check Troubleshooting Guide
Questions: Review Usage Examples
Technical: See Architecture Documentation
This project is licensed under the MIT License - see the LICENSE file for details.
Built with:
- Model Context Protocol (MCP)
- TypeScript and Node.js
- Official Canadian government sources
---
Last Updated: 2026-01-10