Skip to content

docs: rebuild readme.txt for the WordPress.org listing - #285

Open
abhi3315 wants to merge 2 commits into
WordPress:trunkfrom
abhi3315:fix/readme-txt-wporg-listing
Open

docs: rebuild readme.txt for the WordPress.org listing#285
abhi3315 wants to merge 2 commits into
WordPress:trunkfrom
abhi3315:fix/readme-txt-wporg-listing

Conversation

@abhi3315

@abhi3315 abhi3315 commented Aug 13, 2026

Copy link
Copy Markdown

What?

See #178

Rebuilds readme.txt for the WordPress.org listing, following WordPress/ai/readme.txt. Also removes two packaging entries for files that aren't in the repo.

Why?

A few things would be wrong on the .org page as it stands. The Changelog tab would be empty, because == Changelog == just links out to GitHub releases. == Installation == tells people to download from a GitHub release, which won't be right once the plugin is in the directory. There's no FAQ. And Contributors: only lists wordpressdotorg.

Separately, package.json files lists CHANGELOG.md and LICENSE. Neither file exists, and .gitattributes export-ignores CHANGELOG.md at the same time, so the two disagree.

How?

  • Added For Developers, Frequently Asked Questions and Upgrade Notice sections. The full changelog is now inline, 0.6.1 back to 0.1.0, with the breaking changes repeated under Upgrade Notice.
  • Installation now starts with the plugin directory. Composer and Jetpack Autoloader notes moved into For Developers.
  • Stable tag: 0.6.1, to match mcp-adapter.php.
  • Removed the CHANGELOG.md entries from package.json and .gitattributes, and changed LICENSE to LICENSE.md, which is the real filename.
  • No Screenshots section. There's no admin UI in trunk yet (feat(admin): add Settings > MCP Adapter page to opt registered abilities into the default server (fixes #183) #184).

Contributors is now wordpressdotorg, ovidiu-galatan. @gziolo asked for galatanovidiu in #178, but that's the GitHub handle, and this field needs a WordPress.org username. profiles.wordpress.org/galatanovidiu/ 404s and ovidiu-galatan works. The parser drops names it can't find, so the GitHub handle would have credited nobody. Happy to change it if I've picked the wrong person.

Use of AI Tools

AI assistance: Yes
Tool(s): Claude Code
Model(s): Claude Opus 5
Used for: Writing the readme.txt text and turning the existing release notes into the inline changelog. I checked everything against the repo and against the .org readme parser, and I'm responsible for what's here.

Testing Instructions

  1. Put the raw readme through the readme validator.
  2. Run npm run plugin-zip and check that readme.txt and LICENSE.md are both in the zip.
  3. Check Stable tag matches Version in mcp-adapter.php. Both should be 0.6.1.
  4. Plugin Check runs in CI.

Every section is under the parser's limits. The biggest is Changelog, at 906 words out of 5,000.

Changelog Entry

Changed - Rebuilt readme.txt for the WordPress.org listing with the full changelog inline, and removed package.json and .gitattributes entries for files that aren't in the repo.

Follows WordPress/ai's structure and moves the full changelog inline so the .org Changelog tab isn't empty. Also drops the CHANGELOG.md entries that pointed at a file which never existed, and corrects LICENSE to LICENSE.md.

See WordPress#178
@codecov

codecov Bot commented Aug 13, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 88.17%. Comparing base (23cb53e) to head (8ddaffb).

Additional details and impacted files
@@            Coverage Diff            @@
##              trunk     #285   +/-   ##
=========================================
  Coverage     88.17%   88.17%           
  Complexity     1259     1259           
=========================================
  Files            54       54           
  Lines          4120     4120           
=========================================
  Hits           3633     3633           
  Misses          487      487           
Flag Coverage Δ
unit 88.17% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@abhi3315
abhi3315 marked this pull request as ready for review August 13, 2026 17:04
Copilot AI lite review requested due to automatic review settings August 13, 2026 17:04
@github-actions

github-actions Bot commented Aug 13, 2026

Copy link
Copy Markdown

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the props-bot label.

If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message.

Co-authored-by: abhi3315 <abhi3315@git.wordpress.org>
Co-authored-by: justlevine <justlevine@git.wordpress.org>

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the plugin’s WordPress.org-facing metadata by rebuilding readme.txt to match WordPress.org expectations (installation instructions, FAQ, inline changelog, upgrade notices, contributors), and aligns packaging config so release artifacts include the correct license file and don’t reference non-existent files.

Changes:

  • Reworked readme.txt for WordPress.org: updated installation flow, added “For Developers” + FAQ, and inlined changelog + upgrade notices.
  • Updated npm packaging file list to include LICENSE.md (actual filename) and removed references to missing files.
  • Removed .gitattributes export-ignore entry for a non-existent CHANGELOG.md.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated no comments.

File Description
readme.txt Rebuilt WordPress.org readme sections (installation, FAQ, full changelog, upgrade notice) and updated contributors.
package.json Fixed packaged file list by replacing LICENSE with LICENSE.md and removing CHANGELOG.md.
.gitattributes Removed export-ignore for CHANGELOG.md since it’s not present in the repo.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread readme.txt Outdated
- `wp mcp-adapter serve` keeps JSON-RPC stdout clean when selecting the default server.
- WP-CLI's global `--user` argument is used instead of registering a conflicting local option.

= 0.5.0 - 2026-04-15 =

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IMO better to put this and everything earlier into CHANGELOG.md to keep this file from getting unwieldly. Once we hit 1.0 (i'm assuming the submission itself), we'd want everything pre-release in CHANGELOG.md and out of this file.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, fair. Will keep 0.6.1 and 0.6.0 here and move the rest into CHANGELOG.md.

@gziolo asked for the full changelog inline over in #178, so I'll mention it there.

Comment thread readme.txt Outdated
Comment on lines +40 to +57
== For Developers ==

MCP Adapter is built to be extended, and can also be consumed directly as a library.

**Use it as a Composer dependency:**

`composer require wordpress/mcp-adapter`

If you vendor the library inside your own plugin, load it through the [Jetpack Autoloader](https://github.com/Automattic/jetpack-autoloader) so that every plugin on the site resolves the same `WP\MCP` implementation. Running an independently namespace-prefixed copy alongside the plugin is not supported.

**Extend the adapter:**

* **Custom Transports** – Implement `McpTransportInterface` to add transport protocols beyond the built-in HTTP and STDIO support.
* **Custom Error Handlers** – Implement `McpErrorHandlerInterface` for per-server error handling strategies.
* **Observability Handlers** – Record events and timings into your own metrics pipeline.
* **Multiple Servers** – Use `create_server()` to run several MCP servers with independent configurations.
* **Hooks** – Filters and actions throughout the codebase, all prefixed `mcp_adapter_`.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'd strip all of this from here

  1. The audience of this file are end users installing it from W.org
  2. Once it's on w.org Composer installation should be a last resort.
  3. Single source of truth, as part of the docs cleanup we want fewer places repeating the same things.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will drop it.

Turns out it wasn't rendering as its own section anyway.

Comment thread readme.txt Outdated
Comment on lines +67 to +70
= What do I need to run this? =

WordPress 6.9 or newer and PHP 7.4 or newer. The Abilities API is included in WordPress core from 6.9, so no additional plugin is required.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Isn't this redundant? We have Requires headers...

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dropping it.

Want to keep one bit though, that the Abilities API ships in core from 6.9 so you don't need the separate plugin. That's not in any header and 0.6.0 dropped support for the standalone one. I'll fold it into the "What is MCP Adapter?" answer unless you'd rather it sat somewhere else.

@justlevine justlevine Aug 14, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IWhy would anyone think you need a separate plugin? That sounds like an AI Slop decision-log piece of information, so id rather it sat nowhere. The plugin requires WordPress 6.9+ - that's all that the user needs to know, IMO, not that before WordPress 6.9 this plugin won't work and the Abilities API doesn't exist...

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

RIght, make sense! I addressed you suggestions, please take a look again!

Comment thread readme.txt Outdated
Comment on lines +81 to +84
= Can another plugin bundle MCP Adapter as a library? =

Yes, via `composer require wordpress/mcp-adapter`. Load it through the Jetpack Autoloader so that all plugins on the site resolve the same `WP\MCP` implementation. Running an independently namespace-prefixed copy alongside the plugin is not supported.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above, it's possible but we want to bury this possibility as much as possible in the docs.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will cut it.

Comment thread readme.txt Outdated
3. Join the conversation in [#core-ai on WordPress Slack](https://wordpress.slack.com/archives/C08TJ8BPULS).
4. Browse the [GitHub repository](https://github.com/WordPress/mcp-adapter) and open issues or pull requests.

== Frequently Asked Questions ==

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would add two more (imo the most important ones):

  1. What is MCP?
  2. What is MCP Adapter? (This is where we stress that it's just a server + transport, and any consumable functionality (e.g. abilities) come from somewhere else.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed, those are the important ones. Adding both.

abhi3315 added a commit to abhi3315/mcp-adapter that referenced this pull request Aug 14, 2026
Drops the For Developers section and two FAQ entries, adds What is MCP and What is MCP Adapter, and moves releases before 0.6.0 into CHANGELOG.md.

See WordPress#285
Drops the For Developers section and two FAQ entries, adds What is MCP and What is MCP Adapter, and moves releases before 0.6.0 into CHANGELOG.md.

See WordPress#285
@abhi3315
abhi3315 force-pushed the fix/readme-txt-wporg-listing branch from 5a43279 to 8ddaffb Compare August 14, 2026 10:55
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.

3 participants