ollama_copy
Duplicate an existing Ollama model by creating a copy with a new name for testing, sharing, or versioning purposes.
Instructions
Copy a model. Creates a duplicate of an existing model with a new name.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| source | Yes | Name of the source model | |
| destination | Yes | Name for the copied model | |
| format | No | json |
Implementation Reference
- src/tools/copy.ts:7-22 (handler)Core function that executes the ollama_copy tool logic: copies the model using ollama.copy() and formats the response./** * Copy a model */ export async function copyModel( ollama: Ollama, source: string, destination: string, format: ResponseFormat ): Promise<string> { const response = await ollama.copy({ source, destination, }); return formatResponse(JSON.stringify(response), format); }
- src/tools/copy.ts:24-51 (registration)Registration of the 'ollama_copy' tool, including name, description, inline input schema, and handler that validates args and calls copyModel.export const toolDefinition: ToolDefinition = { name: 'ollama_copy', description: 'Copy a model. Creates a duplicate of an existing model with a new name.', inputSchema: { type: 'object', properties: { source: { type: 'string', description: 'Name of the source model', }, destination: { type: 'string', description: 'Name for the copied model', }, format: { type: 'string', enum: ['json', 'markdown'], default: 'json', }, }, required: ['source', 'destination'], }, handler: async (ollama: Ollama, args: Record<string, unknown>, format: ResponseFormat) => { const validated = CopyModelInputSchema.parse(args); return copyModel(ollama, validated.source, validated.destination, format); }, };
- src/schemas.ts:184-191 (schema)Zod schema used for input validation in the ollama_copy handler: requires source and destination model names./** * Schema for ollama_copy tool */ export const CopyModelInputSchema = z.object({ source: z.string().min(1), destination: z.string().min(1), format: ResponseFormatSchema.default('json'), });