Skip to main content
Glama

Recent Changes

recent_changes
Read-onlyIdempotent

"What's new with X" / "latest on Y" / "what happened to Z this week / month / quarter" / "updates on Acme" / "news on Tesla recently" / "what's happening with Apple" — change feed for a company in the last N days/weeks/months in ONE parallel call. Fans out to SEC EDGAR (filings since since), GDELT→GNews fallback (news mentions in window — GDELT preferred, GNews when rate-limited or 5xx), USPTO (patents granted; PatentsView API sunset May 2025 so this soft-fails until reactivated). since accepts ISO date ("2026-04-01") or relative shorthand ("7d", "30d", "3m", "1y"). Returns structured changes[] grouped by source + total_changes count + pipeworx:// citation URIs. Use entity_profile instead when you want the static profile (filings + fundamentals + LEI + patents) regardless of window.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeYesEntity type. Only "company" supported today.
sinceYesWindow start — ISO date ("2026-04-01") or relative ("7d", "30d", "3m", "1y"). Use "30d" or "1m" for typical monitoring.
valueYesTicker (e.g., "AAPL") or zero-padded CIK (e.g., "0000320193").

Schema Changelog

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

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Despite annotations already marking readOnly/idempotent/destructive hints, the description adds rich behavioral detail: fan-out to multiple external APIs, GDELT→GNews fallback on rate-limit/5xx, PatentsView API sunset causing soft-fail, and return structure ('structured changes[] grouped by source + total_changes count + pipeworx:// citation URIs'). This goes well beyond what annotations provide.

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 information-dense yet well-structured: examples, core purpose, sources, parameter format, return format, and alternative usage. Every sentence earns its place, front-loading natural-language triggers. Despite its length, it avoids redundancy and flows logically.

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 three parameters, no output schema, and a complex multi-source aggregation tool, the description covers all essential context: sources, fallback behavior, failure modes, return shape, and alternative tools. Even the `since` parameter's accepted formats are explained. This is a complete description for selecting and invoking the tool.

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 description coverage is 100%, so baseline is 3. The description restates the `since` format (ISO date or relative) and `value` as ticker/CIK, but the schema already provides these details with examples. No new parameter semantics are added beyond the schema, so it neither improves nor degrades the 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 specific purpose: 'change feed for a company in the last N days/weeks/months'. It lists concrete sources (SEC EDGAR, GDELT→GNews, USPTO) and explicitly distinguishes itself from sibling tool entity_profile: 'Use entity_profile instead when you want the static profile'. This is a specific verb+resource with strong sibling differentiation.

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?

The description opens with natural-language queries ('What's new with X', 'latest on Y') to signal when to use it. It explicitly provides an alternative: 'Use entity_profile instead when you want the static profile... regardless of window.' This satisfies the when/when-not/alternatives criterion with clear context.

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
Disambiguation1/5

Many tools have overlapping purposes (e.g., ask_pipeworx, ask_pipeworx_beta, ask_pipeworx_grounded all route questions; polymarket_arbitrage, polymarket_edges, polymarket_edge_tracker all deal with prediction market edges). The inclusion of memory tools (remember, recall, forget) alongside research tools further blurs boundaries.

Naming Consistency2/5

Naming conventions are mixed: some tools use snake_case (ai_visibility_check), some use underscores with prefixes (ask_pipeworx, polymarket_arbitrage), and others are more generic (query_layer, layer_info). There is no consistent pattern across the set.

Tool Count2/5

With 34 tools, the set is overly large for a geospatial server; most tools are unrelated to ArcGIS Kansas (e.g., prediction market tools, general research tools). Only 3 tools (search_datasets, layer_info, query_layer) are pertinent, making the count excessive and unfocused.

Completeness1/5

The server claims to be an ArcGIS Kansas tool but provides only basic layer querying and dataset search. Missing essential GIS operations such as editing, spatial analysis, or advanced queries, making it severely incomplete for its stated purpose.