Skip to main content
Glama

Mallory

getReference

Look up a Mallory reference — a source document (article, report, advisory, blog post, or social post) that Mallory ingested and analyzed. Two modes: (1) pass reference with a UUID, url_hash, or a pasted Mallory reference URL to fetch that exact reference; (2) pass urlFilter with a substring of the source's web URL (or its slug) to resolve which reference Mallory has for an article when you only have its web address. Returns reference metadata (source, title/topic, published date, URL). To then pull the IOCs/observables Mallory extracted from a reference, call referenceObservables with the reference's UUID.

Input Schema

NameRequiredDescriptionDefault
limitNoMax references to return in urlFilter (search) mode. Ignored when looking up a single reference.
referenceNoA reference UUID, url_hash, or a pasted Mallory reference URL (e.g. 'https://app.mallory.ai/references/{uuid}'). Provide this OR urlFilter.
urlFilterNoA case-insensitive substring of the source's web URL (or article slug) to resolve the matching reference(s) when you don't have a UUID. Provide this OR reference.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

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 states the return contents (source, title/topic, published date, URL) and the dual-mode behavior. It stops short of stating empty/no-match behavior or confirming read-only semantics, which are minor but real gaps for a lookup tool.

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?

Front-loaded with the resource definition, then cleanly numbered modes, then return values and a next-step pointer. Slightly longer than strictly necessary since some parameter detail duplicates the schema, but well organized with no filler.

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 3-param, no-annotation, no-output-schema lookup, the description is nearly complete: it defines the resource, both modes, and the return shape. It omits empty-result behavior and pagination guidance for urlFilter mode, keeping it from a 5.

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 coverage is 100%, so the schema already documents all three parameters, including the 'provide this OR' relationship and limit semantics. The description's parameter prose largely restates the schema, adding only the mode framing, so a 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?

States a specific verb (look up) and resource (Mallory reference), and defines that resource precisely as a source document Mallory ingested and analyzed, with concrete examples (article, report, advisory). It is clearly distinguishable from siblings and names referenceObservables as the adjacent tool.

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?

Explicitly enumerates two modes and the condition that selects each: pass `reference` when you have a UUID/url_hash/pasted URL, or `urlFilter` when you only have a web address. It also routes to referenceObservables for the logical next step, leaving nothing to inference.

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