Delete contract
delete_contractDelete a contract by ID. Requires contracts:write scope.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Contract ID |
delete_contractDelete a contract by ID. Requires contracts:write scope.
| Name | Required | Description | Default |
|---|---|---|---|
| id | Yes | Contract ID |
Changes observed during successful MCP inspections.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=true and readOnlyHint=false, so the safety profile is covered. The description adds the contracts:write scope requirement, which is useful non-annotation context. It does not disclose whether related records (contract documents, contract sites) are cascaded or whether the delete is soft vs permanent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, operation and identifier front-loaded, zero filler. Every part of the text carries information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter destructive tool with full annotation coverage and no output schema, the definition plus structured fields is nearly sufficient. The remaining gap is cascade/irreversibility behavior, which matters because contract children are deletable separately.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with a single documented 'id' parameter (uuid format, 'Contract ID'). Saying 'by ID' adds nothing beyond the schema, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: 'Delete a contract by ID' names the operation and the identifier. It is reasonably distinguishable from siblings like delete_contract_document and delete_contract_site, though it never explicitly contrasts with them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no when-to-use guidance, no exclusions, and no pointer to the correct sibling for deleting a contract document or contract site instead. The required scope is stated, but that is a prerequisite rather than usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.