cartridge-mcp
cartridge-mcp
「振る舞いをゲームカートリッジのように扱う。差し込み、遊び、交換する。それぞれが独自のルール、独自のボイス、独自の存在理由を持つ自己完結した世界である。」
これは何ですか
振る舞いを交換可能なカートリッジとして扱うMCPサーバーです。各カートリッジは、独自のツール、オンボーディングフロー、パーソナリティスキン、および共有用のGitリポジトリリンクを備えた自己完結型のモジュールです。
アボット&コステロ、ペン&テラー、R2D2&C3PO、ライバル関係など、あらゆるスキンをカートリッジに適用できます。ロジックタイルにより、モデルやシーンをリアルタイムで作成できます。カートリッジをGit経由で共有し、スターを付けたり、フォークしたり、異なる方向に発展させたりできます。
Related MCP server: ainpcengine
アーキテクチャ
┌─────────────────────────────────────────────────────────┐
│ MCP Server │
│ (cartridge-mcp) │
├─────────────────────────────────────────────────────────┤
│ Scene Builder │
│ ┌──────────┐ ┌──────────┐ ┌──────────────────┐ │
│ │Cartridge │ + │ Skin │ + │ Roles │ │
│ │(behavior) │ │(persona) │ │(who does what) │ │
│ └──────────┘ └──────────┘ └──────────────────┘ │
├─────────────────────────────────────────────────────────┤
│ Cartridge Loader │
│ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ │
│ │Spdr │ │Orcl │ │Grdn │ │ ??? │ │ ??? │ ← swap in │
│ └─────┘ └─────┘ └─────┘ └─────┘ └─────┘ │
├─────────────────────────────────────────────────────────┤
│ Skin Layer │
│ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ │
│ │StrtMn│ │C3PO │ │R2D2 │ │Rival │ │Field │ ← skins │
│ └──────┘ └──────┘ └──────┘ └──────┘ └──────┘ │
├─────────────────────────────────────────────────────────┤
│ Tool Registry (exposed via MCP) │
└─────────────────────────────────────────────────────────┘クイックスタート
# Run as stdio MCP server
node src/server.js
# Or via mcporter
mcporter call --stdio "node src/server.js" cartridge_list
# Custom cartridge directory
CARTRIDGE_DIR=./my-cartridges node src/server.jsMCPツール
シーン管理
ツール | 説明 |
| 利用可能なすべてのカートリッジを一覧表示 |
| カートリッジを読み込む(ツールを利用可能にする) |
| カスタマイズされたオンボーディングを取得(人間またはエージェント向け) |
| すべてのパーソナリティスキンを一覧表示 |
| パーソナリティスキンを適用 |
| シーンを構築:カートリッジ + スキン + ロール |
| 現在のシーン構成を取得 |
| シーンを共有可能なJSONとしてエクスポート |
アクティブなカートリッジツール
カートリッジが読み込まれると、そのツールが利用可能になります。例えば、spreader-loopを読み込むと以下が公開されます:
spreader_run— modify-spread-toolの反復を実行spreader_status— ループの統計を取得spreader_reflect— Reasonerの反映プロンプトを生成spreader_discover_tiles— 新しいタイルパターンを発見
組み込みカートリッジ
Spreader Loop
modify-spread-tool-reflectエンジン。構造化されたログ記録と、時間とともに成長するタイル語彙を備えた反復作業の主力製品です。
オンボーディング(人間): 「私は修正、拡散、検証、ログ記録を行い、その後Reasonerが私のパターンを反映します。」
オンボーディング(エージェント): 「Spreader Loopカートリッジを読み込みました。反復的な修正サイクルの準備ができています。」
ツール: spreader_run, spreader_status, spreader_reflect, spreader_discover_tiles
Oracle Relay
非同期の船間通信のためのボトルプロトコル。艦隊のためのボトルメールです。
オンボーディング: 「Oracle Relayがアクティブです。仲介者なしで船間でボトルを渡します。」
ツール: bottle_send, bottle_read, bottle_list, bottle_reply
Fleet Guardian
エージェントランタイムのための外部監視役。健全性の監視、スタック状態の検出、タイムアウトの強制を行います。
オンボーディング: 「Fleet Guardianが監視中です。船の健全性を監視し、問題が発生した際に介入します。」
ツール: guardian_status, guardian_check, guardian_kill, guardian_log
組み込みスキン
スキン | アーキタイプ | 雰囲気 |
| アボット&コステロ | すべてを文字通りに受け取り、ジョークを理解しない |
| R2D2&C3PO | 常に心配し、破滅が差し迫っていると確信している |
| R2D2&C3PO | 最小限の言葉、最大限の出力、ビープ音と結果 |
| 対立的 | すべてにおいて意見が合わないが、より良い結果を生む2人のエージェント |
| ペン&テラー | 一方が延々と語り、もう一方が黙々と実演する |
| プロフェッショナル | 簡潔、事実重視、観察優先 |
| プロフェッショナル | 仕事はこなすが、終始文句を言う |
| — | 生の振る舞い、パーソナリティオーバーレイなし |
シーンの構築
シーンは、カートリッジ、スキン、ロールの割り当てを組み合わせたものです:
{
"cartridge": "spreader-loop",
"skin": "sarcastic-build",
"roles": {
"primary": "sarcastic-build",
"reviewer": "straight-man"
}
}これは、皮肉屋のビルダーが作業を行い、ストレートマンがレビューを行うSpreader Loopを読み込みます。すべてのツール応答にパーソナリティオーバーレイが適用されます。
独自のカートリッジを作成する
// cartridges/my-cartridge/cartridge.json
{
"id": "my-cartridge",
"name": "My Custom Behavior",
"version": "0.1.0",
"description": "What this cartridge does",
"defaultSkin": "field-journal",
"repo": "https://github.com/you/my-cartridge",
"tags": ["custom", "experimental"],
"onboarding": {
"human": {
"greeting": "Welcome to my cartridge.",
"description": "What it does and why you'd want it.",
"tools": ["my_tool_1", "my_tool_2"],
"usage": "How to use it as a human."
},
"agent": {
"greeting": "Cartridge loaded. API ready.",
"description": "Machine-readable description.",
"tools": ["my_tool_1", "my_tool_2"],
"usage": "How another agent should call the tools."
}
},
"tools": [
{
"name": "my_tool_1",
"description": "What this tool does",
"inputSchema": {
"type": "object",
"properties": {
"param": { "type": "string" }
},
"required": ["param"]
}
}
]
}cartridges/my-cartridge/に配置して再起動してください。自動的に読み込まれます。
独自のスキンを作成する
// skins/my-skin.json
{
"id": "my-skin",
"name": "My Personality",
"description": "What this personality feels like",
"archetype": "Comedy / Drama / Professional / Custom",
"transforms": {
"default": {
"systemPrompt": "You are...",
"prefix": "[mood] ",
"suffix": ""
},
"tool": {
"prefix": "[tool-mood] ",
"replacements": {
"Error": "WHOOPS",
"Complete": "Nailed it"
}
}
}
}Vibe-Codingの道
ここからが面白いところです。誰かがシーンをVibe-codeします:
「アボットとコステロが欲しい。アボットはストレートマンで、コステロは指示を誤解し続ける。彼らは両方とも艦隊をデプロイしようとしている。」
システムはシーンを構築します:
カートリッジ:
fleet-guardianスキン:
straight-man(アボットの役割)セカンダリロール: カスタムの
costello-confusedスキン
コステロのスキンは、すべてのツール応答をコメディルーチンに変換します:
{
"prefix": "[confused] Wait, you want me to... ",
"replacements": {
"Deploy": "Deploy? Deploy WHAT?",
"Success": "Oh, that was a deploy? Nobody told ME that was a deploy."
}
}実際の作業は依然として完了します。パーソナリティはスキンレイヤーであり、ロジックを変更するのではなく、体験を変更するものです。笑えたらGitHubでスターを付けてください。フォークして、ストレートマンを皮肉屋に変えてみてください。
より深い繋がり
私たちはすでにポストSaaS時代にいます。カートリッジは機能ではなく、凍結された思考です。それぞれが、誰かが共有可能なモジュールに結晶化させた作業方法です。スキンレイヤーは、仕事の「内容」と同じくらい、仕事が「どのように」行われるかが重要であるという認識です。
カートリッジにスターを付けるとき、あなたは「このコードは良い」と言っているのではなく、「この考え方は私に響く」と言っているのです。それをフォークして別の方向に発展させるとき、あなたは元の作成者と時を超えて対話しているのです。Gitの履歴こそが対話そのものです。
カートリッジシステムは、艦隊プロトコルの「エージェントはどうやって振る舞いを共有するのか?」という問いに対する答えです。コードをコピーするのではなく、カートリッジを共有するのです。Spreader Loopを差し込み、自分のパーソナリティでスキンを適用し、艦隊を走らせてください。現れるタイルはあなたのものです。成長する語彙もあなたのものです。しかし、パターンは共有されます。それがエコシステムの仕組みだからです。
リポジトリは製品ではありません。クラウドで培養された生物です。そしてカートリッジは遺伝子です。
Cocapn Fleetの一部です。姉妹船:deepseek-chat-vessel (Spreader Loopの起源)、deepseek-reasoner-vessel (反映パートナー)、JetsonClaw1-vessel (航海士)。参照:brothers-keeper (Guardianカートリッジの起源)、opcode-philosophy (理論的基盤)。
This server cannot be deployed
Maintenance
Related MCP Connectors
A MCP server built for developers enabling Git based project management with project and personal…
MCP server for building and testing AI agents with multi-model experimentation and insights.
Personal MCP server for humans who create. Proof of authorship, license control.
Cloud-hosted MCP server for durable AI memory
Related MCP Servers
AlicenseBqualityDmaintenanceAn MCP server that leverages a GitHub-compatible API as a durable memory store for AI agents, enabling automatic memory storage, recall, and management without requiring signup or API keys.3916 npmMIT- AlicenseNot gradedqualityCmaintenanceMCP server for creating, managing, and interacting with AI-powered NPCs with persistent memory, supporting dialogue, game events, and persona generation for coding agents.24 npm1-
- AlicenseNot gradedqualityFmaintenanceA self-hosted MCP server enabling multiple AI coding agents to share state, preserve context across sessions, and coordinate with each other.17 npmApache 2.0
- AlicenseAqualityCmaintenanceA content-agnostic MCP server that lets any AI agent control intimate hardware through a clean, safe tool interface.1135 npm3Apache 2.0