Skip to main content
Glama
SlothyAfk

finance-pulse

Search news statements

search_statements
Read-onlyIdempotent

Find sourced financial news statements newest first by ticker, sector, theme, sentiment, or time range to answer what news says about a company or topic.

Instructions

Search news statements, newest first. Use for "what is the news saying about X".

symbol: ticker or entity code, e.g. NVDA; comma-separate several (OR), no spaces inside a code. importance_min=high keeps only key facts. source_type=news leaves out speculative analysis and reddit. storyline_id: every statement of that storyline's topics; add symbol for only those naming its company. since/until: ISO-8601 times on the article's publication time, e.g. 2026-10-01T00:00:00Z. Each statement has its source, the article's headline and its topic. Pass next_cursor back as cursor for the next page (null means no more).

Input Schema

NameRequiredDescriptionDefault
limitNoHow many to return per call; use the cursor for more
sinceNoISO-8601 time, e.g. 2026-10-01T00:00:00Z
untilNoISO-8601 time, e.g. 2026-10-01T00:00:00Z
cursorNonext_cursor from the previous call, for the next page; keep every other argument the same
sectorNoGICS sector
symbolNoTicker or entity code, e.g. NVDA. Comma-separate several (OR).
theme_idNoTheme id from `themes` or `reference`
topic_idNoTopic (development) id, as returned in topic_id or topics[].id
sentimentNoOnly statements with this sentiment
source_typeNoOne of: news, speculative, reddit. news leaves out speculative analysis and reddit
storyline_idNoStoryline id, as returned by `storylines`, `get_symbol` or a topic's storylines
importance_minNoMinimum importance; high = key facts only

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed7 schema fields changedv0.2.1
    • changedInput schema / properties / cursor / description
      Previous value: -"next_cursor from the previous call, for the next page"New value: +"next_cursor from the previous call, for the next page; keep every other argument the same"
    • changedInput schema / properties / limit / description
      Previous value: -"How many to return, 1-100"New value: +"How many to return per call; use the cursor for more"
    • changedInput schema / properties / limit / maximum
      Previous value: -100New value: +50
    • changedInput schema / properties / source_type / anyOf
      Previous value: -[
      -  {
      -    "enum": [
      -      "news",
      -      "speculative",
      -      "reddit"
      -    ],
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedInput schema / properties / source_type / description
      Previous value: -"news leaves out speculative analysis and reddit"New value: +"One of: news, speculative, reddit. news leaves out speculative analysis and reddit"
    • addedInput schema / properties / storyline_id
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Storyline id, as returned by `storylines`, `get_symbol` or a topic's storylines",
      +  "title": "Storyline Id"
      +}
    • changedInput schema / properties / symbol / description
      Previous value: -"Ticker or entity code, e.g. NVDA. Comma-separate several (OR), up to 10."New value: +"Ticker or entity code, e.g. NVDA. Comma-separate several (OR)."
  2. First observedv0.1.0

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare the safe read-only, idempotent profile, so the description sensibly spends its space on behavior beyond safety: newest-first ordering, cursor-based pagination with next_cursor/cursor, and a summary of what each statement contains (source, headline, topic). It does not mention result-size limits or any auth/rate-limit context, but for a read-only search tool this is solid coverage.

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 purpose and use case are front-loaded in the first sentence, and the remaining lines are a compact parameter cheat-sheet. A few lines duplicate schema wording (source_type, importance_min) rather than adding new information, which is minor waste but not damaging.

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

Completeness5/5

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

Given 12 optional parameters, no output schema, and full schema descriptions, the description covers the non-obvious behaviors an agent needs: ordering, cursor pagination with the exact handoff mechanism, return-content shape, and the subtle storyline_id/symbol interaction. The remaining filters (sector, theme_id, topic_id, sentiment, limit) are fully described in the schema, so nothing critical is missing.

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%, so the baseline is 3; the description earns extra credit by adding meaning beyond the schema: 'no spaces inside a code' for symbol, the exact interaction between storyline_id and symbol ('add symbol for only those naming its company'), and the clarification that since/until apply to the article's publication time. Several other sentences merely restate schema text (source_type, importance_min), which keeps it from a 5.

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 opens with a specific verb and resource ('Search news statements') and adds an ordering guarantee ('newest first'), then anchors the purpose in a concrete use case ('what is the news saying about X'). That use-case framing implicitly distinguishes it from siblings like sentiment_series, trending, and the topic/storyline lookup tools.

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 a clear usage trigger and explains how specific filters change results (importance_min=high for key facts, source_type=news to exclude speculative/reddit, storyline_id combined with symbol to narrow to a company). It does not explicitly name when to use a sibling instead, so it stops short of a full when/when-not framework.

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