The official PHP SDK for Model Context Protocol servers and clients. Maintained in collaboration with The PHP Foundation.
MCP PHP SDK
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
The official PHP SDK for the Model Context Protocol (MCP). It provides a framework-agnostic API for implementing MCP
servers and clients in PHP — tools, resources, prompts, STDIO and HTTP transports, sessions, authorization, and both
protocol eras (the initialize handshake and the stateless 2026-07-28 revision).
This project represents a collaboration between the PHP Foundation and the Symfony project. It adopts
development practices and standards from the Symfony project, including Coding Standards and the
Backward Compatibility Promise.
Until the first major release, this SDK is considered experimental, please see the roadmap for
planned next steps and features.
Protocol Conformance
Measured weekly against the MCP Conformance Test Framework,
as passing checks out of total. The 2026-07-28 scores run against the framework's alpha releases, so they move as
upstream publishes new scenarios.
| Revision | Server | Client |
|:--------:|:------:|:------:|
| 2026-07-28 | | |
| 2025-11-25 | | |
Installation
Build a server
A server is a plain PHP class plus three lines of wiring:
The setDiscovery() call needs symfony/finder:
The walkthrough in First server explains each piece, and
Try it with the Inspector shows it running.
Build a client
See Transports for STDIO and HTTP, Connecting to a server
for timeouts, and Server-initiated requests for the handlers that
answer requests from the server.
Documentation
The full documentation is published at **php.sdk.modelcontextprotocol.io**.
- **Get started** — Install the SDK and build your first server
- **Servers** — Tools, resources, resource templates, prompts, and how to register them
- **Inside your handler** — Talking back to the client, logging, and asking for input
- **Running your server** — Server builder, STDIO and HTTP transports, framework integration, sessions, authorization
- **Clients** — Client SDK for connecting to and communicating with MCP servers
- **Protocol versions** — The two protocol eras, and what revision 2026-07-28 changed
- **Advanced** — Events, protocol extensions (including MCP Apps), and custom message handlers
- **Deprecation policy** — How deprecated features are handled
- **SDK tier target** — Where the SDK stands on the MCP SDK tiers
- **Examples** — Runnable server and client examples
- **API Reference** — Generated class reference
External Resources
- **Model Context Protocol Documentation** — Official MCP documentation
- **Model Context Protocol Specification** — Protocol specification
- **Officially Supported Servers** — Reference server implementations
PHP Libraries Using the MCP SDK
- api-platform/mcp — MCP integration for API Platform
- bnomei/kirby-mcp — MCP server for the Kirby CMS
- drupal/mcp_server — MCP server for Drupal exposing configuration and entities as MCP elements
- josbeir/cakephp-synapse — CakePHP plugin exposing application functionality over MCP