create_element
Create new AI personas, skills, templates, agents, memories, or ensembles for dynamic persona management in the DollhouseMCP server.
Instructions
Create a new element of any type
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | The element name | |
| type | Yes | The element type | |
| description | Yes | Element description | |
| content | No | Element content (required for some types) | |
| metadata | No | Additional metadata specific to element type |
Implementation Reference
- src/server/tools/ElementTools.ts:243-276 (handler)Defines the MCP tool 'create_element' including its input schema, description, and handler function that delegates to the server's createElement method.tool: { name: "create_element", description: "Create a new element of any type", inputSchema: { type: "object", properties: { name: { type: "string", description: "The element name", }, type: { type: "string", description: "The element type", enum: Object.values(ElementType), }, description: { type: "string", description: "Element description", }, content: { type: "string", description: "Element content (required for some types)", }, metadata: { type: "object", description: "Additional metadata specific to element type", additionalProperties: true, }, }, required: ["name", "type", "description"], }, }, handler: (args: CreateElementArgs) => server.createElement(args) },
- src/server/ServerSetup.ts:51-54 (registration)Registers all element tools, including 'create_element', using the getElementTools function from ElementTools.ts into the ToolRegistry.private registerTools(instance: IToolHandler): void { // Register element tools (new generic tools for all element types) this.toolRegistry.registerMany(getElementTools(instance));
- TypeScript interface defining the input arguments for the create_element tool handler.interface CreateElementArgs { name: string; description: string; type: string; content?: string; metadata?: Record<string, any>; }
- src/server/types.ts:24-24 (schema)IToolHandler interface method signature for createElement, used by the tool handler.createElement(args: {name: string; type: string; description: string; content?: string; metadata?: Record<string, any>}): Promise<any>;