Skip to main content
Glama

castov_detect_id

Read-onlyIdempotent

Detect whether an ID is MongoDB ObjectId, UUIDv7, ULID, or Snowflake, and decode its embedded creation timestamp for tracing data origins.

Instructions

Detect identifier format and decode embedded creation timestamp from MongoDB ObjectId, UUIDv7, ULID, or Twitter/Discord Snowflake ID.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesIdentifier string (UUIDv7, ULID, 24-hex ObjectId, or numeric Snowflake ID)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv1.3.4
    • addedInput schema / additionalProperties
      Added value: +false
    • changedInput schema / properties / id / description
      Previous value: -"Identifier string"New value: +"Identifier string (UUIDv7, ULID, 24-hex ObjectId, or numeric Snowflake ID)"
  2. First observedv1.3.3

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, openWorldHint=false, and non-destructive behavior, so the safety profile is clear. The description adds the supported format list and the fact that it decodes an embedded creation timestamp, which is useful behavioral context, but it does not discuss error handling or invalid-ID 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?

A single, front-loaded sentence that names the action and all supported formats; there is no filler or repetition. It earns its place efficiently.

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

Completeness4/5

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

For a one-parameter, read-only detection tool with full schema coverage and rich annotations, the description covers the essential input domain and output intent. It could better clarify the response shape (no output schema exists) and invalid input handling, but it is largely complete for the tool's complexity.

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%, and the schema already documents the single 'id' parameter's expected types. The description adds only a minor detail ('Twitter/Discord' qualifier on Snowflake) beyond the schema's 'numeric Snowflake ID', so the baseline score of 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?

States a specific verb ('Detect'/'decode') and resource ('identifier format'/'embedded creation timestamp'), and enumerates exact supported identifier types (MongoDB ObjectId, UUIDv7, ULID, Twitter/Discord Snowflake). This enumeration distinguishes it from sibling tools such as castov_timestamp and castov_jwt_decode.

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

Usage Guidelines3/5

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

The description implies usage whenever an agent needs to identify an ID's format or extract its creation time, but it offers no explicit when-to-use/when-not-to-use guidance and does not name alternatives such as castov_timestamp. It is adequate context but leaves routing to inference.

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