MCP for J add-on logoMCP for JSitemap Pro is a Pro add-on for MCP for J that lets your AI client set up and maintain JSitemap Pro. Its 27 tools cover data sources, menu and content exclusions, priorities, configuration, the precache, robots.txt, a /sitemap.xml redirect and IndexNow. JSitemap Pro itself is a separate paid extension from Joomla! Extensions Store, and every tool here refuses until it is installed. What sets this apart from clicking through JSitemap's screens is that it reads the sitemap your site really serves, so a change is checked against the output rather than assumed.

Please log in to download MCP for JSitemap Pro.

Why this exists

Setting JSitemap up properly on a real site took a mix of admin clicks and direct SQL: syncing menu sources, unpublishing a leftover menu, keeping Log in and My account out of the sitemap, adding a source for a third-party component, a /sitemap.xml redirect and a robots.txt entry. Every one of those is a tool here.

The bigger reason is that JSitemap fails quietly. With precaching on, it serves a frozen file and ignores your sources until that file is rebuilt. A new menu doesn't reach the sitemap until an admin happens to open JSitemap's control panel. A third-party source whose SQL fails simply disappears from the output. So you can make a change, see it saved, and still be serving the old sitemap. Every write tool here tells you what may still be stale, and get_jsitemap_sitemap_urls fetches the real front end so you can see what a crawler gets.

What Claude can do

Twenty-seven tools in seven groups.

AreaToolsWhat you can do
Info2Component details, and a health check that looks for the silent failures: missing menu sources, a source left behind by a deleted menu, a robots.txt that blocks crawlers, and stored source SQL that no longer matches its settings.
Sources9List, read, publish, unpublish, update and delete data sources. Run JSitemap's menu sync. Exclude menu items, categories or articles. Add a source for a third-party component, built by JSitemap's own query builder.
Priorities2List and set priority overrides per menu item or per category.
Output5List the sitemap links, fetch any sitemap format from the live site with each URL's priority, change frequency and last-modified date, and list, clear or rebuild the precache.
Config2Read the configuration with credentials hidden, and change the settings you name without touching the rest.
Discovery4Check robots.txt and add or remove its Sitemap line, add or remove a /sitemap.xml 301 in .htaccess, and send an IndexNow ping that checks the key file first.
Tables3List datasets and tables, and run a read-only query over JSitemap's own tables for the question no tool anticipated.

Installing it

You'll need Joomla 5 or 6, PHP 8.1 or later, MCP for J, and JSitemap Pro, which you buy from Joomla! Extensions Store. The add-on was built and tested against JSitemap Pro 4.31.2. Nothing in JSitemap Pro is locked behind a licence check (its registration email only unlocks the vendor's updates), so there's no vendor gate to get past. It just has to be installed.

  1. Subscribe on the sign-up page, or get this and every other Pro add-on with MCP for J Pro โ€” All Access.
  2. Download the ZIP and install it through System โ†’ Install โ†’ Extensions, or paste your download URL into Install from URL.
  3. That's the whole install. The plugin enables itself, and the tools show up in your connected AI client the next time it lists them.

There's no admin screen for this plugin, by design. If JSitemap Pro isn't installed, or is installed but disabled, the installer tells you so straight away rather than leaving the first tool call to find out.

Using it

Start with the health check. It's read-only, and it'll tell you whether your sitemap is missing menus, carrying a stale source, or being served from an old precache file.

After that, ask for what you want in plain language. "Sync the menu sources and show me what's in the sitemap now" runs JSitemap's own sync and then fetches the live result. "Keep the Log in and My account pages out of the sitemap" sets the exclusions, checking each id against the menu first. "Point /sitemap.xml at JSitemap and add it to robots.txt" does both. If you've only just installed JSitemap, look at robots.txt too: on a fresh install its installer removes several Disallow lines and adds five Allow lines.

What the tools protect you from

A few of JSitemap's own behaviours can cost you work, and the tools are built around them.

  • Menu sources are matched to menus by title. Rename a menu and the next sync deletes its source, exclusions and all, and adds a fresh one. The sync tool plans first and asks before it deletes a source you've configured.
  • JSitemap's settings save replaces every setting at once. A partial save would wipe the rest. set_jsitemap_config doesn't use that save. It changes only the keys you name, applies JSitemap's own validation, and shows that nothing else moved.
  • A third-party source can drop out without a word. JSitemap checks each source's SQL when the sitemap renders and silently skips any that trip its filter, which a harmless column name like updated_at will do. Sources here are built by JSitemap's own query builder, every table and column is checked against your database first, and the result is test-run and checked against that same filter before it's saved.
  • /sitemap.xml has to be an external redirect. An internal rewrite returns a 404 because Joomla's router still sees the original path. The redirect tool writes a marked .htaccess block, tests the home page and the redirect, and puts the original file back if either fails. Removing the block leaves .htaccess exactly as it was.
  • JSitemap's IndexNow ping can report success without achieving anything. Every install ships the same default key and nothing serves the key file, so Bing accepts the ping and then discards it. The tool here checks the key file first and tells you.

Why it doesn't submit sitemaps to Google Search Console

This is on purpose. JSitemap stores its Google token per client id: the id of the Joomla application it was authorised in, which is 1 for the administrator. MCP tools run under Joomla's API application, where that id is 3, so the token you authorised in JSitemap's admin is never found. Rather than pretend otherwise, this add-on leaves Search Console submission out.

Submission is done instead by Cybersalt's separate Search Console MCP server, cs-gsc-mcp, with its gsc_submit_sitemap tool. That server is not an MCP for J add-on and isn't part of this package. It talks to Google directly, not through Joomla.

JSitemap's Google and Baidu "ping" buttons aren't reproduced either. They only run a web search for your sitemap URL.

How it was tested

Version 1.0.0 was tested end to end against JSitemap Pro 4.31.2 on Joomla 6.2. Every tool was called on a live install, and every write was checked twice: in the database, and in the sitemap the site actually served.

Some paths haven't been exercised yet: multilingual sitemaps, datasets with content in them, and the plugin and links source types. A third-party source was tested with Joomla tags rather than a component like Membership Pro, and adding the /sitemap.xml redirect to a .htaccess that already has Joomla's rewrite rules in it was tested offline only. The redirect tool tests itself and rolls back if anything fails, but if you run into something on any of these, I'd like to hear about it.

Permissions and security

The configuration read hides credentials, and the configuration write refuses them, along with JSitemap's licence email. The table query is read-only, limited to JSitemap's own tables, and refuses the table where JSitemap keeps its Google OAuth token. Exclusions are checked against the menu items, categories and articles they refer to before anything is saved.

Open source

GPL-2.0-or-later, the same license as Joomla itself. The full source is in the ZIP you download.

Please log in to download MCP for JSitemap Pro.


Interesting blog? Like it on Facebook, Post it or share this article on other bookmarking websites.

Written by:
Tim Davis is the founder and owner of Cybersalt.
Log in to comment

Add comment

Submit