Delete Dataverse Option Set
delete_dataverse_optionsetRemove 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
| 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);