jevstrudel.git / worker / src / tools.json
1[
2  {
3    "name": "play_code",
4    "description": "Load Strudel code into a browser tab's editor and play it from the top: the tab stops first, so songs that count cycles start at cycle 0. Returns the evaluation error, if any.",
5    "inputSchema": {
6      "type": "object",
7      "properties": {
8        "code": {
9          "type": "string",
10          "description": "Strudel code"
11        },
12        "session_id": {
13          "type": "string",
14          "description": "The session id shown in the REPL header. Optional when only one tab is open."
15        }
16      },
17      "required": [
18        "code"
19      ]
20    }
21  },
22  {
23    "name": "stop_play",
24    "description": "Stop playback in a browser tab.",
25    "inputSchema": {
26      "type": "object",
27      "properties": {
28        "session_id": {
29          "type": "string",
30          "description": "The session id shown in the REPL header. Optional when only one tab is open."
31        }
32      }
33    }
34  },
35  {
36    "name": "get_currently_playing_code",
37    "description": "Return the code in a browser tab's editor.",
38    "inputSchema": {
39      "type": "object",
40      "properties": {
41        "session_id": {
42          "type": "string",
43          "description": "The session id shown in the REPL header. Optional when only one tab is open."
44        }
45      }
46    }
47  },
48  {
49    "name": "get_logs",
50    "description": "Return what a browser tab has logged since the last play_code: Strudel's console (warnings, evaluation and scheduler errors, [jev] choices, sample loads) and uncaught errors, oldest first, with repeats counted.",
51    "inputSchema": {
52      "type": "object",
53      "properties": {
54        "session_id": {
55          "type": "string",
56          "description": "The session id shown in the REPL header. Optional when only one tab is open."
57        },
58        "filter": {
59          "type": "string",
60          "description": "Only lines containing this text, e.g. \"warn\" or \"error\"."
61        }
62      }
63    }
64  },
65  {
66    "name": "get_mcp_status",
67    "description": "List the browser tabs connected to the jevstrudel Worker.",
68    "inputSchema": {
69      "type": "object",
70      "properties": {}
71    }
72  }
73]