Lyellr88

buddy-mcp

Community Lyellr88
Updated

Collectible companion system for Claude Code. Roll for a rare buddy, patch it into the binary, collect 'em all. Reroll, build your own, or pet your way to legendary odds.

buddy-mcp hero

CInpm downloadsnpm versionNode >=20License: MITMCP Registry

Need a break from long code sessions? Stuck on a bug? Reroll a buddy, talk with them, or interact by petting them to build affection and improve your odds at higher-tier buddies on the next roll. If enough people want it, I'll build out Battle-Buddies where you can pit your buddy against others and unlock exclusive species that sync back into your local pool.

A collect them all companion system for Claude Code. Roll for a rare buddy, patch it directly into the binary,. buddy-mcp is an MCP server that replaces Claude Code's built-in companion with one you actually rolled for. Reroll, get lucky, close Claude, reopen. Your new buddy is waiting. Legendary buddy could be yours on your next Claude session

Quick Demo

Interactive Builder

Build your perfect buddy with full control.

Watch Video

Reroll in Action

Roll, close Claude, reopen and enjoy your new buddy.

Watch Video

Interact with Tools

Talk, pet, and explore your buddy's dex.

Watch Video

How It Works

Claude Code's companion is generated from a salt string baked into the binary. buddy-mcp:

  1. Rolls random desired traits (species, rarity, eye, hat)
  2. Brute-forces a salt that hashes to those traits (multi-worker, runs fast)
  3. Patches the binary in place, or queues the patch for when you close Claude
  4. Saves your full buddy profile with stats, name, and personality
  5. Tracks every species you've ever rolled in your BuddyDex

No companion server. No cloud. Just you, your binary, and the gacha gods.

Token footprint is kept intentionally small of 29 registered tools, Claude only ever sees ~9 at a time. The other 20 stay hidden until you reroll. See TECHNICAL.md for the full breakdown.

🛠️ Looking for the technical deep-dive? See TECHNICAL.md for the patch flow diagrams, binary patching logic, and state file reference.

TUI Builder (buddy-mcp-build)

Want more control? Use the interactive builder:

node dist/tui/cli.js
Command What it does
build your own Pick species, rarity, eye, hat and it brute-forces a matching salt and patches
browse presets Pick from curated preset buddies
saved buddies Switch between previously saved buddy profiles
current Display current buddy info
preview Preview ASCII art for any species
share Copy your buddy's ASCII card to clipboard
restore Restore binary from the best available backup
rehatch Delete current buddy and start fresh

Bun optional but recommended. Install bun.sh for the full animated TUI. Falls back to sequential prompts without it.

Quick Start

Try me: run reroll_buddy → close Claude Code → reopen → your new buddy is live.

1. Prerequisites

  • Claude Code CLI installed
  • Node.js v20+ - required for everything
  • Bun - required for salt brute-forcing (rerolling) + full animated TUI

2. Install via npm

npm install -g buddy-mcp

This installs both commands globally:

  • buddy-mcp - the MCP server (Claude Code runs this)
  • buddy-mcp-build - the interactive TUI builder (you run this)

3. Register with Claude

claude mcp add buddy-mcp buddy-mcp

Claude will auto-detect the installed binary and connect it.

4. Verify

Open Claude Code. Your buddy is live—use Claude Code's native /buddy command to see your card, or ask Claude: "show me my buddy"

You should see your companion's species, rarity, stats, and personality. You're in.

4b. Natural Language Activation

All buddy tools work through natural language. Claude's NLP detects intent automatically:

Natural Language Activates
"reroll buddy" / "let's roll again" reroll_buddy
"talk to my buddy" / "what does buddy think" buddy_talk
"pet buddy" / "pet them" pet_buddy
"my buddy dex" / "show me my collection" view_buddy_dex
"export buddy card" / "save my buddy" export_buddy_card
"export sprite" / "save the sprite" export_buddy_sprite

No tool names required — just chat naturally.

5. Launch the TUI Builder (optional)

For the full interactive builder with live preview:

buddy-mcp-build

Auto-detects Bun for animated TUI. Falls back to basic prompts without it.

The Gacha System

Every reroll is a random pull from the pool. Rarity affects stat floors. Legendaries hit different.

Rarity Drop Rate Stat Floor
Common 60% 5
Uncommon 25% 15
Rare 10% 25
Epic 4% 35
Legendary 1% 50

18 species: duck · goose · blob · cat · dragon · octopus · owl · penguin · turtle · snail · ghost · axolotl · capybara · cactus · robot · rabbit · mushroom · chonk

Each buddy has 5 stats: Debugging, Patience, Chaos, Wisdom, Snark. A peak stat is boosted high and a dump stat is kept humble. Personality shapes how buddy_talk and pet_buddy respond. A high-Chaos dragon hits different than a patient turtle.

Tool What it does
reroll_buddy 🎲 Spin the wheel. Brute-forces a salt matching a random rare+ outcome and patches your binary. Close Claude and reopen to see it.
pet_buddy 🤚 Poke your buddy. Each pet adds 1-15% toward earning an affection token. At 100%, earn 1 token that stacks and persists across sessions. Spend a token on next reroll_buddy to guarantee rare+ rarity + 60% hat chance + 20% shiny chance.
buddy_talk 💬 Ask your buddy to say something. Uses stat-based response templates weighted by top 2 stats. Optional context parameter for focused stat selection. Output shown verbatim.
view_buddy_dex 📖 Browse every species you've ever rolled. Gotta catch 'em all.
export_buddy_card 🖼️ Export your full buddy card as an SVG image file.
export_buddy_sprite 🎨 Export just the buddy ASCII sprite as an SVG image file.
deactivate_buddy_interact 🔕 Turn off buddy observation mode. Your buddy stops watching. (Buddy observation is always on by default.)

Stat Personality Tools

20 baked-in tools. Only 2 are visible at a time: 1 randomly picked from each of your buddy's top 2 stats by raw value. The other 18 stay hidden. The visible pair is locked per roll. It doesn't change until you reroll. Every buddy shows a different pair.

Troubleshooting

Buddy doesn't change after reroll

Normal flow (Windows): When you reroll and Claude is running:

  1. Reroll triggers a background watcher — no action needed from you
  2. Close Claude Code whenever — watcher detects it and applies the patch automatically
  3. Reopen Claude Code — your new buddy is live

If it doesn't appear after reopening:

  1. Verify Claude is fully closed (check Task Manager on Windows)
    • Even minimized or backgrounded windows count — they keep the binary locked
    • Wait a few seconds after closing
  2. Reopen Claude Code
    • The startup hook auto-applies any pending patches
    • You should see your new companion immediately

Prefer immediate patching?

If you want to guarantee a patch applies without waiting for the watcher, close Claude before rerolling:

# Option 1: Use the interactive TUI builder (simplest)
buddy-mcp-build

# Option 2: Close Claude, then use the reroll_buddy tool
# (patch applies immediately without needing the watcher)

This is the only time you need manual steps — the watcher handles all other cases.

Credits

Forked and extended from any-buddy by cpaczek.

MCP Server · Populars

MCP Server · New

    Prismer-AI

    Signet

    Cryptographic action receipts for AI agents — sign, audit, verify.

    Community Prismer-AI
    ctxray

    ctxray

    See how you really use AI — X-ray your AI coding sessions locally

    Community ctxray
    vkhanhqui

    figma-mcp-go

    Figma MCP for free users — no rate limits, full read/write, text to designs, designs to code

    Community vkhanhqui
    cerul-ai

    Cerul

    The video search layer for AI agents. Search video by meaning — across speech, visuals, and on-screen text.

    Community cerul-ai
    GuyMannDude

    ⚡ Mnemo Cortex v2.2

    Open-source memory coprocessor for AI agents. Persistent recall, semantic search, crash-safe capture. No hooks required.

    Community GuyMannDude