osc-bridge

This skill should be used when the user wants to control music hardware or software from Claude via osc-bridge — playing or tweaking a hardware synthesizer over MIDI/SysEx (849 dev…

roomi-fields

@roomi-fields

Install

$ openclaw skills install @roomi-fields/osc-bridge

osc-bridge

Overview

osc-bridge gives every synthesizer and music app a clean, named OSC surface: send /grandmother/filter/cutoff 64 and the bridge translates it to the right MIDI CC, NRPN, or SysEx frame for that device. 849 hardware drivers plus 8 software targets (DAWs and live-coding environments). This skill drives it through the osc-bridge MCP server.

Critical: two things must be true before anything makes sound

1. The MCP server needs the device catalogue, and npm does not ship it. The published package contains only the binary; the 849 driver JSONs live in the git repo. --devices-dir defaults to the relative path devices, so a default install indexes 0 devices and every device tool fails with no device with slug '…'. Clone the repo and point at it:

{
  "mcpServers": {
    "osc-bridge": {
      "command": "npx",
      "args": ["-y", "@roomi-fields/osc-bridge", "mcp",
               "--devices-dir", "/absolute/path/to/osc-bridge/devices"]
    }
  }
}

Check the server's stderr for indexed 849 device file(s). If it says indexed 0, the path is wrong — nothing else will work.

2. The MCP send tool talks to the bridge, not to the synth. The MCP server opens no MIDI port. A separate bridge process must be running and listening, or messages vanish into a UDP void:

# hardware — --out-port is required
osc-bridge run --device devices/moog/grandmother.json \
  --out-port 4 --bind 127.0.0.1:7777 --osc-client 127.0.0.1:8888

# software (DAW / live coding) — no MIDI ports
osc-bridge run --device devices/ableton/live.third-party-osc.fw-12.2.json \
  --bind 127.0.0.1:7777 --osc-client 127.0.0.1:8888

send reports sent: true even when nothing is listening — it is fire-and-forget UDP. Silence is the only failure signal.

The five MCP tools

ToolParamsUse
list_devicesnoneFull catalogue dump — ~237 KB of JSON. Avoid; grep the docs instead (below).
get_device_docsslugCompanion notes. Only 10 devices have any; has_docs:false elsewhere is normal.
list_routesslugThe workhorse — every OSC address the device accepts, with CC/NRPN numbers and ranges.
sendaddr, args?, target?Send one OSC message to the bridge.
get_statustarget?Do not use as a health check — it reports replied:false even when the bridge is running (replies only go to --osc-client addresses).

Workflow

  1. Find the device. Grep docs/SUPPORTED_DEVICES.md in the clone — it lists every device by vendor with its OSC prefix. The prefix minus the leading slash is the slug (/grandmother → grandmother). Do not call list_devices just to search; it dumps the whole catalogue into context.
  2. Read its surface. list_routes(slug) returns commands, cc_params (with cc, nrpn_msb/lsb, range), params (SysEx), and replies.
  3. Start the bridge (see above). For hardware, find the MIDI port first with osc-bridge list — it prints separate numbered lists for inputs and outputs; --out-port takes the output index.
  4. Send. send("/<slug>/<address>", [args]), using the exact addresses from step 2.

For anything beyond a single message — device details, address→MIDI mapping, per-DAW setup, or when something is silent — load the reference below that fits.

References

  • references/devices.md — finding drivers, slug rules, how OSC addresses map to CC / 14-bit CC / NRPN / SysEx / performance notes, the raw-SysEx escape hatch, and the coverage reality (most drivers are CC-only).
  • references/software-targets.md — the 8 DAW / live-coding targets: ports, index bases, and the host-side setup each one requires (AbletonOSC, DrivenByMoss, Reaper OSC prefs, Sonic Pi, SuperCollider, Pure Data, TouchDesigner, VCV Rack).
  • references/troubleshooting.md — the silent failure modes, in the order worth checking.

Typing matters

send mirrors the JSON literal type into OSC: 124 becomes an int, 124.0 a float. AbletonOSC silently ignores an int where it expects a float — when a DAW command does nothing, check this first.

Top skills in this category

YouTube

@byungkyu

YouTube Data API integration with managed OAuth. Search videos, manage playlists, access channel data, and interact with comments. Use this skill when users want to interact with YouTube. For other third party apps, use the api-gateway skill (https://clawhub.ai/byungkyu/api-gateway). Calls run through the `maton` CLI with OAuth login, or over raw HTTP with a Maton API key where the CLI cannot be installed. Every call is authenticated as the user's connection and reaches only what that connection's authorization allows, which the provider enforces on every request; the endpoints documented here are the ones this skill uses, and any other endpoint of this app needs the user to ask for it by name. Default to read and list calls, and confirm every write or new connection with the user. This file also documents the three constructs that turn a YouTube connection into automation, in the order they are used: the connection (the first step), a hosted function that runs a YouTube action through the Maton SDK, and a trigger that calls that function on a schedule or on an event. Those sections are the platform's own reference text, shared with the api-gateway skill, with YouTube examples; they add no YouTube capability - YouTube is not an event source, a trigger cannot read YouTube data, and the files under `references/<source>/triggers.md` are the platform's event catalogues for the sources Maton offers (time, Calendly, GitHub, Gmail, HubSpot, Linear, Notion, Slack, Stripe).

14529k

Wechat Article Search

@wuchubuzai2018

搜索微信公众号文章技能。通过微信搜索获取文章列表,覆盖科技/AI、社会热点、财经、教育、职场等各类中文资讯;可按关键词检索并返回标题、概要、发布时间、来源公众号与链接。当用户需要查找微信公众号文章、整理参考资料或快速获取文章信息时使用此技能。

3318k

Figma

@hith3sh

Read files, manage comments, extract design tokens, download images, and create webhooks in Figma via the Figma REST API. Use this skill when users want to i...

327.5k

Social Media Scheduler

@1kalin

Plan, draft, and organize social media content across platforms. Create content calendars, write platform-optimized posts, and maintain consistent posting schedules.

1414k

Alexa CLI

@buddyh

Control Amazon Alexa devices and smart home via the `alexacli` CLI. Use when a user asks to speak/announce on Echo devices, control lights/thermostats/locks, send voice commands, or query Alexa.

146.8k