Skip to main content
Glama
t09tanaka

mcp-simple-voicevox

by t09tanaka

@t09tanaka/mcp-simple-voicevox

MCP (Model Context Protocol) を通じて VOICEVOX のテキスト読み上げ機能を提供するシンプルなサーバーです。

概要

このプロジェクトは、VOICEVOX の音声合成エンジンを MCP ツールとして利用できるようにするサーバー実装です。Claude Code 等の MCP クライアントから、テキストの読み上げ機能を簡単に利用できます。

Related MCP server: voiceroid_daemon-mcp

前提条件

  • Node.js 18.0.0 以上

  • VOICEVOX エンジンが起動している必要があります

    • VOICEVOX 公式サイトから VOICEVOX をダウンロード・インストール

    • VOICEVOX を起動し、エンジンが http://localhost:50021 で稼働していることを確認

使用方法

MCP クライアント(Claude Code、Claude Desktop 等)の設定ファイルに以下を追加してください。

macOS / Linux / WSL

claude mcp add voicevox -- npx @t09tanaka/mcp-simple-voicevox
{
  "mcpServers": {
    "voicevox": {
      "command": "npx",
      "args": ["@t09tanaka/mcp-simple-voicevox"]
    }
  }
}

Windows(ネイティブ)

claude mcp add voicevox -- cmd /c npx @t09tanaka/mcp-simple-voicevox
{
  "mcpServers": {
    "voicevox": {
      "command": "cmd",
      "args": ["/c", "npx", "@t09tanaka/mcp-simple-voicevox"]
    }
  }
}

その他の設定方法は docs/usage.md を参照してください。

speak ツール

テキストを音声で読み上げます。

パラメータ:

  • text (string, 必須): 読み上げるテキスト

  • speaker (number, 必須): 話者 ID

  • speedScale (number, オプション): 読み上げ速度のスケール(0.5〜2.0、デフォルト: 1.0)

  • volumeScale (number, オプション): 音量のスケール(0.0〜2.0、デフォルト: 1.0)

  • async (boolean, オプション): 非同期再生モード(falseの場合、音声再生の完了を待ちます。デフォルト: true)

使用例:

{
  \"text\": \"こんにちは、これはテスト音声です。\",
  \"speaker\": 1,
  \"speedScale\": 1.3,
  \"volumeScale\": 1.5,
  \"async\": true
}

話者 ID について

VOICEVOX で利用可能な話者 ID は、VOICEVOX エンジンの /speakers エンドポイントから取得できます:

curl http://localhost:50021/speakers

一般的な話者 ID(参考):

  • 1: 四国めたん(ノーマル)

  • 2: 四国めたん(あまあま)

  • 3: 四国めたん(ツンツン)

  • 8: 春日部つむぎ(ノーマル)

  • 10: 雨晴はう(ノーマル)

対応プラットフォーム

音声再生は以下のプラットフォームに対応しています:

  • macOS: afplay コマンドを使用

  • Linux: aplay コマンドを使用

  • Windows: PowerShell の Media.SoundPlayer を使用

トラブルシューティング

VOICEVOX エンジンに接続できない

  • VOICEVOX アプリケーションが起動しているか確認

  • http://localhost:50021 で VOICEVOX API が利用可能か確認

  • ファイアウォールの設定を確認

Windows で "Connection closed" エラーが発生する

  • Windows(ネイティブ)では npx を直接実行できないため、cmd /c 経由で実行する必要があります

  • 上記の「Windows(ネイティブ)」の設定例を参照してください

音声が再生されない

  • 対応プラットフォームか確認

  • 音声再生コマンドがインストールされているか確認

    • Linux: aplay (alsa-utils)

    • その他のプラットフォームは通常デフォルトで利用可能

ライセンス

Apache License 2.0

貢献

プルリクエストや Issue の報告は歓迎します。詳細な仕様は docs/specification.md を参照してください。

Available Tools

1 tool
speakB

VOICEVOXを使用してテキストを読み上げます

ParametersJSON Schema
NameRequiredDescriptionDefault
textYes読み上げるテキスト
speakerYes話者ID(VOICEVOXの話者番号)
speedScaleNo読み上げ速度のスケール(デフォルト1.0)
asyncNo非同期再生モード(falseの場合、音声再生の完了を待ちます。デフォルトtrue)

TDQS

B3/5.0
Behavior1/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, and the description does not disclose any behavioral traits beyond the basic functionality. It does not mention whether the tool is blocking, requires specific permissions, or handles async playback (though the 'async' parameter is documented in the schema). The description fails to compensate for the lack of annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single concise sentence that efficiently conveys the tool's purpose. It is appropriately sized and front-loaded, but lacks any structural elements like bullet points or separate context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity and full schema coverage, the description is adequate but incomplete. It does not mention any return values or side effects, and with no output schema, the agent lacks information about what the tool produces after execution.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 100% description coverage, so the baseline is 3. The description does not add any additional meaning beyond what is already in the schema; it simply states the tool's purpose.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's purpose: to read text aloud using VOICEVOX. It provides a specific verb (読み上げます) and resource (テキスト), and since there are no sibling tools, it effectively distinguishes the tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides no guidance on when to use this tool versus alternatives or when not to use it. Without siblings or context, the agent has no usage direction beyond the basic purpose.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool updatev0.2.1
    • First observedspeak

TDQS

B3.1/5.0
Disambiguation5/5

With only one tool, there is zero risk of confusion between tools. The single 'speak' tool has a unique and clear purpose.

Naming Consistency4/5

The tool name is a simple verb, which is clear and consistent with its action. However, with only one tool, there is no pattern to evaluate consistency across multiple tools.

Tool Count2/5

A single tool for text-to-speech is minimal. Typical TTS servers include capabilities like listing voices, adjusting speed/pitch, or selecting speakers, making this feel incomplete for real-world use.

Completeness2/5

The server only provides basic speak functionality without any options for voice selection, speed, or other common TTS controls. This leaves significant gaps for practical usage.

Maintenance

ActivityMaintained
ResponsivenessUnresponsive

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/t09tanaka/mcp-simple-voicevox'

If you have feedback or need assistance with the MCP directory API, please join our Discord server