get_scenic_status
Verify the status of the TCP connection for Scenic Elixir applications, enabling AI-driven automation and testing via the Scenic MCP server.
Instructions
Check the status of the Scenic TCP connection
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/tools.ts:262-298 (handler)The handler function that executes the get_scenic_status tool logic: checks if the Scenic TCP server is running, sends a status request to Elixir if connected, and returns formatted status text.async function handleGetScenicStatus(args: any) { try { const isRunning = await conn.checkTCPServer(); if (!isRunning) { return { content: [ { type: 'text', text: `Scenic MCP Status:\n- Connection: Waiting for Scenic app\n- TCP Port: ${conn.getCurrentPort()}\n\nThe MCP server is running but no Scenic application is connected. Start your Scenic app and the connection will be automatically detected.`, }, ], }; } const response = await conn.sendToElixir({ action: 'status' }); const data = JSON.parse(response); return { content: [ { type: 'text', text: `Scenic MCP Status:\n- Connection: Active\n- TCP Port: ${conn.getCurrentPort()}\n\nServer details:\n${JSON.stringify(data, null, 2)}`, }, ], }; } catch (error) { return { content: [ { type: 'text', text: `Status: Connected but error getting details\nError: ${error instanceof Error ? error.message : 'Unknown error'}`, }, ], }; } }
- src/tools.ts:37-45 (schema)Tool schema definition in getToolDefinitions(), including name, description, and empty input schema (no parameters required).{ name: 'get_scenic_status', description: 'CONNECTION STATUS: Check if we are connected to a Scenic app and fetch details.', inputSchema: { type: 'object', properties: {}, required: [], }, },
- src/tools.ts:192-193 (registration)Registration in the handleToolCall switch statement, routing calls to the 'get_scenic_status' tool to its handler function.case 'get_scenic_status': return await handleGetScenicStatus(args);