Skip to content

connectors: add WordPress + WooCommerce adapters#231

Merged
keysersoft merged 1 commit into
mainfrom
keysersoft/wp-woo-connectors
May 19, 2026
Merged

connectors: add WordPress + WooCommerce adapters#231
keysersoft merged 1 commit into
mainfrom
keysersoft/wp-woo-connectors

Conversation

@keysersoft
Copy link
Copy Markdown
Contributor

Summary

Two new connectors landing as declarative JSON manifests under packages/backend/src/adapters/intl/. Zero platform code changes.

  • WordPress (39 tools)BASIC_AUTH via WP Application Passwords, hits /wp-json/wp/v2. Covers posts, pages, taxonomies, media, users, comments, search, site-health, settings, plus post-meta for Yoast/Rank Math SEO.
  • WooCommerce (50 tools)BASIC_AUTH via REST consumer key+secret, hits /wp-json/wc/v3. Covers products + variations, orders + notes + refunds, customers, coupons, reports.

Both connectors require HTTPS in production (documented in instructions).

New tool families (pattern)

  • CRUD primitives for every major entity (create/read/update/delete where the upstream API supports it).
  • 9 enum-helper static tools (e.g. wordpress_list_site_health_test_slugs, woocommerce_list_order_status_options) — reference cards delivered on-demand via method:"static". Pattern inspired by Pipedream's list-*-options actions.
  • 11 skill static tools (e.g. wordpress_skill_seo_content_pipeline, woocommerce_skill_inventory_optimization) — multi-step workflow playbooks that the agent reads only when actually running that workflow, instead of preloading them into the always-on instructions block.

Platform alignment

STATIC added to VALID_REST_METHODS in catalog.spec.ts. The runtime (ConnectorsService + DynamicMcpTools) was already intercepting method:"static" + staticResponse before engine dispatch — the test gate was the only thing blocking the pattern for REST adapters.

Test plan

  • catalog.spec.ts — 450/450 pass (was 426; +24 for the new tools)
  • Full backend test suite — 839/839 pass
  • tsc --noEmit clean
  • End-to-end live test against a docker-compose WP 6.8 + WC stack with seeded data (7 products, 3 orders, 1 customer, 1 coupon, 1 comment, 1 variable product) — 92/92 pass, all tool families exercised:
    • All read tools, write tools, batch ops, refunds, order-notes chain, coupon CRUD, customer CRUD
    • User delete with reassign
    • Static skill + enum tools structurally verified

@keysersoft keysersoft requested a review from D3nisty as a code owner May 19, 2026 20:18
WordPress (39 tools) and WooCommerce (50 tools) adapters as declarative
JSON manifests. Both use BASIC_AUTH — WP App Passwords / WC consumer
key+secret over HTTPS.

Tool families per connector:
  - CRUD primitives covering posts/pages/users/media/comments for WP and
    products/variations/orders/customers/coupons/reports for WC
  - 9 enum-helper static tools (Pipedream-style reference cards for
    status / role / period / test-slug values)
  - 11 skill static tools — multi-step workflow playbooks delivered
    on-demand via method:"static" + staticResponse, not preloaded into
    the connector instructions block

Move static-method support to first-class for REST adapters by adding
STATIC to VALID_REST_METHODS in catalog.spec.ts — the runtime
(ConnectorsService and DynamicMcpTools) already intercepts
method:"static" + staticResponse before engine dispatch.

All tools live-tested end-to-end against a docker-compose WordPress 6.8
+ WooCommerce stack with seeded data (7 products, 3 orders, 1 customer,
1 coupon): 92/92 pass.
@keysersoft keysersoft force-pushed the keysersoft/wp-woo-connectors branch from e1a9650 to f5d0a64 Compare May 19, 2026 20:19
@keysersoft keysersoft merged commit 1cd4fe5 into main May 19, 2026
10 checks passed
@keysersoft keysersoft deleted the keysersoft/wp-woo-connectors branch May 19, 2026 20:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant