CHANGELOG.md
36 lines
| 1 | # Changelog |
| 2 | |
| 3 | All notable changes to this project will be documented in this file. |
| 4 | |
| 5 | The format is based on [](https://keepachangelog.com/en/1.1.0/Keep a Changelog](https://keepachangelog.com/en/1.1.0/](https://keepachangelog.com/en/1.1.0/), |
| 6 | and this project adheres to [](https://semver.org/spec/v2.0.0.htmlSemantic Versioning](https://semver.org/spec/v2.0.0.html](https://semver.org/spec/v2.0.0.html). |
| 7 | |
| 8 | ## [Unreleased] |
| 9 | |
| 10 | ## [0.1.2] - 2026-06-05 |
| 11 | |
| 12 | ### Fixed |
| 13 | |
| 14 | - `ToolInputSchema::toArray()` and `ToolOutputSchema::toArray()` now always emit the `properties` key as a JSON object, even for tools that declare no parameters. Parameter-less tools previously produced `{"type":"object"}` (key omitted) or `[]` (JSON array), both of which strict JSON Schema validators such as OpenAI strict function-calling mode reject with `object schema missing properties`. Tools with parameters are unchanged. The fix is mirrored in the TypeScript generator so a clean regeneration reproduces the patched output. |
| 15 | |
| 16 | ## [0.1.1] - 2026-04-10 |
| 17 | |
| 18 | ### Fixed |
| 19 | |
| 20 | - Exclude `skill/` directory from Composer dist archives. It contains dev-only helper scripts and reference docs that have no runtime purpose for package consumers and should not ship in the `vendor/` folder. |
| 21 | - Exclude `CLAUDE.md` from Composer dist archives. It contains dev-only project instructions with no runtime purpose for package consumers. |
| 22 | |
| 23 | ## [0.1.0] - 2026-03-02 |
| 24 | |
| 25 | ### Added |
| 26 | |
| 27 | - PHP 7.4+ Data Transfer Objects (DTOs) for the Model Context Protocol (MCP) 2025-11-25 specification |
| 28 | - `fromArray()` static factory methods for deserializing arrays into typed DTOs |
| 29 | - `toArray()` methods for serializing DTOs to arrays suitable for `json_encode()` |
| 30 | - Factory classes for union/polymorphic type resolution |
| 31 | - Class-based enums for MCP enumerated values (PHP 7.4 compatible) |
| 32 | - Complete MCP domain coverage: Server (Tools, Resources, Prompts, Logging), Client (Sampling, Elicitation, Roots), Common (JSON-RPC, Protocol, Content) |
| 33 | - JSON-RPC 2.0 message types (Request, Notification, Result, Error) |
| 34 | - PSR-4 autoloading under `WP\McpSchema\` namespace |
| 35 | - PHPStan level max static analysis validation |
| 36 |