RankCanon
# RankCanon
MCP server that gives AI agents **fresh, cited SEO knowledge from primary sources** instead of stale training data and SEO-blog myths.
## Sources (v0.1)
- **Google Search Central** documentation (`developers.google.com/search/docs`)
- **Google Search Status Dashboard** — core, spam and other ranking updates with dates
Planned: schema.org / structured data requirements, web.dev (Core Web Vitals), Bing, Yandex, doc change diffs, semantic search, project-specific knowledge.
## Tools
| Tool | Purpose |
|---|---|
| `search_docs(query, limit, source)` | Full-text search (SQLite FTS5) with snippet, URL and last-changed date |
| `get_doc(url)` | Full stored text of a page |
| `algorithm_updates(date_from, date_to)` | Google updates overlapping a date range, to correlate traffic drops |
| `corpus_status()` | What is indexed and how fresh it is |
## Quick start
```bash
uv sync
uv run rankcanon-sync # fetch sources (use --max-pages N, --source docs|status)
uv run rankcanon # run MCP server over stdio
```
Database location: `~/.local/share/rankcanon/rankcanon.db` (override with `RANKCANON_DB`).
### Claude Code
```bash
claude mcp add rankcanon -- uv --directory /path/to/rankcanon run rankcanon
```
Run `rankcanon-sync` on a schedule (e.g. daily cron) to keep the corpus fresh.
## License
MIT
TDQS
Scored across 4 tools
Each tool has a distinct role: search_docs and get_doc separate search from retrieval by URL, algorithm_updates is purpose-built for update lookups, and corpus_status provides index metadata. No overlap in functionality; an agent can easily choose the right tool.
Names use snake_case consistently, but the pattern is mixed: get_doc and search_docs follow verb_noun, while algorithm_updates and corpus_status are noun phrases. The inconsistency is not severe but breaks a predictable action-oriented convention.
Four tools cover the essential operations for an SEO documentation and algorithm update server: search, retrieval, update access, and corpus status. The set is tightly scoped with no redundant tools, and the count is well within the typical 3–15 range.
The surface covers search, retrieval, algorithm updates, and index status, which are the core needs. Minor gaps exist, such as no list-all-documents tool or per-update detail endpoint, but these can be worked around via search and the update list.