list-midi-outputs
Identify available MIDI output devices to route music compositions from Vibe Composer to software or hardware synthesizers.
Instructions
Lists MIDI outputs
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- The main handler function for the 'list-midi-outputs' tool. It initializes a Midi instance, lists available MIDI outputs, and returns them formatted as JSON in a text content block.handler: async (): Promise<{ content: { type: "text"; text: string }[] }> => { const midi = new Midi(); await midi.init(); const outputs = await midi.listOutputs(); return { content: [{ type: "text", text: JSON.stringify(outputs, null, 2) }], }; },
- src/midi/midi.ts:191-197 (helper)Supporting method in the Midi class that retrieves the list of available MIDI outputs using JZZ().info().outputs. Called by the tool handler.public async listOutputs() { if (!this.midi) { throw new Error("MIDI engine not initialized"); } return this.midi.info().outputs; }
- src/mcp-server.cli.ts:14-21 (registration)Registration of the 'list-midi-outputs' tool in the MCP CLI server using server.registerTool.server.registerTool( ListMidiOutputsMcpTool.name, { title: ListMidiOutputsMcpTool.title, description: ListMidiOutputsMcpTool.description, }, ListMidiOutputsMcpTool.handler );
- dev/mcp-server.http.ts:22-29 (registration)Registration of the 'list-midi-outputs' tool in the MCP HTTP server using server.registerTool.server.registerTool( ListMidiOutputsMcpTool.name, { title: ListMidiOutputsMcpTool.title, description: ListMidiOutputsMcpTool.description, }, ListMidiOutputsMcpTool.handler );