Skip to main content
Glama

cartridge-mcp

“像对待游戏卡带一样对待行为。插入、运行、更换。每一个都是一个自包含的世界,拥有自己的规则、自己的声音、自己存在的理由。”

这是什么

一个将行为视为可交换卡带的 MCP 服务器。每个卡带都是一个自包含的模块,拥有自己的工具、入门流程、个性皮肤以及用于共享的 git 仓库链接。

为卡带套上 Abbott & Costello、Penn & Teller、R2D2 & C3PO、竞争对手或任何其他个性皮肤。逻辑块(Logic tiles)让模型和场景能够实时构建。通过 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.js

MCP 工具

场景管理

工具

描述

cartridge_list

列出所有可用卡带

cartridge_load

加载卡带(使其工具可用)

cartridge_onboard

获取定制的入门指南(面向人类或智能体)

skin_list

列出所有个性皮肤

skin_apply

应用个性皮肤

scene_build

构建场景:卡带 + 皮肤 + 角色

scene_status

获取当前场景配置

scene_export

将场景导出为可共享的 JSON

活动卡带工具

当卡带加载后,其工具即可使用。例如,加载 spreader-loop 会暴露:

  • spreader_run — 执行 modify-spread-tool 迭代

  • spreader_status — 获取循环统计信息

  • spreader_reflect — 生成推理者(Reasoner)反思提示词

  • spreader_discover_tiles — 发现新的块模式

内置卡带

Spreader Loop

modify-spread-tool-reflect 引擎。带有结构化日志和随时间增长的块词汇表的迭代工作引擎。

  • 入门(人类): “我进行修改、传播、验证和记录——然后推理者会对我的模式进行反思。”

  • 入门(智能体): “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

内置皮肤

皮肤

原型

氛围

straight-man

Abbott & Costello

一切照本宣科,从不理解笑话

complainer

R2D2 & C3PO

不断担心,总是确信末日即将来临

quiet-doer

R2D2 & C3PO

言语最少,产出最大,只有哔哔声和结果

rivals

对抗性

两个在任何事情上都意见不合但能产生更好结果的智能体

penn-teller

Penn & Teller

一个不停地叙述,一个默默地演示

field-journal

专业

简洁、客观、以观察为先

sarcastic-build

专业

完成工作但全程抱怨

none

—

原始行为,无个性覆盖

构建场景

场景结合了卡带、皮肤和角色分配:

{
  "cartridge": "spreader-loop",
  "skin": "sarcastic-build",
  "roles": {
    "primary": "sarcastic-build",
    "reviewer": "straight-man"
  }
}

这加载了 spreader loop,由一个讽刺的构建者执行工作,并由一个“直男”(straight man)进行审查——每个工具响应都会获得个性覆盖。

创建你自己的卡带

// 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-coding 构建了一个场景:

“我想要 Abbott 和 Costello。Abbott 是那个直男,Costello 不断误解指令。他们都在试图部署一个舰队。”

系统构建了一个场景:

  • 卡带:fleet-guardian

  • 皮肤:straight-man (Abbott 角色)

  • 次要角色:自定义的 costello-confused 皮肤

Costello 的皮肤将每个工具响应转化为一段喜剧表演:

{
  "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 (理论基础)。

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    An 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.
    39
    16 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    MCP server for creating, managing, and interacting with AI-powered NPCs with persistent memory, supporting dialogue, game events, and persona generation for coding agents.
    24 npm
    1
    -
  • A
    license
    Not graded
    quality
    F
    maintenance
    A self-hosted MCP server enabling multiple AI coding agents to share state, preserve context across sessions, and coordinate with each other.
    17 npm
    Apache 2.0
  • A
    license
    A
    quality
    C
    maintenance
    A content-agnostic MCP server that lets any AI agent control intimate hardware through a clean, safe tool interface.
    11
    35 npm
    3
    Apache 2.0