Skip to main content
Glama

Recent Alerts

recent_alerts
Read-onlyIdempotent

Pull fired events from your subscription feed. Returns the most recent alerts the evaluator has written to your persisted feed — each carries source, citation_uri (pipeworx:// when available), and the raw event payload. Filter by type (e.g. "sec_8k") and/or since (ISO timestamp). Set mark_read:true to flag returned events read so the next call only shows newer ones. Polls work fine; the same feed is also at GET registry.pipeworx.io/alerts.json for scripts and dashboards.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeNoOptional — filter to one subscription type.
limitNoMax events to return (1-200, default 50).
sinceNoOptional ISO timestamp — return events fired_at >= this time.
mark_readNoFlag the returned events read in the same call (default false).
unread_onlyNoReturn only events where read_at is null (default false).

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. First observed

TDQS

A3.8/5.0
Behavior1/5

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

Description contradicts annotations. Annotations declare readOnlyHint: true and idempotentHint: true, but the description states 'Set mark_read:true to flag returned events read so the next call only shows newer ones,' which is a state-changing, non-idempotent operation. This is a direct contradiction, so the score must be 1.

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

Conciseness5/5

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

The description is three sentences, front-loaded with the core action, then details return fields, filtering, and mark_read semantics. Every sentence adds value with no redundancy or 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 tool with no output schema, the description explains return fields (source, citation_uri, raw payload), filtering options, mark_read behavior, and even alternative access. It lacks error/edge-case details, but overall it is sufficiently complete for a read-like tool. The annotation contradiction is covered elsewhere.

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% with per-parameter descriptions. The description adds extra meaning by explaining mark_read's effect ('so the next call only shows newer ones') and framing type/since as combinable filters with an example. This goes beyond the schema's basic descriptions, justifying a score above baseline.

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 clearly states the tool's purpose: 'Pull fired events from your subscription feed.' It specifies the resource (alerts on the persisted feed) and the return content (source, citation_uri, raw event payload), distinguishing it from siblings like list_subscriptions or recent_changes.

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 provides useful context: filtering by type and since, marking events read, and notes that polling works fine. It even mentions an alternative access method (the HTTP feed for scripts/dashboards). However, it does not explicitly state when to prefer this tool over siblings or when not to use it, so it falls short of a 5.

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.

TDQS

A3.5/5.0
Disambiguation2/5

Several tools have overlapping purposes, e.g., multiple 'ask' tools (ask_pipeworx, ask_pipeworx_grounded, deep_research) and multiple 'compare' tools (compare_entities, scan_competitor_ai_presence). Descriptions are verbose but often don't clearly distinguish when to use each, causing confusion.

Naming Consistency1/5

Naming is highly inconsistent: snake_case (ai_visibility_check), camelCase (polymarket_fill_risk), and arbitrary prefixes (scan_, generate_, etc.). No consistent verb_noun pattern; e.g., 'query_layer' vs 'search_datasets' vs 'layer_info' all involve data retrieval but use different patterns.

Tool Count2/5

33 tools is excessive for a server purportedly focused on ArcGIS Carlsbad. Many tools are unrelated (e.g., polymarket betting, npm package scanning). The core ArcGIS functionality could be covered by 3-5 tools, but the server is bloated with Pipeworx utilities.

Completeness3/5

The ArcGIS portion lacks update/delete capabilities and is limited to querying. The Pipeworx tools cover a broad range of data sources but introduce many dependencies and meta-tools, creating a cluttered surface with dead ends (e.g., tools requiring paid accounts without fallback).