The problem it solves is specific and real: a large middleware repository has more documentation than any single prompt can carry, so pasting it in crowds out the code you are working on. Serving it as addressable resources means the assistant pulls the plugin or subsystem page it needs and nothing else. Resources are the surface here — this is a reading server, not one that changes your NAS.
A Python MCP server that scans the TrueNAS middleware repository for its CLAUDE.md documentation files, categorises them, and serves them as small resources so a coding assistant can understand the codebase without drowning in context.
- Architecture and practice: `truenas://overview` and `truenas://development/guidelines`
- Plugins: `truenas://plugins/service-types`, `truenas://plugins/patterns`, `truenas://plugins/categories`, and `truenas://plugins/{plugin_name}` for a specific one
- API: `truenas://api/versioning` and `truenas://api/models` for the Pydantic model patterns
- Testing: `truenas://testing/overview` and `truenas://testing/patterns`
- Subsystems: `truenas://subsystems/{name}`
- Content is summarised on the way out — key sections extracted, code examples trimmed, API signatures kept over full implementations
Python 3.11 in a virtualenv with `pip install -r requirements.txt`, or the bundled docker-compose setup. Point your client at truenas_mcp_server.py using that virtualenv's interpreter.
