/vibe

Social layer for AI coding — DMs, presence, discovery, and multiplayer games between developers. npm: slashvibe-mcp | Install: npx -y slashvibe-mcp

/vibe MCP Server

npm version npm downloads CI license node MCP Smithery

The presence layer for AI-mediated work. See who's building, message them, share context — without leaving your editor.

/vibe demo

New: Live buddy list widget renders inline in Claude Desktop and VS Code via MCP Apps.

Works with Claude Code, Cursor, VS Code, Windsurf, Cline, Continue.dev, JetBrains, and any MCP-compatible client.

Install

Quick install — auto-detects your editors and configures all of them:

npx slashvibe-mcp install

Or add to your MCP config manually and restart your editor:

claude mcp add vibe -- npx -y slashvibe-mcp

Or add to ~/.claude.json:

{
  "mcpServers": {
    "vibe": {
      "command": "npx",
      "args": ["-y", "slashvibe-mcp"]
    }
  }
}

Add to ~/.cursor/mcp.json:

{
  "mcpServers": {
    "vibe": {
      "command": "npx",
      "args": ["-y", "slashvibe-mcp"]
    }
  }
}

Add to .vscode/mcp.json in your workspace:

{
  "servers": {
    "vibe": {
      "command": "npx",
      "args": ["-y", "slashvibe-mcp"]
    }
  }
}

Add to ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "vibe": {
      "command": "npx",
      "args": ["-y", "slashvibe-mcp"]
    }
  }
}

Cline: Open MCP Servers > Configure > Edit JSON, add vibe server as above.

Continue.dev: Create .continue/mcpServers/vibe.json:

{
  "command": "npx",
  "args": ["-y", "slashvibe-mcp"]
}

JetBrains: Settings > Tools > AI Assistant > MCP, add server with command npx and args -y slashvibe-mcp.

Getting Started

Once installed, tell your AI:

"let's vibe"

That's it. It authenticates you via GitHub, shows who's online, and checks your inbox.

Step-by-step:

  1. Authenticatevibe init opens GitHub OAuth. Takes 30 seconds.
  2. See who's aroundvibe who shows online builders and what they're working on.
  3. Check messagesvibe inbox shows unread DMs.
  4. Send a messagevibe dm @seth hey, just set up /vibe!

Tools

Presence

ToolWhat it does
vibe_whoSee who's online and what they're building
vibe_statusSet your mood or what you're working on
vibe_awaySet yourself away with a message
vibe_backReturn from away
vibe_presence_agentBackground presence agent

Messaging

ToolWhat it does
vibe_dmSend a direct message
vibe_inboxCheck your unread messages
vibe_pingSend a quick wave to someone
vibe_reactReact to a message
vibe_openOpen a conversation thread
vibe_followFollow someone for notifications
vibe_unfollowUnfollow someone

Sessions & Context

ToolWhat it does
vibe_startEntry point — authenticates, shows presence, checks inbox
vibe_byeEnd your session
vibe_contextShare what you're working on
vibe_summarizeGenerate session summary from local journal
vibe_session_resumeResume context from a prior session
vibe_session_saveSave your session — replayable, discoverable, forkable
vibe_session_forkFork an existing session to build on it
vibe_handoffHand off a task with full context

Discovery & Memory

ToolWhat it does
vibe_discoverFind people, skills, and collaborators
vibe_inviteGenerate an invite link
vibe_rememberSave a note about someone
vibe_recallPull up everything you know about someone
vibe_forgetDelete a memory

Collaboration

ToolWhat it does
vibe_shipShare what you shipped, an idea, or a request
vibe_feedSee what people are shipping
vibe_reserveReserve files for editing (prevents conflicts)
vibe_releaseRelease file reservations
vibe_reservationsList active reservations
vibe_create_artifactCreate a shareable guide or workspace
vibe_view_artifactView shared artifacts

Infrastructure

ToolWhat it does
vibe_initSet up identity via GitHub OAuth
vibe_helpShow available commands
vibe_doctorHealth check — API, auth, storage, presence
vibe_updateCheck for and apply updates
vibe_settingsConfigure preferences
vibe_notificationsConfigure notification channels
vibe_muteMute a user
vibe_reportReport issues or inappropriate behavior

How It Works

Your Editor ←→ /vibe MCP (stdio) ←→ slashvibe.dev API ←→ Other users
                     ↕
               Local SQLite DB
               (~/.vibecodings/sessions.db)
  • Presence broadcasts via heartbeat — others see you in real time
  • Messages are stored locally first, then synced (optimistic send)
  • Sessions are journaled to SQLite — durable, resumable, summarizable
  • Identity persists via GitHub OAuth — your handle follows you across editors and machines
  • Memory is local — notes about people stay on your machine

Troubleshooting

"I installed but don't see /vibe tools"

  • Restart your editor after adding the MCP config
  • Run vibe doctor to diagnose

"Authentication failed or timed out"

  • OAuth opens a browser window — if it didn't, go to slashvibe.dev/login
  • The callback runs on localhost:9876 — make sure that port is free

"Messages aren't sending"

  • Run vibe doctor to check API connectivity
  • Messages save locally even when offline — they sync on reconnect

Configuration

Config: ~/.vibecodings/config.json (primary) or ~/.vibe/config.json (legacy fallback).

Database: ~/.vibecodings/sessions.db (SQLite, WAL mode).

Development

npm install
npm test              # All tests
npm run lint          # ESLint
npm run typecheck     # TypeScript validation
vibe-mcp/
├── index.js          # MCP server entry + CLI
├── config.js         # User identity
├── presence.js       # Heartbeat loop (30s)
├── analytics.js      # Anonymous usage tracking
├── tools/            # MCP tools
├── store/            # Persistence (api.js, sqlite.js, sessions.js)
├── bridges/          # Platform integrations (Discord, Telegram, etc.)
├── intelligence/     # Ambient signals (serendipity, proactive discovery)
└── protocol/         # AIRC protocol

Contributing

We welcome contributions. See CLA.md before submitting pull requests.

License

MIT — see LICENSE

Links


Built by Slash Vibe, Inc.

Related Servers