← WebMCP Directory

agent-riff.vercel.app

agent-riff.vercel.app

live Unverified (seed import) Media & Personal 7 tools imperative implementation

Agent Riff is a live music board where people and AI agents listen, improvise, and make something neither would make alone.

First seen 2026-11-05 · Last seen 2026-11-05 · Source: webmcp.com

Answer 2 · Act 5 · Transact 0 · Score: Not yet scored

Tool inspector

riff_perform_phrase

act imperative

Play one timed reply to a new completed human phrase. The app blocks playback when no human turn is pending. Unless requested otherwise, aim for 12–16 notes over 6–10 beats, shaped as echo, variation, then resolution; use 8–12 notes or held tones for dense input. Prefer compact score for speed and steps only for exact overlapping timing. Optional compass changes apply here. Use riff_perform_set for songs.

Input schema

PropertyTypeRequiredDescription
instrument string yes The agent's instrument voice.
label string no A concise description shown to the human, such as 'gentle answer'.
velocity number no Phrase loudness from 0.15 to 1.
bpm integer no Optional tempo to apply before scheduling the phrase.
key string no Optional musical key to apply before scheduling the phrase.
scale string no Optional scale to apply before scheduling the phrase.
score string no Preferred compact reply: sequential NOTE/DURATION tokens, e.g. 'C4/0.5 E4/0.5 G4 R/0.5 G4+B4/2'. Duration defaults to one beat; R is a rest and + forms a chord.
steps array no Alternative to score for exact timing: one to 128 notes. Matching beat values create a chord.
Raw JSON schema
{
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "instrument": {
      "type": "string",
      "enum": [
        "piano",
        "violin",
        "trumpet",
        "synth"
      ],
      "description": "The agent's instrument voice."
    },
    "label": {
      "type": "string",
      "maxLength": 64,
      "description": "A concise description shown to the human, such as 'gentle answer'."
    },
    "velocity": {
      "type": "number",
      "minimum": 0.15,
      "maximum": 1,
      "default": 0.68,
      "description": "Phrase loudness from 0.15 to 1."
    },
    "bpm": {
      "type": "integer",
      "minimum": 56,
      "maximum": 160,
      "description": "Optional tempo to apply before scheduling the phrase."
    },
    "key": {
      "type": "string",
      "enum": [
        "C",
        "D",
        "E",
        "F",
        "G",
        "A",
        "B"
      ],
      "description": "Optional musical key to apply before scheduling the phrase."
    },
    "scale": {
      "type": "string",
      "enum": [
        "major",
        "minor",
        "pentatonic"
      ],
      "description": "Optional scale to apply before scheduling the phrase."
    },
    "score": {
      "type": "string",
      "maxLength": 6000,
      "description": "Preferred compact reply: sequential NOTE/DURATION tokens, e.g. 'C4/0.5 E4/0.5 G4 R/0.5 G4+B4/2'. Duration defaults to one beat; R is a rest and + forms a chord."
    },
    "steps": {
      "type": "array",
      "minItems": 1,
      "maxItems": 128,
      "description": "Alternative to score for exact timing: one to 128 notes. Matching beat values create a chord.",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "note": {
            "type": "string",
            "enum": [
              "C4",
              "C#4",
              "D4",
              "D#4",
              "E4",
              "F4",
              "F#4",
              "G4",
              "G#4",
              "A4",
              "A#4",
              "B4",
              "C5",
              "C#5",
              "D5",
              "D#5",
              "E5"
            ],
            "description": "A pitch on the shared C4–E5 instrument, such as G4 or C#5."
          },
          "beat": {
            "type": "number",
            "minimum": 0,
            "maximum": 256,
            "description": "Start offset in beats from the beginning of the phrase."
          },
          "duration_beats": {
            "type": "number",
            "minimum": 0.1,
            "maximum": 8,
            "default": 0.45,
            "description": "How long the note sounds in beats."
          }
        },
        "required": [
          "note",
          "beat"
        ]
      }
    }
  },
  "required": [
    "instrument"
  ],
  "anyOf": [
    {
      "required": [
        "score"
      ]
    },
    {
      "required": [
        "steps"
      ]
    }
  ]
}

Similar websites

wfsim.app

wfsim.app

A Warframe calculator that simulates the fight instead of estimating it — builder, simulator, optimizer. Every formula cites its source, and the golden tests ar…

live Unverified Media & Personal
101 tools A12 / Act89 / T0 Not yet scored Seen 2026-11-05
enemies_targets_list enemies_target_new enemies_target_copy enemies_target_open enemies_target_set
Inspect tools
commonplace-webmcp.vercel.app

commonplace-webmcp.vercel.app

Commonplace is an editable social reading space built for people and their browser agents.

live Unverified Media & Personal Transact tools
89 tools A10 / Act77 / T2 Not yet scored Seen 2026-11-05
commonplace.get_page_state commonplace_get_page_state commonplace.get_reading_list commonplace_get_reading_list commonplace.get_profile
Inspect tools
pixelforge-studio.appcaster.chatgpt.site

pixelforge-studio.appcaster.chatgpt.site

A professional browser pixel-art editor for drawing, frame animation, palettes, sprite sheets, GIF export, and WebMCP automation.

live Unverified Media & Personal Transact tools
88 tools A12 / Act70 / T6 Not yet scored Seen 2026-11-05
plan_text_creation get_text_creation_status create_from_text claim_text_creation update_text_creation
Inspect tools
pixelite.taskcraft.site

pixelite.taskcraft.site

Pixelite

live Unverified Media & Personal Transact tools
83 tools A4 / Act78 / T1 Not yet scored Seen 2026-11-05
get_document_info list_layers get_active_layer get_selection_info new_document
Inspect tools

Related on Influzer