Skip to main content
Glama

Entity Profile

entity_profile
Read-onlyIdempotent

"Tell me about X" / "research Acme" / "brief me on Tesla" / "what does Apple do" / "company profile for Microsoft" / "give me the rundown on NVDA" / "everything you know about $TICKER" — full cross-source profile of a US public company in ONE parallel call. ALWAYS PREFER over chaining single-pack SEC/XBRL/news lookups when the user asks for a holistic view. Fans out across SEC EDGAR, XBRL, USPTO patents, federal contracts (USAspending), FDA-licensed biologics (Purple Book), H-1B hiring (DOL LCA), news and GLEIF, and returns: cik + company_name (+ resolved_from/resolved_to when value was a name); recent_filings (up to 5 with pipeworx://edgar/company/{cik}/filings/{accession} URIs); fundamentals (LATEST 10-K Revenues + NetIncomeLoss + Cash, sorted period_end DESC); patents (USPTO PatentsView API sunset May 2025 — soft-fails until reactivated); federal_contracts (USAspending awards where the company is the recipient); fda_products (FDA-licensed biologics — vaccines, cell/gene therapies — from the Purple Book; a company with only small-molecule/generic drugs will show none here, that is expected, not a failure); hiring (H-1B sponsorship volume + salary range from DOL LCA filings); recent news mentions via GDELT→GNews fallback; LEI via GLEIF. sources_used / sources_failed say which of these actually returned data for THIS company — an empty section is a real "no data", not a bug. Pass a ticker ("AAPL"), zero-padded CIK ("0000320193"), OR a company name ("Moderna") — names now resolve via SEC EDGAR's company-name match; a private company (no CIK/ticker) returns resolved:false with an explicit notes line, not a bare failure. type accepts "company" or "ticker" interchangeably — both take the same value shapes above.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeYes"company" or "ticker" — both are accepted and behave identically; `value` can be a ticker, CIK, or company name either way. person/place coming soon.
valueYesTicker (e.g., "AAPL"), zero-padded CIK (e.g., "0000320193"), or company name (e.g., "Moderna") — names resolve via SEC EDGAR company-name match.

TDQS

A4.6/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds a wealth of behavioral context beyond annotations: the fan-out across multiple sources, the soft-fail behavior for patents (USPTO API sunset), the specific return structure (cik, resolved_from/resolved_to, recent_filings URIs), the fact that empty sections are expected not failures, and the naming resolution behavior. It also discloses a limitation (private companies). The only minor gap is not explicitly stating response format/pagination, but for a data-fetch tool this is well-covered. Would be a 5 except it stumbles slightly on clearly communicating the 'news via GDELT→GNews fallback' with a single arrow, which is somewhat terse.

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 dense and information-packed, with a clear structure: triggers first, then the approach directive, then a bulleted enumeration of sources and return fields, then parameter guidance. It is front-loaded with the most critical usage direction ('ALWAYS PREFER'). However, it is quite long, and some sentences run on (the return-list sentence is a wall of text). It earns its length because every clause adds useful information, but it could be slightly more scannable with line breaks or headers. It's not bloated with fluff, so a 4 rather than 3, but not a 5 due to the run-on structure.

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 high complexity (multiple data sources, multiple return sections, edge cases, fallbacks), the description is remarkably complete. It covers: input formats, name resolution, private-company behavior, expected empty sections, source failure semantics, and explicit examples of returns like resolved_from/to. The output schema is absent, so the description must convey the return structure, which it does thoroughly (cik, company_name, recent_filings URIs, fundamentals with sort order, etc.). No critical information that an agent needs to call and interpret correctly is missing. The description even explains why a section might be empty (e.g., small-molecule-only companies showing no fda_products). This is a model of completeness for a complex data-fetch tool.

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 description coverage is 100%: both `type` and `value` are fully described in the schema itself, including the note about interchangeability. The description reinforces this by providing concrete examples ('AAPL', '0000320193', 'Moderna') and clarifying that names resolve via SEC EDGAR. It adds the exact accepted shapes and behavior when a private company is given. This exceeds the baseline 3 because the description provides examples and edge-case behavior not in the schema, but since the schema already covers the basic semantics, a 4 is appropriate rather than 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 is exceptionally specific: it lists multiple natural-language triggers, names the primary resource (full cross-source profile of a US public company), and distinguishes itself from alternatives by explicitly stating 'ALWAYS PREFER over chaining single-pack SEC/XBRL/news lookups when the user asks for a holistic view.' It clearly differentiates from siblings like deep_research, compare_entities, and resolve_entity by defining its scope. The verb 'profile' plus the enumerated data sources makes purpose unambiguous.

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 provides explicit when-to-use guidance with imperative language ('ALWAYS PREFER') and specific examples of triggering queries. It names the alternative approach (chaining single-pack lookups) and the condition for preferring this tool. It also covers edge cases: private companies return resolved:false with notes, and expected empty sections are explained. The note about 'sources_failed' being real no-data vs bug provides critical interpretational guidance.

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.7/5.0
Disambiguation2/5

Multiple tools overlap heavily: ask_pipeworx, ask_pipeworx_beta (explicitly identical when no routing candidate is active), ask_pipeworx_grounded, deep_research, and validate_claim all answer factual questions through the same underlying router. The prediction-market cluster (polymarket_edges, polymarket_arbitrage, bet_research, polymarket_edge_tracker, polymarket_fill_risk, polymarket_kalshi_spread) has substantial purpose overlap that requires reading long descriptions to disambiguate.

Naming Consistency3/5

Mostly snake_case, and the pipeworx_/polymarket_/ask_ prefixes give some structure, but conventions are mixed: some tools are verb_noun (list_municipalities, get_data), some are bare verbs (forget, recall, remember), and some are noun phrases (entity_profile, deep_research, bet_research, recent_changes). The inconsistent prefixing across meta-tools (ask_, deep_, entity_, scan_, validate_) makes the surface feel less predictable than it could be.

Tool Count2/5

35 tools is on the heavy side, but the bigger problem is that the server name 'Kolada Se' matches only 4 tools (search_kpi, list_municipalities, list_org_units, get_data), while the other 31 tools belong to unrelated domains (Pipeworx data routing, prediction markets, memory, subscriptions, AI visibility). This is a severe scope mismatch that makes the count feel bloated and unfocused.

Completeness3/5

For the Kolada domain named by the server, the surface is minimal: you can search KPIs, list municipalities, list org units, and fetch single-KPI data, but there is no multi-year bulk fetch, cross-municipality comparison, or unit-level data retrieval. The broader Pipeworx/prediction-market surface is fairly feature-complete, but it is not what the server name implies, so the set as a whole leaves the apparent domain thinly covered.