Canonry CLI

An open AEO platform: the cnry CLI, MCP and a web UI track a site's visibility in AI answers and run a technical audit

  • 208 ★ on the repository
  • Last commit
  • MIT
CLI

Extended access

Why this level

  • Crawls site pages and queries AI providers with your keys, spending quotas and money
  • Configuration and schedule writes are gated by the `canonry_apply_config_preview` preview, but live operations need your approval
All reasons and checks

canonry/canonry

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add cli/canonry

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Extended accessThe tool runs code or makes network calls and only reads external data.

  • Crawls site pages and queries AI providers with your keys, spending quotas and money
  • Configuration and schedule writes are gated by the `canonry_apply_config_preview` preview, but live operations need your approval

This is third-party code. Review the repository files before installing.

What it does

Canonry is a self-hosted platform for optimizing for AI answers (AEO, also called GEO): the web UI and the agent see the same data. It runs through the `cnry` command-line utility, an MCP adapter or an API, stores everything in SQLite and uses your own provider keys (BYOK). The first step is a technical audit: `cnry technical-aeo run my-site --max-pages 100 --wait --format json` crawls pages and saves a baseline score, then `cnry technical-aeo score` and `cnry technical-aeo pages` show the result and the weakest pages. Visibility in AI answers is connected separately and polls providers over a query list. An agent connects in three ways. An agent with shell access gets a starter prompt in the README and works through `cnry`. The plugin for Codex and Claude Code brings playbooks and a local MCP. A read-only remote mode goes through `https://mcp.canonry.ai/mcp` with OAuth sign-in. The `--stored-only` mode limits work to saved data: live provider calls and state writes are closed.

Who it is for. SEO specialists and site owners who want to monitor brand mentions in AI answers and hand audits and conclusions to an agent over their own database.

Good fit when

  • A site has to be checked for AI-answer readiness: a 100-page technical audit with a score and a list of weak pages
  • Brand mentions in AI providers' answers have to be tracked over a query list through time
  • The agent should work with the same data as the web UI through the CLI or MCP
  • Configuration edits (queries, competitors, schedules) are previewed first and applied after review

Not a fit when

  • You want a cloud service with no deployment: Canonry runs on your side with its own database and your provider keys
  • You have no provider keys but need AI-answer visibility at once: collection is built on your keys
  • You need a one-off audit of a single page: a platform with a database and web UI is heavy for that
  • The agent must not call providers or change state: for that case there is only `--stored-only`, working on saved data

Example request

Install Canonry, create a project for my site example.com, run a 100-page technical audit and show the score and the ten weakest pages

Limitations

  • Node.js is needed, and the utility installs globally with `npm install -g @canonry/canonry`. If `@ainyc/canonry` was installed before, remove it first; data in `~/.canonry` stays.
  • AI-answer visibility needs your provider keys and spends their quotas, so the agent should agree on live polling first.
  • The remote MCP reads one instance per grant and is read-only. The plugin and gateway are not yet submitted to the OpenAI and Anthropic directories.
  • It is a large platform with an API, web UI, worker and gateway rather than a single utility, so deployment takes time.

How to disable. Stop the service, remove the utility with `npm uninstall -g @canonry/canonry` and remove the plugin through the Claude Code or Codex plugin manager. Data and settings live in `~/.canonry` and are deleted by hand.

FAQ

How do I install Canonry?

Run `npm install -g @canonry/canonry`, then `cnry bootstrap` and `cnry serve`. The web UI opens at `http://127.0.0.1:4100/setup`. An agent can do the same from the starter prompt in the README.

What is AEO?

Optimization for AI answers: Canonry tracks whether your site and brand appear in AI providers' answers and separately checks the technical state of pages: structure, AI-crawler access and markup data.

How do I connect Canonry to Claude Code or Codex?

Three ways: an agent with a shell works through `cnry`, the local plugin installs playbooks and MCP, and the remote plugin `canonry-remote` calls `https://mcp.canonry.ai/mcp` and is read-only. Plugin commands are in `docs/plugins.md`.

How do I stop an agent from calling providers?

Turn on `--stored-only` in the CLI or `CANONRY_STORED_ONLY=1`, and for MCP add `--stored-only` or `CANONRY_MCP_SCOPE=stored-only`. Live and writing operations are then off while reading saved data works.

Where is the data stored?

In SQLite on your machine, with settings and data in `~/.canonry`. You bring the provider keys yourself and your instance stores them.

Discussion

No questions or reviews yet.

CLI tools
Official

MCP server and AEO analyst skill: an agent reviews brand visibility in ChatGPT, Gemini, Claude and Perplexity answers.

MCP serverExtended access238Repository stars

Site package that audits AI search visibility and generates llms.txt with markup. Includes a CLI, MCP server and skill.

CLIExtended access147Repository stars

A CLI, Python library and MCP server that scores how ready a site is to be cited by ChatGPT, Perplexity and AI Overviews

CLIExtended access1.3KRepository stars
Official

The GetCito MCP server gives Claude Code, Cursor and Codex data on brand mentions in AI answers: brands, competitors, tasks.

MCP serverExtended access427Repository stars
Official

A plugin with an MCP server and skills: Claude Code crawls a site, finds broken links and SEO and GEO errors and suggests fixes.

PluginExtended access123Repository stars

README in short

The README describes Canonry as an agent-first platform and leads to a quick start in three variants: a request to an agent, Claude and Codex plugins or a manual run. Then come sections on evidence (technical audit, AI-answer visibility), actions, integrations, docs and development, with links to a live demo page and documents on the CLI, MCP and plugins.

README badge

Report a problem