MCP server for AdonisJS documentation (v5, v6, v7) — gives AI agents quick access to AdonisJS docs
Project description
adonis-docs-mcp
MCP server that gives AI agents fast access to AdonisJS documentation (v5, v6, v7) and Edge.js template engine documentation.
Fetches raw markdown directly from the official GitHub repos and caches locally for speed.
Quick Start
# Run with uvx (no install needed)
uvx adonis-docs-mcp
Integration
Claude Desktop / Claude Code
Add to your MCP settings:
{
"mcpServers": {
"adonis-docs": {
"command": "uvx",
"args": ["adonis-docs-mcp"]
}
}
}
VS Code / GitHub Copilot
Add to .vscode/mcp.json:
{
"servers": {
"adonis-docs": {
"command": "uvx",
"args": ["adonis-docs-mcp"]
}
}
}
Cursor
Add to your MCP config:
{
"mcpServers": {
"adonis-docs": {
"command": "uvx",
"args": ["adonis-docs-mcp"]
}
}
}
AGENTS.md for Your Project
To make sure AI agents always use this MCP when working on your AdonisJS project, add an AGENTS.md file to your project root. You can generate one by calling the get_agents_md tool, or copy the template below:
Click to expand AGENTS.md template
# AGENTS.md
This project is built with **AdonisJS v7** and **Edge.js** templates
(server-rendered monolith). An MCP server is available with documentation
and development guidelines — **use it before guessing**.
## Before You Start
1. Call `get_backend_guidelines` — architecture rules, Edge template
conventions, controller patterns, forms, models, and assets.
2. Call `get_frontend_guidelines` — anti-slop rules for HTML, CSS, and UI
development in Edge templates.
3. Call `get_code_quality_guidelines` — anti-slop rules for code changes
(surgical edits, no bloat, no filler, domain naming).
## When You Need Documentation
- **AdonisJS v7 docs:** `search_docs(query="...", version="v7")` or
`get_doc(permalink="...", version="v7")`. Use `list_sections(version="v7")`
to browse available pages.
- **Edge.js templates:** `edge_search_docs(query="...")` or
`edge_get_doc(permalink="...")`. Use `edge_list_sections()` to browse.
- **Lucid ORM (models, queries, migrations):**
`lucid_search_docs(query="...")` or `lucid_get_doc(permalink="...")`.
Use `lucid_list_sections()` to browse.
- **Community packages:** `packages_search(query="...")` to find packages,
`packages_get(name="...")` to read full README with install/usage docs.
## Key Rules
- This is a **server-rendered app**, not a SPA. Do not introduce React, Vue,
Svelte, or any frontend framework.
- Controllers render Edge views directly. No REST API for frontend consumption.
- Use Edge layouts, partials, and components — do not duplicate HTML structure.
- Validate with VineJS validators, not manually in controllers.
- Use Lucid ORM models with migrations. Never modify the database directly.
- Follow the existing project structure. Do not invent new directories or
patterns.
- Do not add npm packages unless explicitly asked. Work with what is already
in `package.json`.
- Keep changes surgical — only touch files related to the task.
- Read existing code before adding new code. Match naming conventions.
## Stack Reference
| Layer | Technology | Docs Tool |
|-------|-----------|-----------|
| Framework | AdonisJS v7 | `search_docs`, `get_doc` |
| Templates | Edge.js | `edge_search_docs`, `edge_get_doc` |
| ORM | Lucid | `lucid_search_docs`, `lucid_get_doc` |
| Validation | VineJS | `search_docs(query="validation")` |
| Auth | @adonisjs/auth | `search_docs(query="auth")` |
| Packages | Community registry | `packages_search`, `packages_get` |
Available Tools
AdonisJS
| Tool | Description |
|---|---|
list_versions |
List all available AdonisJS doc versions (v5, v6, v7) |
list_sections |
Browse the documentation structure for a version |
get_doc |
Fetch the full markdown content of a specific page |
search_docs |
Search docs by keyword across titles and content |
clear_cache |
Clear the local documentation cache |
Edge.js Templates
| Tool | Description |
|---|---|
edge_list_sections |
Browse the Edge.js documentation structure |
edge_get_doc |
Fetch the full markdown content of an Edge.js doc page |
edge_search_docs |
Search Edge.js docs by keyword |
Lucid ORM
| Tool | Description |
|---|---|
lucid_list_sections |
Browse the Lucid ORM documentation structure |
lucid_get_doc |
Fetch the full markdown content of a Lucid ORM doc page |
lucid_search_docs |
Search Lucid ORM docs by keyword |
Packages Registry
| Tool | Description |
|---|---|
packages_list |
List all AdonisJS packages, optionally filtered by category |
packages_search |
Search packages by keyword (name, description, category) |
packages_get |
Get full details and README for a specific package |
Development Guidelines
| Tool | Description |
|---|---|
get_backend_guidelines |
AdonisJS v7 backend rules: architecture, Edge templates, controllers, forms, models, assets |
get_frontend_guidelines |
Frontend anti-slop rules: semantic HTML, typography, color, layout, spacing, accessibility |
get_code_quality_guidelines |
Code quality anti-slop rules: surgical changes, no comment spam, no bloat, domain naming |
get_agents_md |
Generate an AGENTS.md file template for your AdonisJS project |
Examples
# List what's available
list_versions()
# Browse v7 docs structure
list_sections(version="v7")
# Read the routing guide
get_doc(permalink="guides/basics/routing", version="v7")
# Search for authentication docs
search_docs(query="authentication", version="v7")
# Search across all versions
search_docs(query="middleware", version="all")
# Browse Edge.js template docs
edge_list_sections()
# Read Edge.js components docs
edge_get_doc(permalink="components/introduction")
# Search Edge.js docs
edge_search_docs(query="slots")
# Browse Lucid ORM docs
lucid_list_sections()
# Read Lucid relationships docs
lucid_get_doc(permalink="relationships")
# Search Lucid ORM docs
lucid_search_docs(query="migrations")
# List all packages
packages_list()
# List authentication packages
packages_list(category="Authentication")
# Search for a package
packages_search(query="jwt")
# Get full details and README for a package
packages_get(name="adonisjs-jwt")
# Load guidelines before working on a project
get_backend_guidelines()
get_frontend_guidelines()
get_code_quality_guidelines()
Configuration
| Environment Variable | Default | Description |
|---|---|---|
ADONIS_DOCS_CACHE_TTL |
3600 |
Cache TTL in seconds (default: 1 hour) |
ADONIS_DOCS_CACHE_DIR |
~/.cache/adonis-docs-mcp |
Cache directory path |
Documentation Sources
| Version | GitHub Repo | Status |
|---|---|---|
| v7 | adonisjs/v7-docs | Latest (default) |
| v6 | adonisjs/v6-docs | Stable |
| v5 | adonisjs/v5-docs | Legacy |
| Edge.js | edge-js/edgejs.dev | Template engine |
| Lucid ORM | adonisjs/lucid.adonisjs.com | SQL ORM |
| Packages | adonisjs-community/adonis-packages | Community registry |
Development
# Clone and install
git clone https://github.com/pimentelleo/adonis-docs-mcp.git
cd adonis-docs-mcp
uv sync
# Run locally
uv run adonis-docs-mcp
# Test with MCP Inspector
npx @modelcontextprotocol/inspector uv run adonis-docs-mcp
Publishing (maintainers)
This project uses PyPI Trusted Publishing via GitHub Actions.
One-time setup
- Go to https://pypi.org/manage/account/publishing/
- Add a new pending publisher:
- Project name:
adonis-docs-mcp - Owner:
pimentelleo - Repository:
adonis-docs-mcp - Workflow name:
publish.yml - Environment name:
pypi
- Project name:
- Save
Releasing a new version
- Update
versioninpyproject.tomlandsrc/adonis_docs_mcp/__init__.py - Commit and push
- Create a GitHub release (tag format:
v0.1.0) - The publish workflow will automatically build and upload to PyPI
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file adonis_docs_mcp-0.9.0.tar.gz.
File metadata
- Download URL: adonis_docs_mcp-0.9.0.tar.gz
- Upload date:
- Size: 65.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3e833c595a9cca98bdb3f6a8fa7d6c282bbbbf616f4e39e059e54cdc24a557d3
|
|
| MD5 |
c1fffdcca05f6055c28617206be3ce02
|
|
| BLAKE2b-256 |
91808fd39c66253487d53bc744ac161bbe83256d988f34aaaa49eac57046e393
|
Provenance
The following attestation bundles were made for adonis_docs_mcp-0.9.0.tar.gz:
Publisher:
publish.yml on pimentelleo/adonis-docs-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
adonis_docs_mcp-0.9.0.tar.gz -
Subject digest:
3e833c595a9cca98bdb3f6a8fa7d6c282bbbbf616f4e39e059e54cdc24a557d3 - Sigstore transparency entry: 1634221645
- Sigstore integration time:
-
Permalink:
pimentelleo/adonis-docs-mcp@509e51d9fb4906fb81ef4883e90c9c72c34ce355 -
Branch / Tag:
refs/tags/v0.9.0 - Owner: https://github.com/pimentelleo
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@509e51d9fb4906fb81ef4883e90c9c72c34ce355 -
Trigger Event:
release
-
Statement type:
File details
Details for the file adonis_docs_mcp-0.9.0-py3-none-any.whl.
File metadata
- Download URL: adonis_docs_mcp-0.9.0-py3-none-any.whl
- Upload date:
- Size: 24.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
71cb99bcad5580564ee576d9bf42b49003e4df0b367dd5ee4f56d58e83ff9a46
|
|
| MD5 |
0d2693c0e909c15d9f7d8de8b85d2343
|
|
| BLAKE2b-256 |
25f0ad1ac30e6560276e768b655f7863c2845c2d26747e0c6fdc187cf10907e2
|
Provenance
The following attestation bundles were made for adonis_docs_mcp-0.9.0-py3-none-any.whl:
Publisher:
publish.yml on pimentelleo/adonis-docs-mcp
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
adonis_docs_mcp-0.9.0-py3-none-any.whl -
Subject digest:
71cb99bcad5580564ee576d9bf42b49003e4df0b367dd5ee4f56d58e83ff9a46 - Sigstore transparency entry: 1634221760
- Sigstore integration time:
-
Permalink:
pimentelleo/adonis-docs-mcp@509e51d9fb4906fb81ef4883e90c9c72c34ce355 -
Branch / Tag:
refs/tags/v0.9.0 - Owner: https://github.com/pimentelleo
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@509e51d9fb4906fb81ef4883e90c9c72c34ce355 -
Trigger Event:
release
-
Statement type: