# php-sdk

> The official PHP SDK for Model Context Protocol servers and clients. Maintained in collaboration with The PHP Foundation.

- **URL**: https://www.freshcrate.ai/projects/php-sdk
- **Author**: modelcontextprotocol
- **Category**: RAG & Memory
- **Latest version**: `v0.6.0` (2026-06-02)
- **License**: NOASSERTION
- **Source**: https://github.com/modelcontextprotocol/php-sdk
- **Homepage**: https://php.sdk.modelcontextprotocol.io
- **Language**: PHP
- **GitHub**: 1,459 stars, 127 forks
- **Registry**: github
- **Tags**: `php`

## Description

The official PHP SDK for Model Context Protocol servers and clients. Maintained in collaboration with The PHP Foundation.

## Recent releases

| Version | Date | Urgency | Changes |
| --- | --- | --- | --- |
| `v0.6.0` | 2026-06-02 | High | ## What's Changed * [Server] Allow overriding the default file name pattern for Discovery by @johnhunt-lc in https://github.com/modelcontextprotocol/php-sdk/pull/292 * [Server] force the proper Content-type for the 202 response in createJsonResponse() by @johnhunt-lc in https://github.com/modelcontextprotocol/php-sdk/pull/295 * [Schema] fix: allow URIs without double slash in Resource and ResourceTemplate (RFC 3986) by @blackwell-systems in https://github.com/modelcontextprotocol/php-sdk/pull |
| `v0.5.0` | 2026-04-26 | High | ## What's Changed * [Server] chore: remove final keyword on attributes classes by @fox-john in https://github.com/modelcontextprotocol/php-sdk/pull/240 * [Server] fix(session): initialize data lazily in save() to prevent uninitialized property access by @soyuka in https://github.com/modelcontextprotocol/php-sdk/pull/252 * [Server] Oauth2 based on middleware by @sveneld in https://github.com/modelcontextprotocol/php-sdk/pull/221 * Add basic roadmap with important goals for v1.0 by @chr-hertel |
| `v0.4.0` | 2026-02-23 | Low | ## What's Changed * chore: update licensing to Apache 2.0 for new contributions by @domdomegg in https://github.com/modelcontextprotocol/php-sdk/pull/222 * [Server] refactor: extract formatters into dedicated classes by @e0ipso in https://github.com/modelcontextprotocol/php-sdk/pull/224 * [Schema] Refactor the schema tool array to use normalizeSchemaProperties method by @bigdevlarry in https://github.com/modelcontextprotocol/php-sdk/pull/223 * Update codestyle based on updated Symfony rules |
| `v0.3.0` | 2026-01-11 | Low | ## What's Changed * [Server] Add support for binary resource in conformance server example by @luoyue712 in https://github.com/modelcontextprotocol/php-sdk/pull/216 * [Server] Fix conformance sampling test stuck issue with Docker PHP-FPM by @CodeWithKyrian in https://github.com/modelcontextprotocol/php-sdk/pull/219 * [Server] Add output schema support to MCP tools by @bigdevlarry in https://github.com/modelcontextprotocol/php-sdk/pull/153 * [Server] Use SchemaValidator to validate tool input |
| `v0.2.2` | 2025-12-28 | Low | ## What's Changed * Normalize composer.json with ergebnis/composer-normalize by @Nyholm in https://github.com/modelcontextprotocol/php-sdk/pull/208 * Be more generous with PSR versions by @Nyholm in https://github.com/modelcontextprotocol/php-sdk/pull/202 * Remove ability to use parameter name _session and _request by @Nyholm in https://github.com/modelcontextprotocol/php-sdk/pull/206 * Use the throwable object in $context['exception'] by @Nyholm in https://github.com/modelcontextprotocol/ph |
| `v0.2.1` | 2025-12-27 | Low | ## What's Changed * House keeping in cs fixer config and makefile by @chr-hertel in https://github.com/modelcontextprotocol/php-sdk/pull/196 * Add a way to stop the stdioTransport in a graceful way by @Nyholm in https://github.com/modelcontextprotocol/php-sdk/pull/195 * Allow to install with sf 5.4 by @Nyholm in https://github.com/modelcontextprotocol/php-sdk/pull/197 * Move examples to server directory by @Nyholm in https://github.com/modelcontextprotocol/php-sdk/pull/198 * Add changelog e |
| `v0.2.0` | 2025-12-20 | Low | ## What's Changed * fix minor typo in readme by @Nyholm in https://github.com/modelcontextprotocol/php-sdk/pull/162 * remove redundant methods in Transport by @Nyholm in https://github.com/modelcontextprotocol/php-sdk/pull/163 * Add CakePHP integration plugin to README by @dereuromark in https://github.com/modelcontextprotocol/php-sdk/pull/166 * Tell clients that they are allowed to use Mcp-Session-Id header by @Nyholm in https://github.com/modelcontextprotocol/php-sdk/pull/165 * Fix code s |
| `v0.1.0` | 2025-11-20 | Low | ## What's Changed * [Server] Kicking off the SDK based on Symfony's MCP SDK by @chr-hertel in https://github.com/modelcontextprotocol/php-sdk/pull/1 * [Server] Introducing Capability Registry & Discovery by @chr-hertel in https://github.com/modelcontextprotocol/php-sdk/pull/4 * [Examples][Server] Adopt Server Examples by @chr-hertel in https://github.com/modelcontextprotocol/php-sdk/pull/5 * Add WIP note to readme by @chr-hertel in https://github.com/modelcontextprotocol/php-sdk/pull/6 * [S |

## Citation

- HTML: https://www.freshcrate.ai/projects/php-sdk
- Markdown: https://www.freshcrate.ai/projects/php-sdk.md
- Dependencies JSON: https://www.freshcrate.ai/api/projects/php-sdk/deps

_Generated by freshcrate.ai. Indexes github releases for AI-agent ecosystem packages._
