delete_constraint
Remove specific constraints from feature flag segments in Flipt MCP Server by specifying namespace, segment, and constraint IDs.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| constraintId | Yes | ||
| namespaceKey | Yes | ||
| segmentKey | Yes |
Implementation Reference
- src/index.ts:816-840 (handler)The MCP tool handler function that invokes the fliptClient to delete the constraint and formats the success or error response.async args => { try { await fliptClient.deleteConstraint(args.namespaceKey, args.segmentKey, args.constraintId); return { content: [ { type: 'text', text: `Successfully deleted constraint ${args.constraintId} from segment ${args.segmentKey}`, }, ], }; } catch (error: any) { console.error('Error deleting constraint:', error); return { content: [ { type: 'text', text: `Failed to delete constraint: ${error.message}`, }, ], isError: true, }; } }
- src/index.ts:811-815 (schema)Zod input schema defining parameters for the delete_constraint tool: namespaceKey, segmentKey, and constraintId.{ namespaceKey: z.string().min(1), segmentKey: z.string().min(1), constraintId: z.string().min(1), },
- src/index.ts:809-841 (registration)Registration of the delete_constraint tool using server.tool with name, schema, and handler function.server.tool( 'delete_constraint', { namespaceKey: z.string().min(1), segmentKey: z.string().min(1), constraintId: z.string().min(1), }, async args => { try { await fliptClient.deleteConstraint(args.namespaceKey, args.segmentKey, args.constraintId); return { content: [ { type: 'text', text: `Successfully deleted constraint ${args.constraintId} from segment ${args.segmentKey}`, }, ], }; } catch (error: any) { console.error('Error deleting constraint:', error); return { content: [ { type: 'text', text: `Failed to delete constraint: ${error.message}`, }, ], isError: true, }; } } );
- src/services/fliptClient.ts:519-527 (helper)Helper method in FliptClient that calls the generated API to delete the constraint.async deleteConstraint(namespaceKey: string, segmentKey: string, id: string) { try { await this.constraintsApi.deleteConstraint(namespaceKey, segmentKey, id); return { success: true }; } catch (error) { console.error('Error deleting constraint:', error); throw error; } }