summaryrefslogtreecommitdiff
path: root/CHANGELOG.md
blob: 0e9a35b2e26e4d6d9621438dcba048caf7fbe56f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# Changelog

このプロジェクトの主な変更をリリースごとに記録します。

## [0.3.0] - 2026-09-13

### Changed

- `compose_mml`の合成成功時に、WAVのサーバーローカルパスではなくMCP標準の`AudioContent`を返すように変更しました。
- WAVはファイルサイズにかかわらず`audio/wav`のbase64データとして返します。
- MCPツール呼び出しの正式な成否判定を`CallToolResult.isError`へ統一しました。
- composeの`success`とvalidateの`valid`は、各処理の構造化結果として維持します。
- FastMCPの対応バージョンを`>=3.4.4,<4`へ更新しました。
- MCPの`serverInfo.version`がパッケージバージョンを返すようにしました。

### Security

- MCPレスポンスから`wav_path`を完全に削除し、サーバー内部のファイルパスを公開しないようにしました。
- 合成、ファイル出力、音声変換、内部例外のエラー応答から内部パスと例外詳細を除去しました。

### Testing

- `AudioContent`のMIMEタイプとbase64往復を検証するMCP境界テストを追加しました。
- compose、validate、API入力エラーの`isError`セマンティクスを検証するテストを追加しました。
- `ResourceLink`を返さないことと、公開結果に`wav_path`が含まれないことを検証するテストを追加しました。

### Breaking Changes

- `compose_mml(action="compose")`の結果から`wav_path`を削除しました。クライアントは`content`内の`AudioContent`からWAVデータを取得してください。
- composeおよびAPI入力の失敗は、MCPレベルで`isError: true`として返されます。validateが不正なMMLを検出した場合は、検証処理自体は成功しているため`isError: false`、`valid: false`となります。

[0.3.0]: https://github.com/takashi000/mml-composemusic-mcp/compare/v0.2.2...v0.3.0