| Filename | Latest commit message | Latest commit date |
|---|---|---|
* [Tests] Bump MCP Inspector to 0.22.0 for 2025-11-25 protocol The pinned inspector 0.17.2 predates the protocol version bump to 2025-11-25 (v0.6.0) and rejects the handshake with "Server's protocol version is not supported", failing every inspector snapshot test. 0.22.0 negotiates the current protocol; the full inspector suite passes against it (95 tests, 7 pre-existing skips). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * [Examples] Demo pre-built instance handler in combined-registration Extends the combined-registration example with a third handler style: a pre-built object instance `[$instance, 'method']`, alongside the existing discovered and manual class-string handlers. PreconfiguredGreeter takes a scalar constructor argument neither the container-less `new $className()` fallback nor the auto-wiring container can build, so it can only be registered as an already-constructed instance — exercising the resolver path added in the parent branch. Adds an inspector snapshot case (tools/call instance_greeter) and updates the tools/list snapshot. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
| .. | ||
| cached-discovery | ||
| client-communication | ||
| client-logging | ||
| combined-registration | ||
| complex-tool-schema | ||
| custom-dependencies | ||
| custom-method-handlers | ||
| discovery-calculator | ||
| discovery-userprofile | ||
| elicitation | ||
| env-variables | ||
| explicit-registration | ||
| mcp-apps | ||
| oauth-keycloak | ||
| oauth-microsoft | ||
| schema-showcase | ||
| bootstrap.php | ||
| README.md | ||
MCP SDK Examples
This directory contains various examples of how to use the PHP MCP SDK.
You can run the examples with the dependencies already installed in the root directory of the SDK. The bootstrapping of the example will choose the used transport based on the SAPI you use.
For running an example, you execute the server.php like this:
# For using the STDIO transport:
php examples/server/discovery-calculator/server.php
# For using the Streamable HTTP transport:
php -S localhost:8000 examples/server/discovery-userprofile/server.php
You will see debug outputs to help you understand what is happening.
Run with Inspector:
npx @modelcontextprotocol/inspector php examples/server/discovery-calculator/server.php
Debugging
You can enable debug output by setting the DEBUG environment variable to 1, and additionally log to a file by
setting the FILE_LOG environment variable to 1 as well. A dev.log file gets written within the example's
directory.
With the Inspector you can set the environment variables like this:
npx @modelcontextprotocol/inspector -e DEBUG=1 -e FILE_LOG=1 php examples/server/discovery-calculator/server.php