delete_dataverse_optionset
Remove an option set from Microsoft Dataverse. This permanent deletion requires verifying no columns currently reference the option set before proceeding.
Instructions
Permanently deletes an option set from Dataverse. WARNING: This action cannot be undone and will fail if the option set is being used by any columns. Ensure no columns reference this option set before deletion.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | Name of the option set to delete |
Implementation Reference
- src/tools/optionset-tools.ts:286-309 (handler)The handler function that performs the deletion of the specified global option set using DataverseClient.deleteMetadata, including success response and error handling.async (params) => { try { await client.deleteMetadata(`GlobalOptionSetDefinitions(Name='${params.name}')`); return { content: [ { type: "text", text: `Successfully deleted option set '${params.name}'.` } ] }; } catch (error) { return { content: [ { type: "text", text: `Error deleting option set: ${error instanceof Error ? error.message : 'Unknown error'}` } ], isError: true }; } }
- src/tools/optionset-tools.ts:282-284 (schema)Zod schema for the tool input, requiring the name of the option set to delete.inputSchema: { name: z.string().describe("Name of the option set to delete") }
- src/tools/optionset-tools.ts:277-311 (registration)The server.registerTool call that registers the 'delete_dataverse_optionset' tool with its schema and handler.server.registerTool( "delete_dataverse_optionset", { title: "Delete Dataverse Option Set", description: "Permanently deletes an option set from Dataverse. WARNING: This action cannot be undone and will fail if the option set is being used by any columns. Ensure no columns reference this option set before deletion.", inputSchema: { name: z.string().describe("Name of the option set to delete") } }, async (params) => { try { await client.deleteMetadata(`GlobalOptionSetDefinitions(Name='${params.name}')`); return { content: [ { type: "text", text: `Successfully deleted option set '${params.name}'.` } ] }; } catch (error) { return { content: [ { type: "text", text: `Error deleting option set: ${error instanceof Error ? error.message : 'Unknown error'}` } ], isError: true }; } } ); }
- src/index.ts:162-162 (registration)Top-level call to register the option set tools, including deleteOptionSetTool, with the main MCP server.deleteOptionSetTool(server, dataverseClient);