listActions
Retrieve available actions for a specific scene and event in Spline 3D design tool to manage animations and interactions programmatically.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| sceneId | Yes | Scene ID | |
| eventId | Yes | Event ID |
Implementation Reference
- src/tools/action-tools.js:401-424 (handler)The handler function that implements the core logic of the 'listActions' tool. It fetches actions for a given scene event via API and returns formatted JSON or error.async ({ sceneId, eventId }) => { try { const actions = await apiClient.request('GET', `/scenes/${sceneId}/events/${eventId}/actions`); return { content: [ { type: 'text', text: JSON.stringify(actions, null, 2) } ] }; } catch (error) { return { content: [ { type: 'text', text: `Error listing actions: ${error.message}` } ], isError: true }; } }
- src/tools/action-tools.js:397-400 (schema)Zod schema defining input parameters for the 'listActions' tool: sceneId and eventId.{ sceneId: z.string().min(1).describe('Scene ID'), eventId: z.string().min(1).describe('Event ID'), },
- src/tools/action-tools.js:395-426 (registration)The server.tool call that registers the 'listActions' tool with its schema and handler on the MCP server.server.tool( 'listActions', { sceneId: z.string().min(1).describe('Scene ID'), eventId: z.string().min(1).describe('Event ID'), }, async ({ sceneId, eventId }) => { try { const actions = await apiClient.request('GET', `/scenes/${sceneId}/events/${eventId}/actions`); return { content: [ { type: 'text', text: JSON.stringify(actions, null, 2) } ] }; } catch (error) { return { content: [ { type: 'text', text: `Error listing actions: ${error.message}` } ], isError: true }; } } );
- src/index.js:95-95 (registration)Top-level call to registerActionTools(server), which includes registration of the 'listActions' tool.registerActionTools(server);
- src/index.js:20-20 (registration)Import of the registerActionTools function that defines and registers the 'listActions' tool.import { registerActionTools } from './tools/action-tools.js';