Skip to content

Buttplug MCP

Buttplug.io Model Context Protocol (MCP) Server

Install

$go install github.com/mark3labs/mcphost@latest

Install command taken from the project's README or registry entry. Always review code before running it.

buttplug-mcp - Buttplug.io MCP Server

buttplug-mcp is a Model Context Protocol (MCP) server for the Buttplug.io ecosystem. It allows Tool-supporting LLM programs like Claude Desktop query and control your Genital Interface Devices.

|insert AI-generated slop image of robots doing nasty things| LLM|=> - - (__(__)

Once set up, you can prompt your LLM:

  • "What are my connected buttplug devices?"
  • "Set the second motor on my LELO F1S to 50% strength"
  • "How much battery is left on my Lovense Max 2?"
  • "Does my WeWibe have weak signal?"

NOTE: The above is aspirational and really the current experience is unstable and frustating.

It supports the following Resources and Tools:

Resource Description
/devices List of connected Buttplug devices in JSON.
/device/{id} Device information by device ID whereid is a number from /devices
/device/{id}/rssi RSSI signal level by device ID where id is a number from /devices
/device/{id}/battery Battery level by device ID where id is a number from /devices
Tool Params Description
device_vibrate id, motor, strength Vibrates device by id, selecting strength and optional motor

JSON Schema for Resources. Click to expand

schema_resources.json

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "resources": [
      {
        "uri": "devices",
        "name": "Device List",
        "description": "List of connected Buttplug devices in JSON",
        "mimeType": "application/json"
      }
    ]
  }
}

JSON Schema for Tools. Click to expand

schema_tools.json

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "tools": [
      {
        "description": "Vibrates device by `id`, selecting `strength` and optional `motor`",
        "inputSchema": {
          "type": "object",
          "properties": {
            "id": {
              "description": "Device ID to query, sourced from `/devices`",
              "pattern": "^[0-9]*$",
              "type": "number"
            },
            "motor": {
              "description": "Motor number to vibrate, defaults to 0",
              "pattern": "^[0-9]*$",
              "type": "number"
            },
            "strength": {
              "description": "Strength from 0.0 to 1.0, with 0.0 being off and 1.0 being full",
              "pattern": "^(0(\\.\\d+)?|1(\\.0+)?)$",
              "type": "number"
            }
          },
          "required": [
            "id",
            "strength"
          ]
        },
        "name": "device_vibrate"
      }
    ]
  }
}

Current State

I started working on this on 2025-04-01, April Fool's Day, after having created another experimental MCP service, dbn-go for financial market data, the day prior. So it is fresh meat and was intended as a quick, fun educational project.

Similar plugs

The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond.

Java 面试 & 后端通用面试指南,覆盖计算机基础、数据库、分布式、高并发、系统设计与 AI 应用开发

Build Agentic workflows, RAG pipelines, with rich AI model and tool support on one collaborative workspace. Deploy on cloud, VPC, or self-hosted, so teams move from prototype…

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

Explore related