mcp-buttplug

mcp-buttplug

An MCP server that connects Claude and other MCP clients to buttplug.io, allowing AI models to directly control and orchestrate intimate hardware in real-time. It provides a suite of tools for device discovery and haptic commands like vibration, rotation, and patterned pulses.

Category
访问服务器

README

<p align="center"> <img src="logo.svg" width="160" height="160" alt="buttplug-mcp" /> </p>

<h1 align="center">buttplug-mcp</h1>

<p align="center"> <strong>MCP server that gives Claude direct control over intimate hardware and game controllers via <a href="https://buttplug.io">buttplug.io</a></strong> </p>

<p align="center"> <code>vibrate</code> · <code>rotate</code> · <code>oscillate</code> · <code>linear</code> · <code>pulse</code> · <code>wave</code> </p>


An MCP server that connects Claude Code (or any MCP client) to buttplug.io — the open-source intimate hardware control library. Claude gets tools to discover, control, and orchestrate haptic devices in real-time.

Now with gamepad support. Xbox, PlayStation, and Switch controllers work as vibration devices on macOS, Windows, and Linux — powered by our SDL2 fork of intiface-engine.

The LLM decides what you feel, and when.

How It Works

Claude Code <-> MCP (stdio) <-> buttplug-mcp <-> WebSocket <-> intiface-engine <-> SDL2/BLE/USB <-> Device

buttplug-mcp auto-launches our forked intiface-engine when you call connect. No separate server to install or run. The engine handles:

  • Gamepads (Xbox/PS/Switch) via SDL2 — cross-platform rumble
  • Bluetooth LE toys (Lovense, We-Vibe, etc) via btleplug
  • USB/Serial devices via platform drivers

Getting Started

Prerequisites

Install

# Install Bun if you don't have it
curl -fsSL https://bun.sh/install | bash

# Install Rust if you don't have it
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

# Install cmake
# macOS: brew install cmake
# Ubuntu: sudo apt install cmake
# Windows: choco install cmake

# Clone and install
git clone https://github.com/chiefautism/buttplug-mcp.git
cd buttplug-mcp
bun install

bun install will automatically clone our buttplug fork and build intiface-engine with SDL2 gamepad support. This takes ~2 minutes on first install.

Add to Claude Code

Create or edit ~/.claude/.mcp.json:

{
  "mcpServers": {
    "buttplug": {
      "command": "bun",
      "args": ["/absolute/path/to/buttplug-mcp/index.ts"]
    }
  }
}

Go

Restart Claude Code. The tools are available immediately.

you: connect and scan for devices

claude: [calls connect] -> [calls scan]
        Connected. Found your Xbox Wireless Controller.

Gamepad Setup

Connect your controller via Bluetooth (not USB — USB rumble is not supported on macOS):

  1. Press and hold the Xbox/PS button until it flashes
  2. Press the pairing button (small button near USB port on Xbox)
  3. Go to System Settings → Bluetooth → Connect
  4. In Claude Code: connectscan → your controller appears

Tools

Tool Description
connect Connect to Intiface Engine (auto-launches if needed)
scan Discover devices (gamepads, Bluetooth, USB)
devices List connected devices
vibrate Vibrate at intensity 0.0-1.0, optional auto-stop timer
rotate Rotate at speed 0.0-1.0
oscillate Oscillate at intensity 0.0-1.0
linear Move to position over duration (stroker devices)
pulse Patterned pulses — count, on/off timing, intensity
wave Smooth ramp between two intensities over time
stop Stop one or all devices
battery Read device battery level
disconnect Disconnect and stop engine

Usage

Once connected, just talk to Claude. It has the tools — it'll figure it out.

you: give me a gentle pulse

claude: [calls vibrate(intensity=0.3)] -> [calls pulse(count=3)]
        Sent 3 gentle pulses to your Xbox controller.
you: slowly ramp up over 10 seconds then stop

claude: [calls wave(from=0, to=0.8, duration_ms=10000)]
        [calls stop]

All device parameters (intensity, speed, position) are normalized to 0.0-1.0. Claude handles the mapping.

Architecture

This project consists of two repositories:

buttplug-mcp (this repo)

MCP server in TypeScript/Bun. Thin WebSocket client that speaks buttplug v3 protocol directly (no npm dependencies for device control). Auto-launches intiface-engine.

chiefautism/buttplug (fork)

Fork of buttplugio/buttplug with a new crate: buttplug_server_hwmgr_sdl_gamepad. Adds cross-platform gamepad rumble via SDL2. Xbox/PS/Switch controllers appear as standard buttplug devices.

Supported Devices

Gamepads (via SDL2)

Any controller SDL2 supports with rumble: Xbox Series X/S, Xbox One, DualShock 4, DualSense, Switch Pro Controller, and more. Connected via Bluetooth.

Intimate Hardware (via buttplug.io)

750+ devices from 30+ brands. Anything in the buttplug.io ecosystem works.

Brand Devices Connection
Lovense Lush, Hush, Edge, Nora, Max, Osci, Domi, and more Bluetooth LE
We-Vibe Sync, Melt, Vector, Nova, Chorus, Wish Bluetooth LE
Kiiroo Onyx+, Keon, FeelConnect, Titan Bluetooth LE
Satisfyer Curvy, Love Triangle, Sexy Secret Bluetooth LE
The Handy The Handy Wi-Fi / API
Magic Motion Flamingo, Awaken, Equinox Bluetooth LE
Lelo F1s, Hugo, Tiani Bluetooth LE
TCode OSR-2, SR-6, DIY devices Serial / USB

Full searchable database: iostindex.com

Why

I saw girls on TikTok gooning with AI chatbots. Text-only. No haptics. Just vibes and imagination.

Thought — what if the chatbot could actually touch you? MCP gives LLMs tool use. Buttplug.io gives software device control. This glues them together. Now the AI doesn't just talk. It acts.

The hardware is already in the drawer. This is just the software.

License

BSD-3-Clause

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选