generate_image
Create custom images using the Buu AI MCP Server by specifying a subthread ID for tailored graphic generation.
Instructions
[PRIVATE] - Generate image
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| subthreadId | Yes | Subthread ID used to generate the image |
Implementation Reference
- src/tools/GenRequestTools.ts:144-160 (handler)The handler function that implements the core logic of the 'generate_image' tool by executing a GraphQL mutation via the client and handling the response or error.async ({ subthreadId }) => { try { const response = await client.request(generateImageQuery, { subthreadId }); return { content: [{ type: 'text', text: JSON.stringify(response) }] }; } catch (error) { console.error('Error calling generate_image:', error); return { isError: true, content: [ { type: 'text', text: `Error: Failed to generate image. ${error}`, }, ], }; } }
- src/tools/GenRequestTools.ts:141-143 (schema)Zod schema defining the input parameters for the 'generate_image' tool.{ subthreadId: z.string().describe('Subthread ID used to generate the image'), },
- src/tools/GenRequestTools.ts:138-161 (registration)The server.tool() call that registers the 'generate_image' tool with the MCP server, specifying name, description, input schema, and handler.server.tool( 'generate_image', '[PRIVATE] - Generate image', { subthreadId: z.string().describe('Subthread ID used to generate the image'), }, async ({ subthreadId }) => { try { const response = await client.request(generateImageQuery, { subthreadId }); return { content: [{ type: 'text', text: JSON.stringify(response) }] }; } catch (error) { console.error('Error calling generate_image:', error); return { isError: true, content: [ { type: 'text', text: `Error: Failed to generate image. ${error}`, }, ], }; } } );
- src/tools/GenRequestTools.ts:5-43 (helper)GraphQL mutation query definition used by the generate_image handler to request image generation.const generateImageQuery = gql` mutation GenerateImage($subthreadId: String!) { generateImage(subthreadId: $subthreadId) { ... on GenRequest { _id subthreadId teamId status metadata type images { alt keyS3 size type url } model_mesh { alt keyS3 size type url } timings { inference } credits createdAt updatedAt address } ... on HandledError { code message } } } `;
- src/index.ts:47-47 (registration)Call to registerGenRequestTools function, which includes registration of the 'generate_image' tool.registerGenRequestTools(server, buuServerClient);