Skip to main content
Glama

check_conflict

Read-onlyIdempotent

Check a proposed decision for conflicts or duplicates against stored do_not_revert decisions, treating negated restatements as conflicts, to surface issues before recording.

Instructions

Check whether a proposed decision contradicts any do_not_revert=True decision OR duplicates an existing one. A NEGATED restatement is always a conflict, never a duplicate: 'never do X' and 'do X' differ by one token and score as near-identical text, so they are separated explicitly. Returns {status: novel|duplicate|conflict, conflicts, duplicates}. Call BEFORE record_decision to surface conflicts proactively (record_decision also runs this internally and surfaces _conflict_warning unless force=true).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
file_pathNoOptional — prefer hits on the same file
decision_textYesThe decision text you'd pass to record_decision
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, and the description adds substantial behavioral nuance beyond that: the handling of negated restatements as conflicts rather than duplicates, the exact return status vocabulary, and the internal call from record_decision. This is exactly the kind of non-obvious logic an agent needs to predict tool behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is dense but every sentence earns its place: first the core purpose, then the critical negated-restatement nuance, then the return shape, then the call-timing guidance. There is no filler or redundancy, and the most important operational detail is front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a read-only, idempotent check tool with no output schema, the description is complete: it names the input concept, the return envelope, the edge-case behavior, and the relationship to record_decision. An agent has everything it needs to invoke the tool correctly and interpret the result at a practical level.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already fully documents decision_text and file_path, including file_path's preference for same-file hits. The description reinforces the meaning of decision_text by calling it a 'proposed decision' and relating it to record_decision, but it does not add new parameter-level detail beyond what the schema provides. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: checking whether a proposed decision contradicts or duplicates existing decisions. It also names the concrete behavioral rule for negated restatements, which sharply distinguishes this from sibling tools like record_decision. The return statuses are listed, leaving no ambiguity about what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says to call this BEFORE record_decision, and even explains that record_decision internally runs the same check and surfaces _conflict_warning unless force=true. This gives the agent a clear procedural rule and a direct comparison to the alternative, so there is no guessing about when this tool is appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sachinshelke/codevira'

If you have feedback or need assistance with the MCP directory API, please join our Discord server