Skip to main content
Glama

Record deterministic TypeScript evidence

evidrift_record
Idempotent

Record evidence for a TypeScript symbol claim by resolving the installed npm dependency and creating a content-addressed receipt with the affected source file. Use it for dependency drift checks.

Instructions

Resolve an actually installed dependency and create a content-addressed Evidrift receipt. When affectedCodeLine points at an overloaded call, TypeScript selects the real call-site signature. The tool records evidence only; it never declares the receipt verified or the code correct.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
claimYesHuman claim explaining why this evidence matters.
symbolYesExported callable TypeScript symbol.
overloadNoOptional 1-based overload selector used only when recording an overloaded symbol.
parameterNoOptional parameter name that must exist.
packageNameYesInstalled npm dependency name.
projectRootNoRepository-relative directory containing the consuming package.json..
affectedCodeLineNoOptional 1-based affected source line.
affectedCodePathYesRepository-relative source file affected by the claim.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior4/5

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

Annotations alone indicate readOnlyHint=false, idempotentHint=true, destructiveHint=false. The description adds meaningful behavioral context: it 'records evidence only; never declares the receipt verified or the code correct,' clarifies that it resolves an actually installed dependency, and describes how overloaded calls are handled. This goes beyond the annotations and does not contradict them.

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 two sentences, compact and front-loaded with the main purpose. It packs key behavioral details without fluff. Every clause earns its place, making it highly efficient for an agent to parse.

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

Completeness3/5

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

Given the tool's complexity (8 params, no output schema) and the existence of a sibling, the description is reasonably complete on what the tool does but omits critical selection guidance. It does not mention when to use this instead of 'evidrift_record_json_pointer', nor does it specify the return value or failure modes (e.g., unresolved dependency). These gaps reduce completeness for an agent deciding between tools.

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

Parameters4/5

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

Schema coverage is 100% with each parameter described. The description adds extra semantics, particularly for 'affectedCodeLine' (explaining its importance in overload resolution) and the requirement that 'packageName' be an actually installed dependency. This adds value beyond the schema definitions.

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

Purpose4/5

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

The description clearly states the tool's primary action: resolving an installed dependency and creating a content-addressed Evidrift receipt. It also gives a specific behavior detail about overloaded call-site signature selection. However, it does not explicitly differentiate from its sibling tool 'evidrift_record_json_pointer', so it lacks that distinction to reach a 5.

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

Usage Guidelines2/5

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

The description provides no explicit guidance on when to use this tool versus the sibling 'evidrift_record_json_pointer'. It implies use for recording evidence from a code path, but offers no conditions, exclusions, or alternative tool references. This leaves the agent to infer appropriate usage.

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

Deploy Server

Other Tools