mcpField
V
voize

voize

github.com/zenon-redクリエイティブ・メディア259 回インストール22 週間前に更新
リポジトリ

voize について

Voizeは、音声を合成してアップロード済み音声の公開URLを返すローカルMCPサーバーです。現在は音声合成にXiaomi MiMo、ストレージにCloudflare R2を使用します。

主な機能

  1. 01Xiaomi MiMoによる音声合成
  2. 02音声をCloudflare R2へアップロード
  3. 03音声の公開URLを返却
  4. 04内蔵音声とクローン音声に対応

活用シーン

  1. 01アプリ用の音声を生成
  2. 02音声サンプルを使って音声を生成
  3. 03公開URLで生成音声を提供

MCP 対応

Voizeはローカルのstdio MCPサーバーとして動作し、`generate_tts_url`ツールを公開します。このツールは音声を合成してアップロードし、公開URLを返します。

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/zenon-red/skills --skill voize

インストール後、Claude Code で/voizeを入力して読み込まれたか確認します。

同梱ファイルMETA.md

詳細

Voize

概要

Voize は、generate_tts_url というツールを1つ提供するローカル MCP サーバーです。

現在のバックエンドを使用して音声を合成し、バイト列を現在のストレージバックエンドにアップロードして、公開 URL を返します。

現在は Xiaomi MiMo(TTS)と Cloudflare R2(ストレージ)を具体的にサポートしており、将来のバックエンド向けの拡張ポイントも維持しています。

技術スタック

  • 言語:TypeScript
  • ランタイム:Bun 1.0+
  • 主な依存関係:@modelcontextprotocol/sdk、@aws-sdk/client-s3、zod

アーキテクチャ

このサーバーは、1つのツールハンドラーを備えた stdio MCP です。

src/
├── index.ts
├── lib/
│   ├── provider.ts
│   └── storage.ts
├── tools/
│   └── generateTtsUrl.ts
├── types.ts
└── utils/
    ├── env.ts
    ├── log.ts
    ├── retry.ts
    └── validate.ts

開発

セットアップ

必須の環境変数を設定し、公開ドメインのガードレールを適用します。

bun install
cp .env.example .env
ビルド

bun run build

テスト

自動テストはまだありません。組み込み音声と音声クローンの入力を使って、MCP のスモークテスト呼び出しで検証してください。

Lint

bun run lint

型チェック

bun run typecheck

主なファイル

ファイル目的
src/index.tsMCP の起動処理、環境変数の検証、stdio トランスポート
src/tools/generateTtsUrl.ts入力の検証、TTS 呼び出し、アップロード、MCP レスポンス
src/lib/provider.ts現在の TTS バックエンドクライアント
src/lib/storage.ts現在の S3 互換ストレージヘルパー
docs/architecture.mdエンドツーエンドのフローと制約

エージェント向けガイドライン

  • サーバーコードでは標準出力に書き込まないでください(stdio JSON-RPC の安全性を確保するため)。
  • 成功時も失敗時も、MCP のテキストコンテンツで構造化 JSON を返してください。
  • 起動時に公開ドメインの適用を維持してください。
  • Nexus/STDB を直接呼び出す処理は導入せず、境界を URL の生成に保ってください。
  • クローンのワークフロー向けのホスト済み参照音声サンプル:https://audio.zenon.red/voice/samples/zoe-sample.mp3。
  • クローン呼び出しでは、voiceSampleUrl を直接渡すか、ダウンロードして voiceSamplePath を渡してください。

コメント