Skip to main content
Glama

Check that Daystruct capabilities fit together and fit your project

compat_check
Read-onlyIdempotent

Resolve Daystruct capabilities to exact versions that fit each other, or get the exact constraint that broke with suggested alternatives. Send the project manifest by default: project.runtime (the node or python version the project runs), project.platform, and the project's package-lock.json (or an installed name->version map) plus the dependency sections of package.json. That makes the answer project-checked rather than bundle-only. Never send source code or other files; only those fields are read and nothing is stored. The result's scope says what it covers (bundle-only, project-checked, project-verified). Its state is compatible, except when you pass bundle (for example security-scanners@latest-verified) instead of capabilities: then it is verified, because that exact set passed its integration suite, and the result names the run and the environment it ran in. Affected versions are refused and listed under advisoriesAvoided; a deprecated version is chosen only when nothing else fits and is named in notes. To reach project-verified, fetch the verify kit for the resolved members, show the user the report the script prints, send it only with the user's agreement (--send), and pass the returned report id as verifyReportId.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bundleNo
projectNo
capabilitiesNo
verifyReportIdNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / bundle
      Added value: +{
      +  "pattern": "^[a-z][a-z0-9-]{2,60}@(latest-verified|(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*))$",
      +  "type": "string"
      +}
    • removedInput schema / required
      Removed value: -[
      -  "capabilities"
      -]
  2. Added

TDQS

A4.4/5.0
Behavior5/5

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

With readOnlyHint=true, idempotentHint=true, and destructiveHint=false already in annotations, the description still adds substantial behavioral context: 'only those fields are read and nothing is stored', the meaning of the result scope values, the state being compatible versus verified depending on input type, refused affected versions under advisoriesAvoided, and deprecation fallback behavior named in notes. It also discloses the verify workflow's consent requirement, going well beyond the structured fields.

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

Conciseness3/5

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

The purpose is front-loaded, but the description is a long, dense wall of text with several run-on sentences and parenthetical asides packed into single sentences, e.g. 'Its state is compatible, except when you pass bundle (for example security-scanners@latest-verified) instead of capabilities: then it is verified...' While nearly every sentence carries information, the lack of structural breakouts (bullets or parameter grouping) hurts scannability for a tool this complex.

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 complex tool with 4 parameters, 0% schema description coverage, nested objects, and no output schema, the description covers the input contract (what to send, what not to send), the result semantics (scope, state, advisoriesAvoided, notes), and the full project-verified workflow. It does not fully describe the response shape beyond those named fields, but it is complete enough for an agent to invoke the tool and interpret the outcome correctly.

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 description coverage is 0%, so the description carries the full burden, and it covers all four parameters: project is explained field-by-field (runtime, platform, lockfile or installed map, dependency sections), bundle is given a concrete example (security-scanners@latest-verified), and verifyReportId is tied to the verify-kit workflow ('pass the returned report id as verifyReportId'). The capabilities id/range sub-fields are only implied, not spelled out, so it is strong but not exhaustive.

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 opening clause states a specific verb and outcome: 'Resolve Daystruct capabilities to exact versions that fit each other, or get the exact constraint that broke with suggested alternatives.' It distinguishes this tool from siblings by contrasting the capabilities input with the bundle input and by the result scopes (bundle-only, project-checked, project-verified), so an agent can tell it apart from resolve_daystruct_bundle or resolve_task_capabilities.

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

Usage Guidelines4/5

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

The description gives clear invocation context: send the project manifest by default, which shifts the answer from bundle-only to project-checked, and never send source code. It also routes the project-verified workflow: fetch the verify kit, show the report, send only with user agreement, and pass the report id. It does not explicitly name sibling tools or state 'use X instead when Y', so exclusion guidance is absent, but the context is clear enough for correct selection.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources