
1. 概要
KAMUI CODE は、MCP(Model Context Protocol)に準拠した複数のサーバー群を統合的に提供するソリューションです。クリエイティブ、開発、ビジネスの3領域を横断し、上位のベースURL配下に各サーバーのエンドポイントを階層的に配置します。本書は、KAMUI CODE のコンセプト、エンドポイント設計、サーバーカタログ、使い方、および設定ファイル(mcp/config.json)とパッケージング方針を整理し、GitHub Pages で公開できる単一HTMLのドキュメントとしてまとめたものです。
2. コンセプトと対象領域
- クリエイティブ領域: 生成・編集・評価(画像/テキスト/ドキュメント等)。
- 開発領域: コード生成/解析、リファクタリング、レビュー、ドキュメント化。
- ビジネス領域: 翻訳、要約、レポーティング、データ分析補助。
上記領域を共通のプロトコルと設計原則で統一し、サーバー追加・差し替え・組合せを安定して行えることを目指します。

3. UI遷移図
4. UI/画面(参考デザイン画像)
以下は同梱の参考デザイン画像です(相対パスで読込)。















5. アーキテクチャとエンドポイント設計
実URL構造は提供JSONのmcpServers[*].url
に準拠します。ベースドメインは https://{BASE_URL}
で、先頭にカテゴリ(例: t2i
, i2i
, t2v
, i2v
, v2v
, r2v
, t2s
, t2m
, v2a
, uploader
, train
, video-analysis
, requirement
, storyboard
)が続き、ベンダ・モデル・モード等が後続します。
BASE_URL = https://{BASE_URL}
一般パターン:
{BASE_URL}/{category}/{vendor}/{model-or-service}/[variant|mode|action]
例(JSONより抽出):
テキスト→画像: {BASE_URL}/t2i/fal/bytedance/dreamina/v3.1/text-to-image
画像→画像: {BASE_URL}/i2i/fal/flux/kontext/max
テキスト→動画: {BASE_URL}/t2v/fal/wan/v2.2-5b/text-to-video/fast-wan
画像→動画: {BASE_URL}/i2v/fal/minimax/hailuo-02/fast
動画→動画: {BASE_URL}/v2v/fal/pixverse/lipsync
参照→動画: {BASE_URL}/r2v/fal/vidu/q1
テキスト→音声: {BASE_URL}/t2s/minimax/speech-2-5-turbo-preview
テキスト→音楽: {BASE_URL}/t2m/google/lyria
動画→音声: {BASE_URL}/v2a/fal/thinksound/audio/standard
動画解析: {BASE_URL}/video-analysis/google/gemini
学習: {BASE_URL}/train/fal/flux/kontext
アップロード: {BASE_URL}/uploader/fal
ドキュメント: {BASE_URL}/requirement
ストーリーボード:{BASE_URL}/storyboard
認証は環境に応じて Authorization: Bearer <TOKEN>
または x-api-key
等を想定します。レート制御・タイムアウト・同期/非同期は各サーバーの特性に合わせクライアント指針を定義します。
({BASE_URL})"] end subgraph "サービスルーター" RT["カテゴリ別ルーティング
(t2i, i2i, t2v 等)"] end subgraph "プロバイダーサービス" direction TB P1[FAL.ai サービス] P2[Google サービス] P3[MiniMax サービス] P4[Runway サービス] P5[ByteDance サービス] end subgraph "モデルエンドポイント" M1[Imagen4 Ultra] M2[Flux モデル群] M3[Veo3] M4[Hailuo-02] M5[Dreamina v3.1] end C1 --> GW C2 --> GW C3 --> GW GW --> RT RT --> P1 RT --> P2 RT --> P3 RT --> P4 RT --> P5 P1 --> M1 P1 --> M2 P2 --> M3 P3 --> M4 P5 --> M5 style GW fill:#4a9eff,stroke:#2563eb,stroke-width:2px,color:#fff style RT fill:#2d2d2d,stroke:#4a4a4a,stroke-width:1px
6. サーバーカタログ(例・カード一覧)
以下のJSON(パッケージ)から実データを読み込み、サーバー一覧カードを自動生成します。
7. パッケージ一覧(JSON)
パッケージ化されたMCP定義JSONをカード表示します。クリックでJSONを開けます。
8. 使い方(HTTP・MCPクライアント)
HTTPダイレクト利用の例(curl)。実URLと認証ヘッダは環境に合わせて置換してください。
# 画像生成(例)
curl -X POST "{BASE_URL}/api/creative/image/v1/generate" \
-H "Authorization: Bearer <TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"prompt": "夕暮れの富士山、浮世絵スタイル",
"size": "1024x1024"
}'
# コード解析(例)
curl -X POST "{BASE_URL}/api/dev/code/v1/analyze" \
-H "Authorization: Bearer <TOKEN>" \
-H "Content-Type: application/json" \
-d '{
"language": "ts",
"source": "function add(a:number,b:number){return a+b}"
}'
MCP対応クライアントでの利用(概略):
- 本リポジトリの
mcp/config.json
を取得します(後述)。 - クライアント側で設定ファイルの参照先を指定します。
- クライアントのツール一覧に、定義済みサーバーが表示されます。
9. 機能要件(ドキュメント/配布物)
- GitHub Pages でホスト可能な単一HTML(本ファイル)。
- サーバーカタログをカード表示し、各エンドポイントの説明を掲載。
- 使い方(HTTP/MCP)と設定ファイルのサンプルを提供。
- テーマ切替(黒/白)、目次ナビ、全文検索(クライアント側)。
10. 非機能要件
- 静的配信: ローカル/Pages/Cloudflare 上で動作、外部API不要。
- 可読性: PC/モバイルでのレスポンシブ表示、テーマ切替。
- 保守性: セクション追加・順序変更が容易な構造。
- セキュリティ: 公開情報は機密を含まない。サンプルに秘密情報を含めない。
11. 設定ファイル(mcp/config.json)
複数のMCPサーバーをまとめて配布するための設定例です。必要に応じてIDやURL、認証方式を調整します。
{
"version": 1,
"servers": [
{
"id": "creative-image",
"name": "画像生成サーバー",
"category": "creative",
"baseUrl": "{BASE_URL}/api/creative/image/v1",
"endpoints": {
"generate": "/generate",
"variants": "/variants"
},
"auth": { "type": "bearer", "env": "KAMUI_TOKEN" }
},
{
"id": "dev-code",
"name": "コード支援サーバー",
"category": "dev",
"baseUrl": "{BASE_URL}/api/dev/code/v1",
"endpoints": {
"analyze": "/analyze",
"refactor": "/refactor"
},
"auth": { "type": "bearer", "env": "KAMUI_TOKEN" }
},
{
"id": "biz-translate",
"name": "翻訳サーバー",
"category": "biz",
"baseUrl": "{BASE_URL}/api/biz/translate/v1",
"endpoints": {
"translate": "/translate"
},
"auth": { "type": "apiKey", "header": "x-api-key", "env": "KAMUI_API_KEY" }
}
]
}
配布形態: リポジトリ内の mcp/config.json
を固定パスで公開し、クライアントからURL指定で読み込み可能にします。
クライアント別サンプル(MCP設定JSON)
各クライアントでMCPサーバーの記述方法や配置パスが異なります。以下は代表的な例です(カードをクリックするとJSONを表示)。
12. パッケージング指針
- 単一ファイル:
mcp/config.json
に全サーバーを集約(推奨)。 - 分割構成: 領域別(creative/dev/biz)JSONを用意し、ビルドで結合。
- バージョン付与:
servers[].version
などで互換性を明示。 - 配布: GitHub Release/Pages で静的配布。改訂履歴をCHANGELOGに記録。
13. デプロイ(GitHub Pages / Cloudflare)
- GitHub Pages: 本ファイル
index.html
をリポジトリ直下に配置 → Settings → Pages → Branch をmain
/docs
に設定。 - 独自ドメイン: Pages の Custom domain を設定。必要なら Cloudflare DNS に A/AAAA/CNAME を追加。
- Cloudflare: Pages/Workers のいずれでも静的配信可。キャッシュTTL・圧縮を有効化。
- セキュリティ: HTTPS 強制、適切なキャッシュ制御(HTMLは短め、画像は長め)。
14. 運用・保守
- サーバー追加・改廃時は
catalog
とmcp/config.json
を同時更新。 - 非互換変更は
/v{major}
を上げ、旧版を一定期間並行運用。 - 秘密情報はリポジトリに含めず、クライアント側で環境変数参照。
15. 受入基準
- 左の目次から全セクションへ遷移できること。
- カード/コード/JSON がレイアウト崩れなく表示されること(黒/白)。
mcp/config.json
サンプルがバリデーションを通ること(形式)。- GitHub Pages で正しく公開・閲覧できること。
16. 付録
プレースホルダ({BASE_URL}、<TOKEN> など)は環境に合わせて置換してください。実エンドポイント/仕様は導入時の合意に基づき最新へ更新します。