Опис
Rectus Content Access for MCP lets authenticated MCP clients list, read, create, and update WordPress content and upload images.
For a Japanese overview and setup guide, visit the Rectus Content Access for MCP introduction page.
The plugin provides:
- Listing, creation, and updating of posts, pages, and selected custom post types.
- Reading of a single post’s stored title, content, excerpt, and assigned terms for editing workflows.
- Listing of enabled post types with labels, supported fields, and taxonomies.
- Listing of existing taxonomy terms so clients reuse the established vocabulary.
- Paginated content lists with status, search, taxonomy term, and ordering filters.
- Featured image assignment from uploaded media when creating or updating posts.
- Media library listing and confirmation-protected permanent attachment deletion.
- A settings screen where administrators choose which post types MCP clients may access.
- Support for standard content fields and taxonomies assigned to the selected post type.
- Direct multipart image uploads for Codex and Claude Code using short-lived, one-time tickets.
- Base64-encoded image uploads as a fallback for MCP clients that cannot perform direct uploads.
- Browser-based OAuth 2.1 authorization with PKCE and automatic token refresh.
- Copy-ready setup commands for Codex and Claude Code.
- Site-specific MCP server names derived from the WordPress domain and path to prevent client configuration collisions.
- Translation-ready administration, OAuth, MCP ability, and error strings.
Posts and pages are enabled by default. Custom post types must be enabled by an administrator before MCP clients can use them.
Rectus Content Access for MCP checks the authorized WordPress user’s native capabilities for every operation, including each post type’s create, edit, publish, and taxonomy permissions.
Saved content is filtered by the same capability WordPress itself uses, so an edit made through an MCP client is stored exactly as the block or classic editor would have stored it. Markup that the editors keep, such as JSON-LD structured data and schema.org microdata, survives the round trip instead of being silently rewritten.
OAuth access tokens, refresh tokens, authorization codes, and direct media upload tickets are stored only as SHA-256 hashes. Access tokens expire after one hour, refresh tokens are rotated automatically, and connections can be revoked from the settings screen. Uninstalling Rectus Content Access for MCP removes its settings and OAuth data.
The official WordPress MCP Adapter library is bundled with Rectus Content Access for MCP. A separate MCP Adapter plugin or Node.js process is not required on the WordPress server.
Third-Party Libraries
Rectus Content Access for MCP includes the following GPL-compatible Composer packages:
- WordPress MCP Adapter, copyright WordPress.org Contributors, GPL-2.0-or-later.
- WordPress PHP MCP Schema, copyright WordPress.org Contributors, GPL-2.0-or-later.
- Jetpack Autoloader, copyright Automattic, GPL-2.0-or-later.
License files are included with each package under the vendor directory.
Постављање
- Install and activate Rectus Content Access for MCP.
- Open Settings, Rectus Content Access for MCP.
- Select the post types that MCP clients may list, create, or update.
- Copy and run the setup command for your client.
- Follow the client-specific authentication instructions shown on the settings screen.
HTTPS is required for OAuth connections. The connection has the same effective permissions as the WordPress user who approved it.
ЧПП
-
Does Rectus Content Access for MCP require an external service?
-
No service operated by the plugin author is required. MCP requests are handled by WordPress through the bundled official MCP Adapter library. When an OAuth client uses an HTTPS URL as its client ID, Rectus Content Access for MCP retrieves public client metadata from that client-provided URL as described below.
-
What data is sent when URL-based OAuth client metadata is retrieved?
-
During OAuth authorization, a connecting client may provide an HTTPS metadata URL as its client ID. Rectus Content Access for MCP then sends a server-side GET request to that exact URL with an
Accept: application/jsonheader. The response is limited to 64 KB and valid metadata is cached for one hour. No WordPress content, passwords, OAuth codes, or tokens are sent. The destination is selected and operated by the connecting MCP client, not by the plugin author, so the destination operator’s terms and privacy policy apply. -
Does the WordPress server need Node.js?
-
No. The server-side plugin runs in PHP. An MCP client may have its own local runtime requirements, depending on the client.
-
Does Rectus Content Access for MCP send my WordPress password to the MCP client?
-
No. The user signs in on the WordPress site and approves the connection in the browser. The MCP client receives short-lived OAuth tokens instead of the WordPress password.
-
How do I revoke a connection?
-
Open Settings, Rectus Content Access for MCP and revoke the connection in the OAuth connections table. MCP clients may also clear or revoke their saved authorization.
-
How are local images uploaded without Base64?
-
Codex and Claude Code should call the media upload ticket tool with the local image filename, byte size, MIME type, and attachment metadata. The tool returns a plugin REST endpoint and a short-lived, one-time token. The client then sends the image bytes directly as multipart form data. The image does not enter the model context, and no Application Password or second WordPress login is required.
The ticket is valid for five minutes, is bound to the authorized WordPress user and expected file metadata, and is stored only as a SHA-256 hash. Repeating a completed request with the same ticket returns the existing attachment instead of creating a duplicate.
MCP clients that cannot perform the direct HTTP upload may continue to use the Base64 media upload tool. Files already present in the WordPress uploads/mcp-inbox directory may use the media import tool without transferring image bytes through MCP.
-
How do I select and delete media?
-
Use the media list tool to search the WordPress media library and obtain the exact attachment ID and filename. Then call the media delete tool with that ID, the matching filename, and
confirmset to true. WordPress checks the authorized user’s delete permission for the selected attachment.Deletion is permanent and removes the attachment and its generated files. Existing links to that media in post content are not rewritten, so clients should show the selected ID and filename to the user before confirming.
-
How is the MCP server name chosen?
-
Rectus Content Access for MCP derives the client configuration name from the site’s domain and subdirectory path. For example,
rectus.co.jpbecomeswordpress-rectus-co-jp, whileexample.com/site-abecomeswordpress-example-com-site-a. This prevents different WordPress sites from overwriting each other’s MCP client configuration. -
Why should I run the Codex login command only when needed?
-
Codex App and Codex CLI share MCP configuration. After the add command saves the server, Codex App may open the authorization screen automatically. Approve that screen once. Run
codex mcp loginonly when authorization does not start; running both flows at the same time can create a duplicate OAuth connection. -
How do I authenticate Claude Code?
-
Run the displayed
claude mcp addcommand, then runclaude mcp login. The login command opens the browser authorization screen directly, so there is no need to start Claude Code and run/mcpmanually. -
Why do new MCP clients fail to connect while existing clients keep working?
-
The OAuth discovery URLs under
/.well-known/are served through WordPress. Server rules that handle/.well-known/before WordPress break new authorizations while issued tokens keep refreshing. Rectus Content Access for MCP reports this state in Site Health and in the Discovery metadata row on the settings screen. -
Does OAuth support random localhost callback ports?
-
Yes. Native MCP clients may select an available loopback port when authorization starts. Rectus Content Access for MCP follows RFC 8252 by allowing the port to differ for
localhost,127.0.0.1, and::1redirect URIs while still requiring the scheme, host, path, and query to match. All other redirect URIs require an exact match. -
Is post content sanitized before it is saved?
-
Yes, by the same rule WordPress applies to the block and classic editors. Content from a user who holds the unfiltered_html capability, which on a single site means an administrator, is stored as written and left to the content_save_pre filters that wp_insert_post() applies, so nothing is removed that the editors would have kept. Content from every other user is filtered with wp_kses_post(), which strips script elements, event handler attributes, and anything else outside the allowed list. Rectus Content Access for MCP additionally allows schema.org microdata attributes there, because WordPress core omits them and structured data lives in the post content.
An MCP connection therefore never grants more reach than the approving WordPress user already had in the editor.
-
Which custom post types are available?
-
Rectus Content Access for MCP lists non-built-in post types that have a WordPress editing screen and support a title, editor, or excerpt. Administrators must explicitly enable each post type.
-
Are ACF and other custom fields supported?
-
Not in version 0.5.2. Standard title, content, excerpt, slug, status, and assigned taxonomies are supported. Plugin-specific custom fields require a separate integration.
-
Which languages are supported?
-
English source strings are included. After publication on WordPress.org, community translations are provided through translate.wordpress.org and delivered as WordPress language packs.
Прегледи
Нема рецензија за овај додатак.
Сарадници и градитељи
Rectus Content Access for MCP је софтвер отвореног кода. Следећи људи су допринели овом додатку.
СараднициПреведите Rectus Content Access for MCP на свој језик.
Заинтересовани сте за градњу?
Прегледајте код, проверите SVN складиште или се пријавите на белешку градње преко RSS-а.
Белешка о изменама
0.5.2
- Verified post content after create and update operations so silently changed content is no longer reported as a successful save.
- Preserved backslashes and escaped JSON values when creating posts, pages, and custom post type entries.
- Allowed a short refresh-token rotation overlap for concurrent processes using the same MCP client credentials without revoking the active connection family.
- Stored MCP HTTP sessions independently so Codex, Claude Code, and other clients can connect concurrently as the same WordPress user without overwriting one another.
- Added media listing and permission-checked permanent deletion with exact ID, filename, and confirmation safeguards.
0.5.1
- Stopped running post content through wp_kses_post() for users who hold unfiltered_html, so an edit made through MCP keeps the markup that the block and classic editors would have stored.
- Fixed JSON-LD structured data being dropped, and its raw JSON left behind as visible body text, when those users saved content through the create and update tools.
0.5.0
- Added a preferred direct multipart image upload flow for Codex and Claude Code.
- Added short-lived, one-time media upload tickets exposed through an MCP ability.
- Added a plugin REST endpoint that validates the ticket, WordPress user permissions, filename, byte size, MIME type, and image contents.
- Added idempotent retry behavior that returns an existing attachment instead of creating a duplicate.
- Kept Base64 media upload and server-side inbox import as compatible fallbacks.
- Renamed PHP symbols, internal hooks, settings, OAuth storage, and credential prefixes to match Rectus Content Access for MCP.
0.4.1
- Preserved schema.org microdata attributes in post content saved through the create and update tools.
0.4.0
- Renamed the plugin to Rectus Content Access for MCP and updated its pre-approval slug.
- Internationalized MCP ability names, descriptions, and error messages.
- Standardized English source strings for WordPress.org translation workflows.
- Removed bundled translation files in favor of WordPress.org language packs.
- Generated site-specific MCP client server names from the WordPress domain and path.
- Documented URL-based OAuth client metadata retrieval and the data it sends.
- Separated Codex server setup from the fallback login command to prevent duplicate OAuth authorization flows.
- Updated Claude Code setup to open browser authorization directly via
claude mcp login. - Added a Site Health test and a settings screen check for OAuth discovery metadata reachability.
- Added a post read tool that returns the stored content and terms for AI editing workflows.
- Added a taxonomy term listing tool so clients assign existing terms instead of creating variants.
- Added featured image support to the post create, update, and read tools.
- Added taxonomy term filtering to the post list tool.
- Allowed RFC 8252 ephemeral ports for native client loopback OAuth redirects.
0.3.0
- Added read-only paginated listing for posts, pages, and enabled custom post types.
- Added read-only discovery of enabled post types, supported fields, and taxonomies.
0.2.0
- Added MCP OAuth 2.1 authorization with PKCE, resource indicators, and discovery metadata.
- Added automatic access token refresh, refresh token rotation, and connection revocation.
- Replaced Application Password setup with one-copy Codex and Claude Code commands.
- Added an OAuth connection management table to the settings screen.
0.1.0
- Initial release.
- Added configurable post, page, and custom post type access.
- Added standard content, taxonomy, and media abilities.
- Bundled the official WordPress MCP Adapter with conflict-safe autoloading.
- Added initial Application Password and MCP client setup tools.

