Skip to main content
Glama

Lattice: CVE, MITRE ATT&CK and detection graph for security agents

graph_answer

The same answer the Lattice Analyst page gives for ONE CVE: the verdict, the facts behind it (CISA listing and dates, ransomware use as recorded, score, product, fixed versions) and the graph ids it rests on. Written in code from the graph, no model. One exact CVE id per call; no list, search or question text. Works without a key for one exact id, on the small keyless allowance; a key allows more. With a key it also runs one analyst recipe (fields recipe and text, for example recipe alert with a pasted alert) and returns that recipe's verdict, body and sources; the recipe form is not keyless.

Input Schema

NameRequiredDescriptionDefault
cveNoA CVE id, for example CVE-2021-44228.
textNoKeyed form: the text for the recipe (a pasted alert, an email, a scan result).
recipeNoKeyed form: a recipe id such as alert, email, scan or briefing; send it with text, without cve.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changed
    • addedInput schema / oneOf
      Added value: +[
      +  {
      +    "required": [
      +      "cve"
      +    ]
      +  },
      +  {
      +    "required": [
      +      "recipe",
      +      "text"
      +    ]
      +  }
      +]
    • addedInput schema / properties / recipe
      Added value: +{
      +  "description": "Keyed form: a recipe id such as alert, email, scan or briefing; send it with text, without cve.",
      +  "type": "string"
      +}
    • addedInput schema / properties / text
      Added value: +{
      +  "description": "Keyed form: the text for the recipe (a pasted alert, an email, a scan result).",
      +  "type": "string"
      +}
    • removedInput schema / required
      Removed value: -[
      -  "cve"
      -]
  2. Added

TDQS

A4.3/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and does well: it discloses that output is computed in code from the graph with no model, explains keyless versus keyed availability, and notes that the recipe form is not keyless. It is less specific about exact keyless allowance limits and error behavior, but the important behavioral context is present.

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

Conciseness4/5

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

The description is front-loaded with purpose and return contents, then moves to keying and recipe constraints. It is dense but largely earns its length; a few phrases such as 'fields recipe and text' are slightly awkward, preventing a top conciseness score.

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?

There is no output schema, so the description must explain return values, and it does: verdict, facts such as CISA listing, ransomware use, score, product, fixed versions, graph ids, and keyed recipe verdict/body/sources. It is complete enough for invocation, though exact output structure and failure modes are not detailed.

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 already 100%, so the schema documents cve, text, and recipe. The description adds useful semantic constraints beyond the schema: cve must be one exact CVE id and must not be a list, search, or question, while recipe and text are the keyed recipe form and the recipe form is not keyless.

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 resource and output: the same answer the Lattice Analyst page gives for ONE CVE, including verdict, supporting facts, and graph ids. It also clearly distinguishes the exact-CVE form from list/search/question-text use and describes the keyed recipe form.

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?

It gives strong usage constraints: one exact CVE id per call, no list/search/question text, keyless use for one exact id, and keyed use for one analyst recipe with recipe and text. It does not explicitly name sibling alternatives for search or list-style questions, so the routing guidance is strong but not fully explicit.

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