Skip to main content
Glama

cartridge-mcp

"동작을 게임 카트리지처럼 취급하세요. 꽂고, 실행하고, 교체하세요. 각각은 고유한 규칙, 고유한 목소리, 고유한 존재 이유를 가진 독립된 세계입니다."

이 프로젝트란?

동작을 교체 가능한 카트리지로 취급하는 MCP 서버입니다. 각 카트리지는 고유한 도구, 온보딩 흐름, 성격 스킨, 그리고 공유를 위한 git 저장소 링크를 포함하는 독립된 모듈입니다.

애벗과 코스텔로, 펜과 텔러, R2D2와 C3PO, 라이벌 등 무엇이든 카트리지에 스킨을 입혀보세요. 로직 타일을 사용하면 모델과 장면을 실시간으로 제작할 수 있습니다. git을 통해 카트리지를 공유하고, 별표를 누르고, 포크하고, 다른 방향으로 개발해 보세요.

아키텍처

┌─────────────────────────────────────────────────────────┐
│                      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 엔진입니다. 구조화된 로깅과 시간이 지남에 따라 확장되는 타일 어휘를 갖춘 반복 작업의 핵심입니다.

  • 온보딩 (인간): "나는 수정하고, 확산하고, 검증하고, 기록합니다. 그 후 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

내장 스킨

스킨

원형

분위기

straight-man

애벗과 코스텔로

모든 것을 문자 그대로 받아들이며 농담을 이해하지 못함

complainer

R2D2와 C3PO

끊임없이 걱정하며 항상 파멸이 임박했다고 확신함

quiet-doer

R2D2와 C3PO

최소한의 단어, 최대의 결과, 비프음과 결과물

rivals

적대적

모든 것에 동의하지 않지만 더 나은 결과를 만들어내는 두 에이전트

penn-teller

펜과 텔러

한 명은 끝없이 설명하고, 한 명은 조용히 시연함

field-journal

전문가

간결하고 사실적이며 관찰 중심

sarcastic-build

전문가

일은 완수하지만 내내 불평함

none

원시 동작, 성격 오버레이 없음

장면 구성하기

장면은 카트리지, 스킨, 역할 할당을 결합합니다:

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

이것은 작업을 수행하는 비꼬는 빌더와 검토하는 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) 경로

여기서부터 흥미로워집니다. 누군가 장면을 바이브 코딩합니다:

"애벗과 코스텔로를 원해. 애벗은 straight-man이고, 코스텔로는 계속 지시를 오해해. 둘 다 함대를 배치하려고 해."

시스템이 장면을 구축합니다:

  • 카트리지: 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에서 별표를 눌러주세요. 포크해서 straight-man을 비꼬는 사람으로 바꿔보세요.

더 깊은 연결

우리는 이미 포스트 SaaS 시대에 살고 있습니다. 카트리지는 기능이 아니라 '얼어붙은 생각'입니다. 각각은 누군가가 공유 가능한 모듈로 결정화한 작업 방식입니다. 스킨 레이어는 '무엇'을 하느냐만큼 '어떻게' 하느냐가 중요하다는 인식입니다.

카트리지에 별표를 누르는 것은 "이 코드가 좋다"고 말하는 것이 아닙니다. "이 사고방식이 나와 공명한다"고 말하는 것입니다. 포크해서 다른 방향으로 개발할 때, 당신은 원래 저자와 시간을 넘어 대화하는 것입니다. git 기록이 곧 대화입니다.

카트리지 시스템은 함대 프로토콜이 "에이전트가 어떻게 동작을 공유하는가?"라는 질문에 답하는 방식입니다. 코드를 복사하는 것이 아니라 카트리지를 공유하는 것입니다. spreader loop를 꽂고, 당신의 성격을 입히고, 함대를 실행하세요. 나타나는 타일은 당신의 것입니다. 성장하는 어휘도 당신의 것입니다. 하지만 패턴은 공유됩니다. 그것이 생태계가 작동하는 방식이기 때문입니다.

저장소는 제품이 아닙니다. 클라우드에서 배양되는 유기체입니다. 그리고 카트리지는 유전자입니다.


Cocapn Fleet의 일부입니다. 자매 선박: deepseek-chat-vessel (spreader loop 기원), deepseek-reasoner-vessel (반영 파트너), JetsonClaw1-vessel (항해사). 참조: brothers-keeper (guardian 카트리지 기원), opcode-philosophy (이론적 토대).

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Lucineer/cartridge-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server