
Agentimus
it.heeraPublished by heera.itOfficial publisherv1.33.0Updated Nov 2, 2026
heera.it via Agentimus: AI readiness, traffic, request log, search & index reports, by approval.
Overview
MCP server bundled in the Agentimus WordPress plugin that lets an assistant read a site's AI-readiness, traffic and search data and, if enabled, draft and…
- What you can do
- Read readiness scores, findings, content issues and per-page checks
- Read AI traffic, request logs, bot identities, edge and search visibility, Google index status
- Preview schema and markdown, scan exposed files, suggest internal links, search media
- Create and update posts and pages, write descriptions, topics and search fields, apply readiness fixes (only when agent writes are switched on)
- Manage terms, media, settings, maintenance refreshes and cache purges under separate opt-in permissions
- When to use it
- For owners of a WordPress site running the Agentimus plugin who want an assistant to inspect AEO/GEO readiness, AI crawler traffic and search performance, or to draft and edit content directly on the site.
- Requirements
- A WordPress 6.9+ site with PHP 7.4+ running the Agentimus plugin, with its MCP server switch enabled; the remote endpoint is the site itself. Write abilities exist only while the agent-writes setting is on, and each write runs as the signed-in user with that user's capabilities.
Installation
In SourceWeft
- Open Agentimus in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/it.heera%2Fagentimus/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config.
{
"mcpServers": {
"agentimus": {
"type": "http",
"url": "https://heera.it/wp-json/agentimus/v1/mcp"
}
}
}README
Agentimus
[PHP compatibility] [WordPress plugin version] [Tested up to] [License: GPL-2.0-or-later]
Two things for the age of AI agents. (1) Make any WordPress site legible and citable —
llms.txt, a full-text edition, markdown delivery, JSON-LD, content-signal robots rules —
then score how AEO/GEO-ready it is and what to fix next. (2) Let the AI tools you already
use operate the site over MCP: a Model Context Protocol server ships inside the plugin, so
Claude Code, Claude Desktop, Cursor or Codex can read your readiness/traffic/bot data and —
at the level you choose — draft, edit and publish posts and pages, each write running
as the signed-in user, permission-checked and audited. Lightweight, no SEO bloat, no framework.
Live on WordPress.org: https://wordpress.org/plugins/agentimus/
📖 Documentation: https://heera.github.io/agentimus/ — full user manual and developer reference.
Install
- From your dashboard — Plugins → Add New → search "Agentimus" → Install → Activate.
- From WordPress.org — https://wordpress.org/plugins/agentimus/.
- From source — clone this repo, run
npm install && npm run build(producesassets/admin/), then copy or symlink the folder intowp-content/plugins/.
What it does
In the admin
- Findings — one front door for everything open across the site, in the nav with its own count. A single ranked list — pages losing a click they already earn, plus anything the setup checks caught — ordered by what each one costs, every row carrying the button that lands on the fix. The count measures only work you can act on; anything merely waiting on a later report gets a quiet dot instead. Below it, the per-item content worklist: one row per published thing, what it's found for, whether it answers that, and what else it needs.
- Light / dark theme — a toggle showing the mode you're switching to. Dark is a hand-tuned palette, not an inversion, with its own dialect per WordPress admin colour scheme (Default keys neutral, Coffee keys brown and gold). A manual pick holds until the operating system next flips, then the device's rhythm wins again; the resolved mode rides on
<html data-ar-theme>and is remembered per browser, never in Settings. - AEO/GEO score — one 0–100 score on the dashboard across five rungs (Findable / Readable / Trusted / Optimized / Mentioned), with the single most useful next step; each rung deep-links to where you act on it. Mentioned is opt-in (see Citations) and its weight redistributes across the others when off. A score of 99.6 reads 99 — 100 is earned, never rounded into.
- Work by issue — pick one check and every page it flags opens in Your Content, ranked and paged, rather than a sample of six. Fix what a filtered list was opened for and the row keeps its place, marked done, instead of vanishing before you can see the fix land.
- Reading that does not depend on WP-Cron — the content sweep is scheduled work, and on many hosts WordPress's scheduled jobs never run (a cached page never runs PHP, so the request that would start them never arrives). Agentimus notices when its own jobs are overdue and runs them from the admin screen you are already on, joining core's own lock so it can never double-run a job. A site whose cron works loads nothing extra.
- Optimize your content — per-page citability checks (thin content, something concrete to quote, quotable passages, freshness) over your articles, with a worklist of which pages to improve and a matching read-only panel in the editor. Commerce products, commerce plugins' designated pages (cart/checkout/account — WooCommerce options and FluentCart settings both read), and shortcode/block container pages with no authored prose are excluded; set aside any page not meant to be cited (it stays published, just leaves the score) — set-aside is a ledger, so everything you park stays listed and counted rather than merely absent; mark categories evergreen to exempt timeless content from the freshness check.
- Content types, and your veto over them (Settings) — the types a plugin switched on are grouped apart from your own, and you can turn one off even when the plugin that added it wants it on. The writing assistant follows the same rule: a page gets no invented sections, no image slots and no tags, because a page is not an article.
- Screens re-read when you return to them — leaving a data screen and coming back used to show the numbers from whenever the plugin was first opened. Each one now refreshes on return, so what's on screen is what's true.
- Discovery Hub (Discovery tab) — the inventory of everything this site publishes for machines: the providers describing it, the capabilities they declare, the public APIs, the well-known documents, and the MCP & tools surface. The tools section states three separate things in three panels — what a signed-in agent can run (grouped by provider, each group opening to its tool names), the addresses those agents connect to, and what an anonymous agent is handed in
/.well-known/mcp.json. Capability lists scroll inside a fixed height, since their length is the site's to decide (one per public REST post type and taxonomy). Any registration problem is listed with a plain-English fix. - Readiness report — pass/warn/fail checks, each with a plain-English suggestion and a deep link to the fix (including a "sitemap advertised in robots.txt" check).
- Agent preview — a modal (from Readiness) showing the exact JSON-LD and Markdown an agent receives for the site or any page/post, with a grouped site/page/post picker, copy, and validator links. It renders what would ship even when schema is disabled or an SEO plugin owns it; password-protected posts stay hidden, and an unpublished draft is shown as a preview of what it will emit once published. A read-only twin also sits in the post editor.
- Visibility → Search — what people searched, how often you appeared, how often those results were clicked, and the pages that earned them, every number reported by the engine itself. Connect both Google and Bing and a switch appears: the two count different searchers and are never merged. Directly beneath it, Search Opportunities turns those same numbers into a worklist — pages sitting just off page one, and pages on page one being scrolled past — each entry wired to the exact field that fixes it. It also names the searches several of your pages are splitting between them — the clicks divide, so each ranks lower than one page would — with the page that earns the click stated, and one decision on every other. (It lived at the bottom of Readiness until 1.36; Readiness now keeps a pointer to it.)
- Visibility → In the index — whether the engines' indexes actually hold your pages, Bing's and Google's on one screen. Bing is the index ChatGPT search and Copilot read today: how much of your site it holds, how cleanly its crawler gets in, a daily human-traffic series with a week-on-week trend, and a live per-page question answered by Bing's own API. Google's side walks the whole site in rotation and re-checks daily — healthy pages stay a count, anything needing a look earns a row in Google's own words with a deep link into Search Console, and any single URL can be re-inspected on the spot.
- Data sources (Settings → Data sources) — outside services Agentimus reads from, all optional, each with one key held on your own server and no third-party proxy: Cloudflare for what the edge answered or blocked before your server saw it (and, with optional extra token permissions, clearing its cache when you publish and blocking clients you block from the queue), Google Search Console for search and index coverage — with Analytics riding that same key if you want visitor numbers — and Bing Webmaster Tools, which can also announce every change you publish through IndexNow. Numbers land in your own database, so your history outlives each service's own reporting window.
- Citations (Visibility → Citations; opt-in, bring-your-own-key — adds the Mentioned rung to your score, and a reading expires after 90 days so a stale one never counts) — track each brand, product or person you choose across ChatGPT, Perplexity, Gemini and Claude. For every one it asks the questions your audience types and reports whether it's mentioned, linked, and how it ranks against its own rivals, over time. Give an item a category ("WordPress SEO plugin") and Agentimus suggests the questions someone actually types — or, where an AI provider is configured in WordPress, asks that AI for a spread of unbranded questions (
POST /visibility/suggestand/visibility/suggest-ai). Each item has its own website, category, competitors, questions and scoreboard; pause any single one or the whole schedule, and every setting on the screen saves itself. Results are stored locally; it's the only feature that makes outbound calls — using API keys you provide (stored encrypted at rest), off by default. It keeps its own keys rather than reusing WordPress's shared AI connectors, because a visibility check is graded on the sources an engine cited and the shared client drops them. - Agent activity log — a local-only dashboard (no IP logged by default; an optional setting stores IPs for flagged crawlers only) of which AI agents and crawlers fetch your endpoints and pages; repeat hits are grouped with a count, newest first. Click any day's bar for that day's full report — clients, endpoints, and every request. Your own logged-in visits are skipped, and so are the readiness screen's own Verify-live/exposure-scan fetches (they carry a short-lived
X-Agentimus-Selfchecktoken, since they're deliberately anonymous). - Request Log (More → Request Log) — the raw log behind that dashboard: one row per request, keyset-paged, filterable by client, endpoint, network, user-agent and date range. The filters AND together, giving the agent × endpoint cross-tab the summary rollups structurally cannot show.
- Agent Access (More → Agent Access) — the other side of the log: who authenticates to and acts on the machine surface Agentimus creates. Records application passwords being created/first-used/renamed/revoked, WordPress abilities being run, and requests that were refused or probed for abilities that don't exist — and every row says who: the user and the named application password behind it, resolved live (a renamed key shows its current label, a revoked one reads "since revoked"). A record, not a guard (it never blocks); no IP logged, so it names the credential, not the person. Rides
rest_request_after_callbacksand the app-password hooks; the credential half needs no Abilities API, the ability half auto-detects it. - Traffic from AI — a private, first-party count of which AI assistants send visitors to you (per-day tallies of assistant → landing page; no IP, no per-visitor data). The dashboard shows a summary — click any day's bar for that day's assistant → landing-page report; More → Visitors is the full report, with the same per-day drill-down. Every card there says these are people, not agents: the request log is the machine side, Visitors is the human side, and the two are never added together. An opt-in CDN mode counts these in the browser so the numbers survive a full-page cache. Because recognition is a finite list, an opt-in Find missed AI sources diagnostic records the referrer hosts and
utm_sourcetags it couldn't attribute — the only way to see a blind spot that otherwise leaves no trace. - Visit-log retention (Settings → Visit log) — a retention period, nightly auto-delete, and a hard row cap. The cap outranks the retention: "keep for 90 days" is a ceiling on age, not a promise a row survives 90 days. Turning auto-delete off does not mean "keep forever" — the cap still collects, oldest first.
- Keep AI endpoints out of your cache (Settings → Caching & CDN, opt-in) — if a cache or CDN in front of your site serves stored copies of the AI endpoints (
llms.txt, the.well-knowndocs, the change feed), those agent fetches never reach WordPress: the log under-counts them and the change feed can go stale. Turn this on and the endpoints sendCache-Control: no-store, so any cache that respects it lets each fetch through. The readiness report links to it when it detects a cache in front of you. - Refresh AI files when content changes (Settings → Caching & CDN, on by default) — on every content change, asks each detected page cache (WP Rocket, Nginx Helper, W3 Total Cache, LiteSpeed, WP Super Cache, Cache Enabler, or any
agentimus_purge_urllistener) to drop the AI files —llms.txt,llms-full.txt,robots.txt, the change feed, the.well-knowndocs — plus the edited post's own.mdtwin, which a cache plugin otherwise never knows to refresh. Feature-detected, so it's a no-op with no cache present. - Activity to review — a nav-bar review queue flags new, unusually high-volume, spoofed/scanner, or impersonating clients (one that claims a bot from the editable Verified-bots registry — Googlebot, GPTBot, PerplexityBot, … — but conclusively fails that operator's published check: reverse DNS or its published IP ranges), each with a plain "Check this bot" panel and one-click Block / Allow / Ignore. Pairs with the opt-in Block scanners & scrapers enforcement; an optional Store IP addresses for flagged clients setting shows the exact address to block. Every standing decision — blocked, trusted, ignored — is managed later under Settings → AI access → Manage clients: identity, decision date, and one-click undo per row.
- Exposure — opt-in controls that limit what anonymous crawlers can read (username enumeration, author archives, the WP version,
<head>links, XML-RPC), plus a one-click exposed-files scan that checks whether risky files (backups,.env,debug.log, keys) are publicly downloadable and tells you how to block them. Guidance, not a firewall. - Factory reset — one click restores every setting to its recommended defaults, with a preview of exactly what will change.
Architecture
- PHP (
inc/, namespaceAgentimus\, PSR-4 autoloaded) — vanilla, no framework.Pluginorchestrates;Settingsis the single option store;Cachehandles transients;Endpoints/Markdown/Schemaproduce output;Readinessruns the checks;Restbacks the admin;Adminmounts the UI.
- Admin UI — Vue 3 (Options API), built with Vite into
assets/admin/. Talks to the REST namespaceagentimus/v1with the standard WP nonce.
Extending to any site / content type
The free core covers post + page and any public post type you opt in
(Content types card, or the agentimus_post_types filter), so products and
CPTs flow into llms.txt, the full-text edition, markdown and schema automatically.
Deeper coverage (a WooCommerce Product mapper, page-builder content) is an
add-on that hooks these seams:
agentimus_post_types— add/remove agent-visible post typesagentimus_schema_for_post— return a full node, e.g.Productwith offersagentimus_markdown_source— supply rendered HTML for page-builder content
For developers — make your plugin discoverable
Agentimus exposes a single aggregated discovery layer at
/.well-known/discovery.json (plus agent-card.json and mcp.json). Any plugin
can register itself with one action and no dependency — if Agentimus is not
installed, the hook never fires, so the code is inert:
A global facade is also available (guard it, since the call is direct):
Resource fields: id (req, slug), title (req), type (req — content,
commerce, scheduling, courses, forms, crm, auth, search, media,
messaging, analytics, payments, directory, agent, or x-vendor-name;
add your own kind with the agentimus_resource_types filter — an undeclared word
is marked x- and published, never dropped),
description, version, capabilities[], endpoints[] ({url, type, methods[], auth, description}), schemas[], auth ({type, oidc, scopes[], docs}),
agent ({name, description, skills[{id,description}], endpoint, auth}),
abilities[], tools[] (MCP-shaped), docs. provider is auto-filled — don't set it.
Capabilities describe intent; the concrete /wp-json/... paths live only in
endpoints/tools. Invalid entries are rejected and surfaced (with the reason)
in Discovery Hub → Validation.
$registry->add_well_known( [...] ) serves a /.well-known/<name> doc
(callback | redirect | file). See examples/integrate-your-plugin.php for the
full copy-paste reference, and the WP_Discovery Protocol spec for the standard.
Hooks & filters
Every hook is optional and falls into one of three tiers. The tables give each hook's type (action or filter) and callback signature (parameters → return); copy-paste examples are in examples/all-hooks-reference.php. In signatures, Registry, Settings and Plugin are the Agentimus\Discovery\Registry, Agentimus\Settings and Agentimus\Plugin classes.
Stable
Public and frozen at WP_Discovery spec 1.0 — safe to build on.
Extension
Supported output-shaping filters; signatures may evolve between releases.
Internal
Advanced site-owner tuning — not a third-party integration surface.
Development
assets/admin/ is git-ignored — it's a build artifact. Ship it in the
distributed .zip (the .org SVN tag), not the repo.
Requirements
- WordPress 6.9+ (tested up to 7.0)
- PHP 7.4+.
License
GPL-2.0-or-later. The admin app is built from Vue source in resources/ with Vite — no minified-only code ships, so the build is reproducible.
Source: README.md at commit 5fc6cd8
Tools
0Version history
1- v1.33.0LatestSep 16, 2026
Score
85% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listedRequired15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts