| 开发者 | chagold |
|---|---|
| 更新时间 | 2026年9月1日 00:30 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 7.1 |
| 版权: | GPLv3 or later |
| 版权网址: | 版权信息 |
"I want to connect you to my WordPress site at https://mysite.com using the Goldnat AI Connect for WordPress plugin. The manifest is at /api/aiconnect-manifest. Use OAuth 2.0 with client_id: claude-ai" The AI will guide you through OAuth authorization - you'll approve access in your browser.🤖 Supported AI Agents Pre-registered and ready to connect:
client_id: claude-ai (Anthropic)client_id: chatgpt (OpenAI)client_id: gemini (Google)client_id: grok (xAI)client_id: perplexityclient_id: copilotclient_id: meta-ai (Facebook)client_id: deepseekredirect_uri: urn:ietf:wg:oauth:2.0:oob (out-of-band).
🛠️ Available Tools
translation.translate and translation.getSupportedLanguages tools are added to the manifestThe Servio Protocol is a standardized protocol for connecting AI agents to web services. It defines how AI assistants discover, authenticate with, and execute tools on web platforms. Goldnat AI Connect implements Servio across every supported platform (WordPress, XenForo, Drupal, Shopify, and more) so the same AI agent can talk to any of them with identical semantics.
Yes! Goldnat AI Connect for WordPress works with any AI platform that supports REST APIs. This includes ChatGPT (OpenAI), Claude (Anthropic), Make.com, Zapier, and custom applications.
All API calls require authentication for security:
OAuth 2.0 Authorization: The AI agent operates as the WordPress user who authorized it. When a user approves access through the OAuth consent screen:
No, Redis is optional. The plugin works perfectly with WordPress transients. However, Redis is recommended for high-traffic sites (>1,000 requests/day) as it provides better rate limiting performance.
Yes! Goldnat AI Connect for WordPress is extensible. Use WordPress hooks to add custom tools:
php
add_action('goldtwmcp_register_modules', function($goldtwmcp_plugin) {
$manifest = $goldtwmcp_plugin->get_manifest_instance();
$manifest->register_tool('mysite.getStats', [...]);
});
Important: Place your custom tools in your theme's functions.php or a separate plugin - they will be preserved during plugin updates.
See the plugin documentation for more details.
Yes! Multiple options: Revoke specific OAuth token:
Common issues:
wp-content/debug.log for details.
goldt-webmcp-bridge). 1.2.0 renamed it to a longer form that included the term "WordPress"; the wp.org Plugin Check flags that as a restricted term and it also no longer matched the slug. The Goldnat / Servio Protocol rebrand still lives everywhere it makes sense — description tagline, manifest, admin subtitle, quick-prompt template, OAuth client display — but the Plugin Name header stays stable.includes/core/class-plugin-updater.php. WordPress.org's Plugin Check rejects custom update systems (Plugin Updater detected), and the Free plugin was already served via wp.org's built-in updater; the custom checker was only used by external Pro plugins that must ship their own update code from here on.upgrade_to_2_0_5 and upgrade_to_2_0_6 (interpolated table names) suppressed with the same phpcs:disable/enable block the older migrations use — behaviour unchanged.parse_url() → wp_parse_url() (only usage was inside the removed updater).client_id is renamed from webmcp-master to goldnat-master, so the plugin no longer exposes any "webmcp" string to AI agents via the OAuth authorize/token flows. New DB schema upgrade 2.0.5 performs the rename in three tables atomically: oauth_clients gets a new goldnat-master row (config copied from the legacy row), then oauth_tokens and aiconnect_token_registry are re-pointed at the new identifier, then the legacy webmcp-master row is deleted. Existing agents keep working — their tokens now reference goldnat-master (which exists), so bearer-auth continues to succeed without any user action. New authorize requests that hard-code the legacy identifier will get invalid_client and need to reconnect using goldnat-master. Idempotent — re-running the migration is a no-op on already-migrated sites.get_agent_clients() no longer reads "Goldnat (webmcp)"; it now reads "Goldnat Master", matching the display name in the DB and on the OAuth consent screen.webmcp-master OAuth client had client_name = 'WebMCP Master' in the database, which is the name users saw on the "Authorize this application?" consent screen every time they connected an AI agent with full-access scope. New DB schema upgrade 2.0.4 renames the display name to Goldnat Master on existing sites. The client_id itself stays webmcp-master — active tokens and integrations reference that identifier and would break if it changed. Fresh installs also get the new display name via insert_default_clients().wp_options.rewrite_rules. The activation hook flushes that cache — but activation doesn't run on plugin update, wp-cli update, or auto-update, so any new or renamed route (like /api/aiconnect-manifest) returned the homepage instead of the handler until someone manually visited Settings → Permalinks. The plugin now checks goldtwmcp_version on every init; when it lags GOLDTWMCP_VERSION the flush is scheduled on wp_loaded (priority 999) and the version option is bumped. Zero-config for site admins — the first request after an upgrade repairs the cache. (See gold-t.co.il thread #700.)/ai-connect/ info-page subtitle reads "Goldnat AI Connect · Servio Protocol" (was: "WebMCP Protocol Bridge"). The manual quick-prompt template opens with "Connect to using the Servio Protocol" (was: "using the WebMCP protocol"), so users no longer paste stale branding into their AI agent./ai-connect/ page pointed to https://ai-connect.gold-t.co.il/wordpress, which returns 404. Updated to the live docs at https://plugins.goldnat.ai/wordpress./api/aiconnect-manifest, /api/aiconnect-tools, /api/aiconnect-oauth — the old /wp-json/goldt-webmcp-bridge/v1/* paths were removed in 0.5.8 but the readme still showed them.goldt-webmcp-bridge), text domain (goldt-webmcp-bridge), PHP namespace (GoldtWebMCP\), option keys (goldtwmcp_*), database tables, PHP constants (GOLDTWMCP_VERSION) and every REST endpoint are UNCHANGED. Existing OAuth tokens, custom tools registered via goldtwmcp_register_modules, and AI agent integrations continue to work with no reconfiguration.wordpress.listCategories tool — resolve category id from name or slug via case-insensitive substring search. Supports parent, orderby, and limit parameters. Fixes the gap where AI agents had to guess category IDs before calling createPost.wordpress.listTags tool — same interface for post tags./wp-json/goldt-webmcp-bridge/v1/* to /api/aiconnect-* to match the unified Servio protocol used across all Goldnat plugins (WordPress, XenForo, and future platforms). This enables goldnat.ai's detectWebMCPConnect to recognize WordPress prompts the same way it recognizes XenForo prompts.wpc_/wpr_ to xfa_/xfr_ (Servio standard). Existing tokens will stop working — users need to generate a new prompt from the /ai-connect/ page./api/aiconnect-manifest — serves the Servio manifest (was /wp-json/goldt-webmcp-bridge/v1/manifest)./api/aiconnect-tools — serves tool calls with ?name=toolName (was /wp-json/goldt-webmcp-bridge/v1/tools/{toolName})./api/aiconnect-oauth — handles token exchange and refresh (was /wp-json/goldt-webmcp-bridge/v1/oauth/token).Bearer_Auth::authenticate_request() — public method for authenticating requests outside the WP REST infrastructure (used by the Servio /api/ handlers).webmcp_addSite, no "Option A / Option B", direct URL fallback for read-only tools only.generate-prompt, my-tokens) remain as WP REST routes with cookie auth — unaffected by this change.wordpress.searchPosts, wordpress.searchPages, wordpress.getPost, wordpress.getPage. Previously the tools ran WordPress's the_content filter, which executed dynamic blocks and shortcodes — so a Cart page could accidentally return the rendered "New in store" WooCommerce grid (product names, prices, SKUs) even though it was called through a page tool. The four tools now return the raw post_content by default, so dynamic blocks stay as <!-- wp:… --> markers.render parameter on the four read tools with three modes:raw (default, safe) — returns post_content verbatim; no block/shortcode execution.full — runs the_content filter and executes blocks/shortcodes (only for callers that specifically need rendered HTML).excerpt — returns just the post excerpt.
Any unrecognized value falls back to raw. The chosen mode is echoed back in the response as the render field so the caller can verify it.Module_Base::check_scope() helper method — maps OAuth scopes (read / write / delete / admin / manage_users) to WordPress capabilities and returns whether the current user has the required capability. Used by Pro plugin's write handlers as a defense-in-depth check on top of the router's scope validation./ai-connect/ page — Console Hero UI with Space Grotesk, Inter and JetBrains Mono fonts, all styles scoped under .aiconnect-app so they cannot leak into WP admin or other plugins.GET/DELETE /goldt-webmcp-bridge/v1/my-tokens and DELETE /goldt-webmcp-bridge/v1/my-tokens/{id}, protected by WP cookie + REST nonce./generate-prompt and /my-tokens bypass the Bearer requirement when the WP session is valid.register_module() now supports multiple module instances under the same module_name (was overwriting). Required for Pro plugin compatibility.getCurrentUser / getSupportedLanguages input_schema now uses \stdClass instead of empty array() to ensure JSON Schema 2020-12 compliance (properties: {} not properties: []).$version = '0.4.0' class property to use GOLDTWMCP_VERSION constant.mysql2date() calls with gmdate() in OAuth tokens admin view (deprecated since WordPress 5.3).goldtwmcp — corrected to goldt-webmcp-bridge.echo calls in admin status page wrapped with esc_html().copyCode() JavaScript function was missing. Added with navigator.clipboard API and execCommand fallback.webmcp-master.ai added to the supported platforms list on the /ai-connect/ info page.searchPosts and searchPages now use native WordPress capability filtering (post_status => 'any'): subscribers see only published posts, authors see their own drafts, editors/admins see all. The status parameter has been removed from the tool schema since it is no longer needed.getPost and getPage now enforce current_user_can('read_post') for non-published content, preventing unauthorized access to drafts/private pages by ID.wp plugin check warnings — renamed unprefixed view variables to goldtwmcp_ prefix; wrapped $table in esc_sql() in schema-introspection queries; suppressed false-positive PluginCheck.Security.DirectDB warnings on whitelisted SQL fragments.class-database.php, class-token-registry.php, class-oauth-server.php, and admin-token-registry.php.auth.registered_clients — an object mapping each registered OAuth client_id to its display name, so AI agents can discover which clients this site accepts without an extra round-trip.webmcp-master (WebMCP Master) with full scopes (read, write, delete, manage_users) — seeded on fresh installs and idempotently inserted on upgrade for existing sites.webmcp-master client when missing.{prefix}aiconnect_token_registry) records every issued/refreshed token (only the 16-char prefix is stored, not the full secret), tracking issued_at / expires_at / last_used_at / revoked_at / revoked_by / source / ip_address.GET /wp-json/goldt-mcp/v1/admin/tokens and DELETE /wp-json/goldt-mcp/v1/admin/tokens/{id} (manage_options only).last_used_at and reject tokens revoked in the registry (defense in depth).