Skip to content

Conversation

@jonathanhefner
Copy link
Member

@jonathanhefner jonathanhefner commented Dec 11, 2025

  • Add phpDocumentor configuration and docs Makefile target
  • Generate docs during CI to catch errors before releases
  • Set up GitHub Pages with Jekyll for hosting generated docs
  • Add GitHub Actions workflow to deploy docs to GitHub Pages on releases

🤖 Generated with Claude Code


This PR also includes a commit to fix existing doc errors from phpDocumentor.

You can preview the generated documentation at http://jonathanhefner.github.io/mcp-php-sdk/api/.

jonathanhefner and others added 2 commits December 11, 2025 10:37
- Add phpDocumentor configuration and `docs` Makefile target
- Generate docs during CI to catch errors before releases
- Set up GitHub Pages with Jekyll for hosting generated docs
- Add GitHub Actions workflow to deploy docs to GitHub Pages on releases

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Change class-string union types to use phpDocumentor-compatible syntax
and reorder docblock tags so class descriptions precede `@author` tags.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@chr-hertel
Copy link
Member

Hi @jonathanhefner - thanks for that proposal, is that related to the discussion we had Tuesday about standardizing SDK docs? Having that on my desk as an open issue to follow up on ...

@jonathanhefner
Copy link
Member Author

@chr-hertel I wasn't aware of a discussion, but it might be. 😄 The context is: I am trying to ensure that all MCP SDKs have documentation available at https://modelcontextprotocol.github.io/*-sdk/.

@chr-hertel
Copy link
Member

Yup, that's exactly what we want to look at - awesome!
Don't have time tonight, but will def come back this, thanks!

phar-io/composer-distributor 1.0.0 has a bug where it uses the wrong
package version when determining the phpDocumentor download URL,
causing CI to fail with 404 errors when using --prefer-lowest.
Version 1.0.2 fixes this issue.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Copy link
Contributor

@Nyholm Nyholm left a comment

Choose a reason for hiding this comment

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

Thank you.

Can you please remove the unrelated changes? Ie changes to MessageFactory and the style changes in composer.json

(Make those changes in a separate PR if you think we should merge them)

@jonathanhefner
Copy link
Member Author

Can you please remove the unrelated changes? Ie changes to MessageFactory and the style changes in composer.json

Those changes are related. The changes to MessageFactory (in commit a97a5dc) are because the previous syntax is incompatible with phpDocumentor, and would cause the build to fail during the documentation generation step.

The changes in composer.json are due to "sort-packages": true, which predates this PR:

php-sdk/composer.json

Lines 70 to 75 in 69cd04f

"config": {
"sort-packages": true,
"allow-plugins": {
"php-http/discovery": false
}
}

How would you like me to proceed?

@Nyholm
Copy link
Contributor

Nyholm commented Dec 27, 2025

Those changes are related.

Oh, okey.

Sorry, I did not know they were required.

How would you like me to proceed?

I need to you rebase your PR so I can merge.

Can you also link similar PRs to other SDKs?

@chr-hertel
Copy link
Member

Looks like @jonathanhefner was basically already all over the place - awesome!
I also tried to get some overview - and made some notes.

SDK Repos & their docs:

That's what I could find ... no guarantee for completeness :D

My proposal going forward, and to be aligned in sdk-maintainer circle, would rather be a combination of three things - ofc heavily based on what we have right now across the SDKs:

  1. Have a Readme with standardized elements (e.g. SDK Tier, Conformance Score, reference to Spec, GitHub Pages, etc.) but open for more if maintainers would want to
  2. Strong focus though on Markdown-based docs/ folder, to be deployed to GitHub Pages with streamlined layout and cross links between SDKs
  3. Package specific documentation, see pkg.go.dev or packagist.org

I don't know about API docs tbh, at least in PHP they are not that relevant anymore, and I would rather not focus on them - might differ for other ecosystems, but could be an optional part of the GitHub Pages maybe.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants