Twenty-one commits since v0.3.3. Four features, one schema migration, and two upgrade effects worth reading before you update.
What the update does to your site
Adds a second MCP server. An AcrossAI-branded server appears at route acrossai/mcp, alongside your existing Default MCP Server. It arrives disabled and advertises nothing until you enable it, so no AI client sees a change you did not ask for. Your existing server keeps its route, its tools and its enabled state.
Database — schema 1.1.5 → 1.1.7, applied automatically on the first wp-admin page load:
ALTER TABLE {prefix}acrossai_mcp_servers
ADD COLUMN server_type varchar(32) NOT NULL DEFAULT 'mcp-adapter';The column default is what backfills existing rows, so every pre-existing server keeps its current behaviour. Nothing is dropped and no data is lost — the 1.1.7 step removes a column that only ever existed between two unreleased development migrations, so on a 0.3.3 install it does nothing at all.
⚠️ One change that can undo an edit
The plugin's own server rows are now kept in step on each admin page load. Name, description, route, route namespace and version on plugin-managed servers are plugin-owned and get restored if they differ.
Before this release those fields were written once and never revisited, so an edit stuck. If you renamed Default MCP Server, or changed its description or route, that change is reverted on update. Create your own server instead, where nothing will overwrite it.
What stays yours on every server: whether it is enabled, its server type, and every tool and ability selection.
Features
F090 — Server types, and Reset finally restores the right tools. Every server now records what type it is. This fixes a real defect: the Tools tab's Reset restored the same three mcp-adapter/* protocol tools on every server regardless of purpose, so on a server meant to serve AcrossAI toolsets "reset to defaults" produced the wrong defaults and discarded your selection. Reset now restores that server's own type's set. New servers are created as MCP Adapter. New filter acrossai_mcp_server_types lets any plugin contribute a type — contract and worked example in docs/extending-server-types.md.
F088 — a second plugin-managed server, described above.
F089 — search and pagination for mcp-adapter/discover-abilities, so an assistant can narrow a large ability library instead of paging through all of it, filtering by search, category, namespace or tab_group.
F087 — the Tools tab lists tools, and the Abilities tab lists abilities. Two admin screens were each showing the wrong set. New filter acrossai_mcp_manager_tool_abilities; details in docs/extending-abilities-tab.md.
A connecting AI client is now told what this server is — per server type, through MCP initialize, via the new acrossai_mcp_server_instructions filter.
The Tools tab says when a change has not reached connected clients yet. An MCP client caches the tool list when it connects, and the protocol gives a WordPress server no way to reach one that is already connected. Rather than leave you with a count that is not yet true for anyone connected, the tab now says so.
Fixes
- The tool exposure gate never fired, because the MCP adapter renames tools — so per-server exposure was not enforced on tool calls
- An empty effective tool set fell back to the vendor's defaults, advertising tools the operator had removed
- The tool picker offered only the current type's tools; it now offers every available tool, with only Reset scoped by type
- The AcrossAI server route shortened to
acrossai/mcp - CI test harness repaired — 690 tests ran for the first time, which surfaced several of the fixes above
Compatibility
Requires AcrossAI Abilities Manager 0.0.34 or later for the AcrossAI server type's toolsets and its default-type behaviour. Everything else works without it; a server whose type needs the add-on says so plainly instead of failing quietly, and can always be switched to MCP Adapter.
Dependency: wordpress/mcp-adapter 0.5.0 → 0.6.1.
Verification
The migration was run end to end on a genuine 0.3.3 / schema-1.1.5 install — not only in tests. server_type added and backfilled, existing row preserved, second admin load idempotent, no errors.
Full changelog: v0.3.3…v0.3.4