poranos-mcp-ainpc

poranos-mcp-ainpc

Enables Claude Desktop/Code to read and edit Poranos AI NPC scenarios and conversation logs via natural language, including scenario versioning and audit logging.

Category
访问服务器

README

poranos-mcp-ainpc

PyPI

Claude Desktop / Claude Code から Poranos AI NPC のシナリオ・会話ログを操作するための MCP (Model Context Protocol) サーバ。

非エンジニアの運用担当が会話ログを読みながら自然言語で「Sub が冒頭で『なるほど』と言ってる、修正して」と Claude に伝えれば、Claude が必要なツールを呼び出してシナリオの prompt を編集する — というワークフローを実現する。

何ができるか

会話ログ閲覧 → 違反抽出 → プロンプト編集 → 履歴記録 までを Claude Desktop / Claude Code 内で完結させる:

  • シナリオの一覧・詳細取得・編集 (PATCH)
  • シナリオの複製、過去版へのロールバック
  • 編集履歴 (audit log) の閲覧
  • 会話ログの一覧・詳細取得 (Unity からアップロードされたセッションログ)

全編集は poranos.com 側の ScenarioVersionedit_source='mcp' で自動記録され、Web 管理画面の「履歴」セクションから 1-click でロールバック可能。

セットアップ

1. API キーを発行する

https://poranos.com/app/account/ にログインし、「AI NPC API キー」セクションから新しいキーを発行する。

  • アクセスレベルは 「閲覧 + 編集」 (ai-npc:write) を推奨。「閲覧のみ」を選ぶと編集系の Tool が 403 を返す
  • 発行直後に表示される pk_... を必ずコピーして保管する (二度と表示できない)

2. uv のインストール (まだなら)

uvxuv に同梱されています。

Linux / macOS:

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows (PowerShell):

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

3. Claude Desktop の設定

設定ファイルに以下を追加:

Linux: ~/.config/Claude/claude_desktop_config.json macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "poranos-ainpc": {
      "command": "uvx",
      "args": ["poranos-mcp-ainpc"],
      "env": {
        "PORANOS_API_KEY": "pk_あなたのキー"
      }
    }
  }
}

設定を保存したら Claude Desktop を再起動。

メモ: 初回起動時に uvx が PyPI からパッケージを fetch するため少し時間がかかります (5-15 秒)。2 回目以降はキャッシュされます。

Windows で command: "uvx" が見つからないと言われる場合は、uvx のフルパス (例: C:\\Users\\<user>\\.local\\bin\\uvx.exe) を指定してください。

Claude Code で使う場合

claude mcp add poranos-ainpc \
  -e PORANOS_API_KEY=pk_あなたのキー \
  -- uvx poranos-mcp-ainpc

ローカル開発

git clone https://github.com/kkoba23/poranos-mcp-ainpc.git
cd poranos-mcp-ainpc
python3 -m venv .venv
source .venv/bin/activate
pip install -e .

# 環境変数で API キーをセット
export PORANOS_API_KEY=pk_あなたのキー

# サーバー起動 (stdio transport)
poranos-mcp-ainpc

提供される MCP Tools

Scenario 系

Tool 用途
list_scenarios() シナリオ一覧
get_scenario(scenario_id) シナリオ詳細 (focus_block_template / role_addendums 等を含む)
create_scenario(fields) 新規シナリオ作成 (name 必須、他はサーバ既定値)
update_scenario(scenario_id, fields) シナリオを部分更新 (PATCH)
duplicate_scenario(scenario_id) シナリオを private コピーとして複製
get_scenario_versions(scenario_id) 編集履歴 (meta のみ)
get_scenario_version(scenario_id, content_version) 特定版の snapshot
rollback_scenario(scenario_id, content_version, note?) 過去版に戻す

Personality 系

Tool 用途
list_personalities() NPC 人格 (Personality) 一覧
get_personality(personality_id) 人格詳細 (system_prompt / voice / character_id 等)
create_personality(fields) 新規人格作成 (name / system_prompt / character_id 必須)
update_personality(personality_id, fields) 人格を部分更新

ConversationLog 系

Tool 用途
list_conversation_logs(scenario_id?, personality_id?, since?, until?) 会話ログ一覧 (フィルタ可)
get_conversation_log(log_id) 会話ログ詳細 (utterances / personalities_snapshot / metadata)

提供される MCP Prompts (定型ワークフロー)

Prompt 用途
analyze_log(scenario_id, log_id) ログを scenario と照合して違反を抽出
propose_edit(scenario_id, feedback) 自然言語フィードバックから編集案を提案 → 承認 → 反映
create_scenario_guide(intent) 新規シナリオを「執筆ガイドを踏まえて」作成

これらは Claude Desktop の / メニュー (slash commands) から呼び出せる。 全ての prompt は処理開始前に prompt 執筆ガイド (下記 Resource) を読むよう Claude に指示する。

提供される MCP Resources (静的参考資料)

URI 内容
poranos://prompt-authoring-lessons Scenario の focus_block_template / role_addendums 等を書くときの実践ガイド (Markdown)。Realtime モデルの素の癖、典型的な落とし穴、効くテクニックを集約

ツール経由でも同じ内容を取得可能 (get_prompt_authoring_lessons())。 Claude Desktop の UI から直接閲覧 / コンテキスト添付できる他、prompt の指示で 内部的に resources/read 経由で読む。

典型的な使い方

  1. Claude Desktop を開く
  2. /propose_edit を選択 (または「Library Tour の昨日のログを見て、Sub が冒頭で『なるほど』と言ってるから直して」のように直接話しかける)
  3. Claude が list_scenarioslist_conversation_logsget_conversation_log で材料を集める
  4. Claude が違反を抽出して報告し、編集案 (diff) を提示
  5. ユーザーが「OK」と承認
  6. Claude が update_scenario を呼んで反映、get_scenario_versions で履歴記録を確認

セキュリティ

  • API キーは SHA-256 ハッシュで poranos.com 側に保存され、生キーは発行時のみ表示される
  • スコープは ai-npc:read / ai-npc:write の 2 種。read は GET のみ、write は read + 編集系
  • キー漏洩時は Account Detail 画面 の「無効にする」ボタンで即座に失効可能 (DB 側 ソフト削除)
  • 全編集が ScenarioVersionedit_source='mcp' + edited_by 付きで記録される
  • 不安なら read scope のキー で運用を始め、誤編集の心配を排除してから write に切り替えるのが安全

環境変数

変数 必須 既定 用途
PORANOS_API_KEY poranos.com で発行した API キー
PORANOS_API_BASE https://api.poranos.com テスト用に dev サーバを指す等

ライセンス

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选