Skip to main content
Glama

ownership

Read-onlyIdempotent

Ownership of US filers: 13F institutional holdings and Schedule 13D / 13G (>5%) stakes. One tool, four modes:

  • "issuer" (default): who owns a US issuer. Requires company. Latest quarter's top 13F holders by USD value, plus large_holders (top 5 current 13D/13G holders by percent of class) when any are on file; pass quarters / since / until for a per-quarter trend (total value, holder count, top-10 concentration).

  • "manager": what a 13F manager holds. Requires manager_cik (e.g. "1067983" Berkshire Hathaway, "102909" Vanguard). Latest holdings by USD value, or a per-quarter book-value trend with quarters / since / until.

  • "pair": one manager's quarterly position history in one issuer (equity, put and call blocks). Requires manager_cik and company.

  • "beneficial": 13D / 13G filings for an issuer. Requires company. The latest filing per filer (amendments supersede), largest percent first; 13D rows carry a purpose excerpt (Item 4: activist intent).

Put / call positions are excluded from issuer and manager modes.

Args: period: Snapshot quarter-end YYYY-MM-DD (default latest; issuer / manager snapshots only). limit: Holders / holdings returned (default 25, max 200; snapshots and beneficial). quarters: Trend cap (newest first, default 8, or 40 with since / until; max 40); in pair mode, quarters back (default 8). since / until: YYYY-MM-DD bounds; switch issuer / manager to trend. In beneficial mode since keeps filers whose latest filing is on or after it.

Returns: issuer: {company_name, ticker, cik, period, holders[]} or {..., since, until, trend[]}. manager: {manager_cik, manager_name, period, holdings[]} or the trend shape. pair: {manager_cik, manager_name, company_name, ticker, history[]}. beneficial: {company_name, ticker, cik, holders[]}, each {filer_name, schedule, form_type, percent_of_class, shares, event_date, filing_date, purpose?, source_url}. No coverage: diagnostic.reason = "no_13f_data_yet" (13F) or "no_beneficial_ownership_data_yet" (13D/13G).

Chart: per the server "Charts" guidance (ranked bars for snapshots, a line for trends; source: SEC 13F filings + Clarifo); in ChatGPT call render_chart(source_tool="ownership", source_args=, output="python").

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "ownership"
  }
}

Input Schema

NameRequiredDescriptionDefault
modeNoissuer
limitNo
sinceNo
untilNo
periodNo
companyNo
quartersNo
manager_cikNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the supplied annotations (readOnly, idempotent, non-destructive), the description discloses non-obvious behavior: put/call positions are excluded from issuer and manager modes, beneficial mode dedupes to the latest filing per filer because amendments supersede, 13D rows include an Item 4 purpose excerpt, and empty results return diagnostic.reason codes. It also surfaces caps (limit max 200, quarters max 40) that matter for planning calls.

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 mode list is front-loaded and bulleted, and the Args section is terse and scannable. The Returns section is long and partly redundant given that an output schema exists, which costs some efficiency, but each block is clearly delimited and nothing reads as filler.

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?

For an eight-parameter, four-mode tool with no schema descriptions, this definition covers prerequisites, defaults, caps, exclusions, per-mode return shapes, empty-data diagnostics, and the render_chart follow-up with exact arguments. An agent has everything needed to choose a mode and construct a valid call.

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 description coverage is 0%, so the description carries the full burden and does: period is scoped to snapshot modes with YYYY-MM-DD format, limit has defaults and a max, quarters is explained per mode (trend cap vs. lookback in pair mode), since/until are described including their beneficial-mode special meaning, and company/manager_cik are tied to mode preconditions with CIK examples. Little is left ambiguous.

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 opening sentence names the exact resource and data sources (13F institutional holdings, Schedule 13D/13G >5% stakes) and states that one tool covers four modes. Each mode is then given a one-line question it answers ("who owns a US issuer", "what a 13F manager holds"), so an agent can tell this apart from insider or governance tools without opening the schema.

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?

Every mode carries an explicit prerequisite (company for issuer/beneficial, manager_cik for manager, both for pair) and the trend switch conditions via quarters/since/until, which is strong internal routing guidance. It does not state when to prefer a sibling such as insider_activity or governance over this tool, so sibling-level exclusion is left to inference.

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.