Skip to main content
Glama

News Radar

alphai_radar
Read-onlyIdempotent

Rank news activity across the market or your saved AlphAI watchlist. Returns total story counts, model counts versus market-adjusted expectations, news tone and linked supporting headlines. Default: 20 tickers, 24h window, highest activity first. Use sentiment=negative or sort=sentiment_change with order=asc to find deteriorating news tone. Exact tickers intersect the selected scope; no alias expansion. Plans change added delay: Free 60 minutes, Basic 15 minutes, Pro none. Read as_of and freshness before describing recency; historical_preview means a fixed historical dataset, never a live reading. Only tickers with news in the chosen window appear. Missing metrics are null with a reason, not neutral. Scores describe observed news, not price forecasts or confirmed alerts. Follow next_cursor with identical filters and limit to keep the same snapshot; restart without cursor after snapshot_expired. Open a news evidence uid with alphai_article for the full enriched article. event_context adds separate issuer-CIK observations: 7-day 8-K/selected earnings 6-K filings and 30-day open-market insider clusters by latest SEC filing time, with sec_url links. For filings with has_article=true, open news_uid with alphai_article; news_title and news_published build its AlphAI URL. Article availability is frozen at the context cutoff; older snapshots default to false with null title/publication metadata. Read top-level event_context status/as_of and each row's event_context status before using counts. Null means unavailable, not zero; available does not certify complete SEC coverage. Context follows the same snapshot delay and cursors. It does not change news scores or row eligibility.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
sortNoRanking metric; stories means total stories; sentiment_change is current minus prior tone.score
limitNoRows per page, default 20; not a ticker entitlement.
min_zNoOptional minimum descriptive activity score.
orderNoSort direction; null metrics always last.desc
scopeNoMarket discovery or the authenticated caller's saved watchlist.market
cursorNoOpaque next_cursor or previous_cursor, unchanged.
marketNoMarket filter within the selected scope.all
windowNoNews window ending at as_of.24h
tickersNoOptional comma-separated exact symbols, e.g. AAPL,MSFT,BTC-USD; no tier ticker cap.
sentimentNoPositive >0.15, negative <−0.15, mixed within those bounds. Null matches only all.all

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
as_ofYes
totalYes
accessYes
offsetYes
windowYes
resultsYes
freshnessYes
limitationsYes
next_cursorYes
snapshot_idYes
event_contextNo
point_in_timeYes
research_onlyYes
previous_cursorYes
watchlist_coverageYes
methodology_versionYes
preview_reference_atYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / properties / results / items / properties / event_context / anyOf
      Previous value: -[
      -  {
      -    "properties": {
      -      "cik": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "cluster_buys": {
      -        "default": [],
      -        "items": {
      -          "properties": {
      -            "buyers": {
      -              "type": "integer"
      -            },
      -            "evidence": {
      -              "items": {
      -                "properties": {
      -                  "accession_number": {
      -                    "type": "string"
      -                  },
      -                  "filed_at": {
      -                    "format": "date-time",
      -                    "type": "string"
      -                  },
      -                  "sec_url": {
      -                    "type": "string"
      -                  }
      -                },
      -                "required": [
      -                  "accession_number",
      -                  "filed_at",
      -                  "sec_url"
      -                ],
      -                "type": "object"
      -              },
      -              "type": "array"
      -            },
      -            "evidence_truncated": {
      -              "type": "boolean"
      -            },
      -            "filings_count": {
      -              "type": "integer"
      -            },
      -            "known_at": {
      -              "format": "date-time",
      -              "type": "string"
      -            },
      -            "officer_director_buyers": {
      -              "type": "integer"
      -            },
      -            "pattern": {
      -              "const": "open_market",
      -              "default": "open_market",
      -              "type": "string"
      -            },
      -            "window_end": {
      -              "format": "date",
      -              "type": "string"
      -            },
      -            "window_start": {
      -              "format": "date",
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "window_start",
      -            "window_end",
      -            "known_at",
      -            "buyers",
      -            "officer_director_buyers",
      -            "filings_count",
      -            "evidence",
      -            "evidence_truncated"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "cluster_buys_count": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "filings": {
      -        "default": [],
      -        "items": {
      -          "properties": {
      -            "accession_number": {
      -              "type": "string"
      -            },
      -            "event_date": {
      -              "anyOf": [
      -                {
      -                  "format": "date",
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "filed_at": {
      -              "format": "date-time",
      -              "type": "string"
      -            },
      -            "form": {
      -              "enum": [
      -                "8-K",
      -                "6-K"
      -              ],
      -              "type": "string"
      -            },
      -            "items": {
      -              "default": [],
      -              "items": {
      -                "type": "string"
      -              },
      -              "type": "array"
      -            },
      -            "kind": {
      -              "anyOf": [
      -                {
      -                  "const": "earnings_release",
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "news_uid": {
      -              "type": "string"
      -            },
      -            "observed_at": {
      -              "format": "date-time",
      -              "type": "string"
      -            },
      -            "period_label": {
      -              "anyOf": [
      -                {
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "primary_item": {
      -              "anyOf": [
      -                {
      -                  "type": "string"
      -                },
      -                {
      -                  "type": "null"
      -                }
      -              ],
      -              "default": null
      -            },
      -            "sec_url": {
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "form",
      -            "accession_number",
      -            "filed_at",
      -            "observed_at",
      -            "sec_url",
      -            "news_uid"
      -          ],
      -          "type": "object"
      -        },
      -        "type": "array"
      -      },
      -      "filings_count": {
      -        "anyOf": [
      -          {
      -            "type": "integer"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "reason": {
      -        "anyOf": [
      -          {
      -            "enum": [
      -              "non_sec_symbol",
      -              "unknown_symbol",
      -              "missing_cik",
      -              "issuer_changed"
      -            ],
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ],
      -        "default": null
      -      },
      -      "status": {
      -        "enum": [
      -          "available",
      -          "unsupported",
      -          "unavailable"
      -        ],
      -        "type": "string"
      -      },
      -      "ticker": {
      -        "type": "string"
      -      }
      -    },
      -    "required": [
      -      "ticker",
      -      "cik",
      -      "status"
      -    ],
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "properties": {
      +      "cik": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "cluster_buys": {
      +        "default": [],
      +        "items": {
      +          "properties": {
      +            "buyers": {
      +              "type": "integer"
      +            },
      +            "evidence": {
      +              "items": {
      +                "properties": {
      +                  "accession_number": {
      +                    "type": "string"
      +                  },
      +                  "filed_at": {
      +                    "format": "date-time",
      +                    "type": "string"
      +                  },
      +                  "sec_url": {
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "accession_number",
      +                  "filed_at",
      +                  "sec_url"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "evidence_truncated": {
      +              "type": "boolean"
      +            },
      +            "filings_count": {
      +              "type": "integer"
      +            },
      +            "known_at": {
      +              "format": "date-time",
      +              "type": "string"
      +            },
      +            "officer_director_buyers": {
      +              "type": "integer"
      +            },
      +            "pattern": {
      +              "const": "open_market",
      +              "default": "open_market",
      +              "type": "string"
      +            },
      +            "window_end": {
      +              "format": "date",
      +              "type": "string"
      +            },
      +            "window_start": {
      +              "format": "date",
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "window_start",
      +            "window_end",
      +            "known_at",
      +            "buyers",
      +            "officer_director_buyers",
      +            "filings_count",
      +            "evidence",
      +            "evidence_truncated"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "cluster_buys_count": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      },
      +      "filings": {
      +        "default": [],
      +        "items": {
      +          "properties": {
      +            "accession_number": {
      +              "type": "string"
      +            },
      +            "event_date": {
      +              "anyOf": [
      +                {
      +                  "format": "date",
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "filed_at": {
      +              "format": "date-time",
      +              "type": "string"
      +            },
      +            "form": {
      +              "enum": [
      +                "8-K",
      +                "6-K"
      +              ],
      +              "type": "string"
      +            },
      +            "has_article": {
      +              "default": false,
      +              "description": "An enriched article existed before the context cutoff. False on older snapshots without metadata.",
      +              "type": "boolean"
      +            },
      +            "items": {
      +              "default": [],
      +              "items": {
      +                "type": "string"
      +              },
      +              "type": "array"
      +            },
      +            "kind": {
      +              "anyOf": [
      +                {
      +                  "const": "earnings_release",
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "news_published": {
      +              "anyOf": [
      +                {
      +                  "format": "date-time",
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null,
      +              "description": "Article publication time for its AlphAI URL."
      +            },
      +            "news_title": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null,
      +              "description": "Article title frozen at the context cutoff."
      +            },
      +            "news_uid": {
      +              "type": "string"
      +            },
      +            "observed_at": {
      +              "format": "date-time",
      +              "type": "string"
      +            },
      +            "period_label": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "primary_item": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ],
      +              "default": null
      +            },
      +            "sec_url": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "form",
      +            "accession_number",
      +            "filed_at",
      +            "observed_at",
      +            "sec_url",
      +            "news_uid"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "filings_count": {
      +        "anyOf": [
      +          {
      +            "type": "integer"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      },
      +      "reason": {
      +        "anyOf": [
      +          {
      +            "enum": [
      +              "non_sec_symbol",
      +              "unknown_symbol",
      +              "missing_cik",
      +              "issuer_changed"
      +            ],
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ],
      +        "default": null
      +      },
      +      "status": {
      +        "enum": [
      +          "available",
      +          "unsupported",
      +          "unavailable"
      +        ],
      +        "type": "string"
      +      },
      +      "ticker": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "ticker",
      +      "cik",
      +      "status"
      +    ],
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  2. Changed2 schema fields changed
    • addedOutput schema / properties / event_context
      Added value: +{
      +  "properties": {
      +    "age_seconds": {
      +      "anyOf": [
      +        {
      +          "type": "integer"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "as_of": {
      +      "anyOf": [
      +        {
      +          "format": "date-time",
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "cluster_lookback_days": {
      +      "anyOf": [
      +        {
      +          "type": "integer"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "filings_lookback_days": {
      +      "anyOf": [
      +        {
      +          "type": "integer"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "generated_at": {
      +      "anyOf": [
      +        {
      +          "format": "date-time",
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": null
      +    },
      +    "identity_scope": {
      +      "const": "issuer_cik",
      +      "default": "issuer_cik",
      +      "type": "string"
      +    },
      +    "max_age_seconds": {
      +      "const": 300,
      +      "default": 300,
      +      "type": "integer"
      +    },
      +    "point_in_time": {
      +      "const": false,
      +      "default": false,
      +      "type": "boolean"
      +    },
      +    "reason": {
      +      "anyOf": [
      +        {
      +          "enum": [
      +            "disabled",
      +            "missing",
      +            "stale",
      +            "future",
      +            "invalid",
      +            "read_failed"
      +          ],
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ],
      +      "default": "missing"
      +    },
      +    "status": {
      +      "default": "unavailable",
      +      "enum": [
      +        "available",
      +        "unavailable"
      +      ],
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / properties / results / items / properties / event_context
      Added value: +{
      +  "anyOf": [
      +    {
      +      "properties": {
      +        "cik": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "cluster_buys": {
      +          "default": [],
      +          "items": {
      +            "properties": {
      +              "buyers": {
      +                "type": "integer"
      +              },
      +              "evidence": {
      +                "items": {
      +                  "properties": {
      +                    "accession_number": {
      +                      "type": "string"
      +                    },
      +                    "filed_at": {
      +                      "format": "date-time",
      +                      "type": "string"
      +                    },
      +                    "sec_url": {
      +                      "type": "string"
      +                    }
      +                  },
      +                  "required": [
      +                    "accession_number",
      +                    "filed_at",
      +                    "sec_url"
      +                  ],
      +                  "type": "object"
      +                },
      +                "type": "array"
      +              },
      +              "evidence_truncated": {
      +                "type": "boolean"
      +              },
      +              "filings_count": {
      +                "type": "integer"
      +              },
      +              "known_at": {
      +                "format": "date-time",
      +                "type": "string"
      +              },
      +              "officer_director_buyers": {
      +                "type": "integer"
      +              },
      +              "pattern": {
      +                "const": "open_market",
      +                "default": "open_market",
      +                "type": "string"
      +              },
      +              "window_end": {
      +                "format": "date",
      +                "type": "string"
      +              },
      +              "window_start": {
      +                "format": "date",
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "window_start",
      +              "window_end",
      +              "known_at",
      +              "buyers",
      +              "officer_director_buyers",
      +              "filings_count",
      +              "evidence",
      +              "evidence_truncated"
      +            ],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "cluster_buys_count": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null
      +        },
      +        "filings": {
      +          "default": [],
      +          "items": {
      +            "properties": {
      +              "accession_number": {
      +                "type": "string"
      +              },
      +              "event_date": {
      +                "anyOf": [
      +                  {
      +                    "format": "date",
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ],
      +                "default": null
      +              },
      +              "filed_at": {
      +                "format": "date-time",
      +                "type": "string"
      +              },
      +              "form": {
      +                "enum": [
      +                  "8-K",
      +                  "6-K"
      +                ],
      +                "type": "string"
      +              },
      +              "items": {
      +                "default": [],
      +                "items": {
      +                  "type": "string"
      +                },
      +                "type": "array"
      +              },
      +              "kind": {
      +                "anyOf": [
      +                  {
      +                    "const": "earnings_release",
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ],
      +                "default": null
      +              },
      +              "news_uid": {
      +                "type": "string"
      +              },
      +              "observed_at": {
      +                "format": "date-time",
      +                "type": "string"
      +              },
      +              "period_label": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ],
      +                "default": null
      +              },
      +              "primary_item": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ],
      +                "default": null
      +              },
      +              "sec_url": {
      +                "type": "string"
      +              }
      +            },
      +            "required": [
      +              "form",
      +              "accession_number",
      +              "filed_at",
      +              "observed_at",
      +              "sec_url",
      +              "news_uid"
      +            ],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "filings_count": {
      +          "anyOf": [
      +            {
      +              "type": "integer"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null
      +        },
      +        "reason": {
      +          "anyOf": [
      +            {
      +              "enum": [
      +                "non_sec_symbol",
      +                "unknown_symbol",
      +                "missing_cik",
      +                "issuer_changed"
      +              ],
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "default": null
      +        },
      +        "status": {
      +          "enum": [
      +            "available",
      +            "unsupported",
      +            "unavailable"
      +          ],
      +          "type": "string"
      +        },
      +        "ticker": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "ticker",
      +        "cik",
      +        "status"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null
      +}
  3. Added

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the safety profile is covered. The description adds substantial non-obvious behavior: plan-based delay (Free 60m, Basic 15m, Pro none), as_of/freshness caveats, historical_preview semantics, null-means-unavailable reasoning, exact-ticker intersection without alias expansion, and snapshot cursor requirements. This goes far beyond the annotations and leaves no hidden behavior unaddressed.

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 long, but every sentence contributes essential operational detail for a complex tool. It is front-loaded with the core ranking function and return contents before diving into caveats. Some clauses are dense and could be broken up (e.g., the delay sentence and cursor sentence), but there is no filler or redundancy, so the length is justified.

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 the tool's complexity—10 parameters, cursor pagination, plan-based delays, event_context sub-observations, and snapshot semantics—the description is remarkably complete. An output schema exists, so return values need not be re-explained. The description covers scoping, ordering, filtering, pagination, freshness, null semantics, article linking, and event_context status handling, leaving no critical operational aspect unstated.

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 schema already documents every parameter including defaults, enums, and ranges. The description adds meaningful semantics beyond the schema: exact tickers intersect the selected scope with no alias expansion, cursor must be reused with identical filters to keep the same snapshot, and the sentiment parameter is tied to a concrete use case for finding deteriorating tone. This raises it above baseline without duplicating schema details.

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: 'Rank news activity across the market or your saved AlphAI watchlist.' It lists concrete returned data (story counts, model counts versus market-adjusted expectations, tone, linked headlines), which makes the tool's function unmistakable. The 'Radar' title is generic, but the description fully disambiguates the tool from a plain search or article fetcher.

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 concrete operational guidance: use sentiment=negative or sort=sentiment_change with order=asc to find deteriorating tone, and open a news evidence uid with alphai_article for full articles. It also explains defaults and cursor restriction rules. However, it does not explicitly contrast this tool with siblings like alphai_news_search or alphai_ticker_news, so the 'when not to use' side is only partially covered.

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.