プロジェクト概要

このプロジェクトは、LLM (大規模言語モデル) を利用して、ノベルゲームエンジン「exia」で表示可能な「琴葉姉妹解説」形式のシナリオを生成するMCPサーバーです。ユーザーがお題を提示すると、LLMが対話形式の解説シナリオを作成し、exiaを使って視覚的に楽しむことができます。

主要機能点

  • シナリオ生成: 指定されたお題に基づき、OpenAI APIを利用して「琴葉茜」と「琴葉葵」の対話形式による解説シナリオを生成します。
  • exia連携: 生成したシナリオを「exia」が読み込める形式に変換し、exiaのローカル環境をセットアップしてシナリオを表示します。
  • オールインワン実行: シナリオ生成、exiaへの保存、exiaの起動までを一連の流れで自動実行する機能を提供します。

インストール手順

  1. リポジトリをクローンまたはダウンロードします。
    git clone https://github.com/kokushin/exia-mcp.git
    cd exia-mcp
  2. 必要なパッケージをインストールします。
    npm install
  3. TypeScriptコードをコンパイルします。
    npm run build

サーバー配置(MCPクライアント向け設定)

このMCPサーバーをMCP対応LLMクライアントに登録するには、クライアントの設定ファイル(通常はJSON形式)に以下の情報を追加します。

{
  "mcpServers": {
    "サーバー名": {
      "command": "サーバー起動コマンド",
      "args": ["引数1", "引数2", ...]
    }
  }
}
  • 'サーバー名': LLMクライアント内で表示されるこのサーバーの名前です(例: 'exia-scenario-generator')。
  • 'command': サーバー実行可能ファイルを起動するためのコマンドです。通常は'npx'やNode.jsの実行パスを指定します。
  • 'args': サーバー起動時に渡す引数です。
    • '-y': npxの実行オプションです。
    • '/path/to/exia-mcp': クローンまたはダウンロードした'exia-mcp'プロジェクトのルートディレクトリへの絶対パスに置き換えてください。
    • '--openai-api-key=YOUR_API_KEY': OpenAIのAPIキーを指定します。'YOUR_API_KEY'を実際のAPIキーに置き換えてください。
    • '--stdio': 標準入出力(Stdio)を使用してMCPクライアントと通信するための引数です。

設定例(Claude Desktopの場合):

Claude Desktopの設定画面で、'mcpServers'内に以下のような設定を追加します。

{
  "exia-scenario-generator": {
    "command": "npx",
    "args": [
      "-y",
      "/あなたの環境の絶対パス/exia-mcp",
      "--openai-api-key=あなたのOpenAI_APIキー",
      "--stdio"
    ]
  }
}

※ 上記の'/あなたの環境の絶対パス/exia-mcp'と'あなたのOpenAI_APIキー'は、ご自身の環境に合わせて置き換える必要があります。

基本使用方法

MCPクライアントにサーバーを登録し、起動コマンドを設定した後、クライアントのチャット画面から以下のように入力します。

例: 'exia で量子コンピュータについて解説して'

これにより、MCPクライアントがこのサーバーの対応ツール('exiaVoiceroidExplain')を呼び出し、指定されたお題(「量子コンピュータ」)に関するシナリオが生成され、exiaが起動してブラウザでシナリオがプレイ可能になります。

初回実行時には、exia本体のダウンロードとセットアップが行われるため、時間がかかる場合があります。

信息

分类

AI与计算