Skip to main content
Glama

Compare Entities

compare_entities
Read-onlyIdempotent

"Compare X and Y" / "X vs Y" / "X versus Y" / "which is bigger / better / larger / more profitable" / "rank these companies" / "head to head" — side-by-side comparison of 2–5 companies or drugs in ONE parallel call. ALWAYS PREFER over sequential single-pack lookups when comparing entities. type="company" pulls LATEST 10-K revenue + net income + cash + long-term debt from SEC EDGAR/XBRL (off-calendar fiscal years handled correctly — AAPL Sep, NVDA Jan, etc.). type="drug" pulls FAERS adverse-event counts, FDA approval counts, active trial counts. Results sorted by primary metric so "largest" / "most" / "biggest" reads off the top of the response. Returns paired data + pipeworx:// citation URIs per entity. Replaces 8–15 sequential lookups.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeYesEntity type: "company" or "drug".
valuesYesFor company: 2–5 tickers/CIKs (e.g., ["AAPL","MSFT"]). For drug: 2–5 names (e.g., ["ozempic","mounjaro"]).

TDQS

A5/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, destructiveHint. Description adds context on data sources (SEC EDGAR/XBRL for companies, FAERS/fda for drugs), handling of off-calendar fiscal years, sorting by primary metric, and citation URIs. No contradiction with annotations.

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?

Single dense paragraph with no wasted words. Every sentence adds value: usage examples, data source details, sorting info, citation URIs, and efficiency claim. Front-loaded with key phrases.

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 2 params, 100% schema coverage, and no output schema, description covers all needed aspects: purpose, usage, data retrieval, sorting, return format, and efficiency benefit. No gaps.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, but description adds crucial meaning: explains how 'type' determines data fetched, provides examples for 'values' (tickers/CIKs vs drug names), states min/max items, and clarifies sorting behavior. Enhances schema significantly.

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?

Description clearly states the tool performs side-by-side comparison of 2–5 companies or drugs in one call, with specific verb phrases ('Compare X and Y', 'rank these companies'). It distinguishes from sequential lookups and provides clear scope.

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 says 'ALWAYS PREFER over sequential single-pack lookups when comparing entities', giving clear when-to-use guidance. Provides example queries and implies alternatives (single entity lookups). No exclusions needed.

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

A4.1/5.0
Disambiguation3/5

Most tools have strong, detailed descriptions with explicit usage guidance, but a few clusters are genuinely ambiguous: ask_pipeworx_beta is currently an exact duplicate of ask_pipeworx, and the Polymarket tools (bet_research, polymarket_edges, polymarket_arbitrage, polymarket_edge_tracker) overlap heavily in purpose. The descriptions help differentiate them, but an agent could still easily select the wrong variant.

Naming Consistency4/5

All tool names are snake_case and most follow an imperative verb-first pattern such as resolve_entity, subscribe, or validate_claim. A few noun-style names like entity_profile, bet_research, and interaction_count deviate, but the consistent underscore style and clear prefixes like polymarket_ and pipeworx_ keep the set predictable.

Tool Count2/5

At 33 top-level tools, the surface is heavy, and several tools are near-duplicates or narrow variants of the same core capability. The broad scope explains some of the count, but the agent-facing API would be cleaner with fewer, more consolidated entry points.

Completeness5/5

The set provides strong lifecycle coverage for its main workflows: querying and grounding, deep research, entity resolution, company profiling, comparisons, Polymarket edge analysis with fill-risk checks, memory storage, and subscription management. There are no obvious dead ends that would prevent an agent from completing a typical task.