Server definition
- Hash
- sha256:df0a0dda8824353aab2ccfdac75c0b07a6591a6ec08b9f168241edd62b62f5ff
- What it is
- What a remote MCP server returned when asked what it offers: 24 tools
The blob, as servednamed by its sha256
{
"instructions": null,
"tools": [
{
"description": "Get detailed trading history of a specific U.S. Congress member. Shows individual trades with transaction types, amounts, and disclosure dates.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"default": 50,
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"member": {
"description": "Member slug (e.g. 'nancy-pelosi', 'dan-crenshaw'). Use get_congress_trades or search to find exact slugs.",
"type": "string"
},
"page": {
"default": 1,
"minimum": 1,
"type": "integer"
}
},
"required": [
"member"
],
"type": "object"
},
"name": "get_congress_member",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"member": {
"type": "string"
},
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/rows/items/properties/member_name"
},
"date_basis": {
"$ref": "#/properties/rows/items/properties/member_name"
},
"effective_period": {
"$ref": "#/properties/rows/items/properties/member_name"
},
"policy_version": {
"$ref": "#/properties/rows/items/properties/member_name"
},
"row_cap": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
]
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/rows/items/properties/member_name"
},
"window_start": {
"$ref": "#/properties/rows/items/properties/member_name"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"amount_range": {
"description": "The disclosed dollar RANGE (STOCK Act bands), not an exact amount",
"type": [
"string",
"null"
]
},
"asset_description": {
"$ref": "#/properties/rows/items/properties/member_name"
},
"chamber": {
"$ref": "#/properties/rows/items/properties/member_name"
},
"disclosure_date": {
"$ref": "#/properties/rows/items/properties/member_name"
},
"member_name": {
"type": [
"string",
"null"
]
},
"owner": {
"$ref": "#/properties/rows/items/properties/member_name"
},
"ticker": {
"$ref": "#/properties/rows/items/properties/member_name"
},
"transaction_date": {
"$ref": "#/properties/rows/items/properties/member_name"
},
"transaction_type": {
"$ref": "#/properties/rows/items/properties/member_name"
}
},
"required": [
"member_name",
"chamber",
"ticker",
"asset_description",
"transaction_type",
"transaction_date",
"disclosure_date",
"amount_range",
"owner"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"member",
"rows",
"paging",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Search individual stock trades disclosed by U.S. Congress members (House and Senate) under the STOCK Act. Returns a markdown table of transactions: member name, chamber, ticker, buy/sell type, transaction date, disclosure date (the gap between the two reveals reporting delay), dollar amount range, and owner (self/spouse/joint). Use for questions like 'What did Nancy Pelosi trade recently?', 'Which members bought NVDA?', or 'Show the largest Senate trades this quarter'. Filter by chamber, ticker, or member name; sort by traded value, trade count, or recency. For one member's profile and complete trading history, use get_congress_member instead.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"chamber": {
"default": "all",
"description": "Congressional chamber: house, senate, or all (default all)",
"enum": [
"house",
"senate",
"all"
],
"type": "string"
},
"limit": {
"default": 20,
"description": "Trades per page, 1-50 (default 20)",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"page": {
"default": 1,
"description": "Page number for pagination (default 1)",
"minimum": 1,
"type": "integer"
},
"search": {
"description": "Full or partial member name, e.g. 'Pelosi' or 'Dan Crenshaw'",
"maxLength": 200,
"type": "string"
},
"sort": {
"default": "volume",
"description": "Sort order — volume (most traded value), trades (most trades), recent (latest first)",
"enum": [
"volume",
"trades",
"recent"
],
"type": "string"
},
"ticker": {
"description": "Stock ticker symbol to filter by, e.g. NVDA or AAPL",
"maxLength": 200,
"type": "string"
}
},
"type": "object"
},
"name": "get_congress_trades",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"filters": {
"additionalProperties": false,
"properties": {
"chamber": {
"type": [
"string",
"null"
]
},
"search": {
"$ref": "#/properties/filters/properties/chamber"
},
"sort": {
"$ref": "#/properties/filters/properties/chamber"
},
"ticker": {
"$ref": "#/properties/filters/properties/chamber"
}
},
"required": [
"chamber",
"ticker",
"search",
"sort"
],
"type": "object"
},
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/filters/properties/chamber"
},
"date_basis": {
"$ref": "#/properties/filters/properties/chamber"
},
"effective_period": {
"$ref": "#/properties/filters/properties/chamber"
},
"policy_version": {
"$ref": "#/properties/filters/properties/chamber"
},
"row_cap": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
]
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/filters/properties/chamber"
},
"window_start": {
"$ref": "#/properties/filters/properties/chamber"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"amount_range": {
"description": "The disclosed dollar RANGE (STOCK Act bands), not an exact amount",
"type": [
"string",
"null"
]
},
"asset_description": {
"$ref": "#/properties/filters/properties/chamber"
},
"chamber": {
"$ref": "#/properties/filters/properties/chamber"
},
"disclosure_date": {
"$ref": "#/properties/filters/properties/chamber"
},
"member_name": {
"$ref": "#/properties/filters/properties/chamber"
},
"owner": {
"$ref": "#/properties/filters/properties/chamber"
},
"ticker": {
"$ref": "#/properties/filters/properties/chamber"
},
"transaction_date": {
"$ref": "#/properties/filters/properties/chamber"
},
"transaction_type": {
"$ref": "#/properties/filters/properties/chamber"
}
},
"required": [
"member_name",
"chamber",
"ticker",
"asset_description",
"transaction_type",
"transaction_date",
"disclosure_date",
"amount_range",
"owner"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"filters",
"rows",
"paging",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Get a market-wide summary of institutional exposure to US spot crypto ETFs (Bitcoin ETF complex: IBIT, FBTC, GBTC, etc.) from the latest quarter of SEC 13F filings. Returns total institutional USD held, quarter-over-quarter change, and a per-ETF breakdown (holders, USD, QoQ).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {},
"type": "object"
},
"name": "get_crypto_exposure",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"complex": {
"additionalProperties": false,
"properties": {
"products": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"qoq_change": {
"$ref": "#/properties/complex/properties/total_usd"
},
"total_usd": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
}
},
"required": [
"total_usd",
"qoq_change",
"products"
],
"type": "object"
},
"products": {
"items": {
"additionalProperties": false,
"properties": {
"holders": {
"$ref": "#/properties/complex/properties/products"
},
"prev_usd": {
"$ref": "#/properties/complex/properties/total_usd"
},
"product_name": {
"$ref": "#/properties/products/items/properties/product_ticker"
},
"product_ticker": {
"type": [
"string",
"null"
]
},
"qoq_change": {
"$ref": "#/properties/complex/properties/total_usd"
},
"sponsor": {
"$ref": "#/properties/products/items/properties/product_ticker"
},
"total_usd": {
"$ref": "#/properties/complex/properties/total_usd"
}
},
"required": [
"product_ticker",
"product_name",
"sponsor",
"holders",
"total_usd",
"prev_usd",
"qoq_change"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"complex",
"products"
],
"type": "object"
}
},
{
"description": "Get one institution's spot crypto-ETF holdings (Bitcoin ETF complex): its per-ETF positions in the latest filed quarter (shares, USD, QoQ change, action) plus its rank among all crypto-ETF holders. Use a CIK number (find it with get_crypto_holders or the search tool).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"institution": {
"description": "Institution CIK number (e.g. '1512857' for Brevan Howard) or name (e.g. 'BlackRock').",
"maxLength": 200,
"type": "string"
}
},
"required": [
"institution"
],
"type": "object"
},
"name": "get_crypto_holder",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"cik": {
"type": [
"string",
"null"
]
},
"institution": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"latest_quarter": {
"$ref": "#/properties/cik"
},
"name": {
"$ref": "#/properties/cik"
},
"portfolio_weight_pct": {
"$ref": "#/properties/institution/anyOf/0/properties/total_usd"
},
"qoq_change": {
"$ref": "#/properties/institution/anyOf/0/properties/total_usd"
},
"rank": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"total_holders": {
"$ref": "#/properties/institution/anyOf/0/properties/rank"
},
"total_usd": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
}
},
"required": [
"name",
"latest_quarter",
"total_usd",
"qoq_change",
"rank",
"total_holders",
"portfolio_weight_pct"
],
"type": "object"
},
{
"type": "null"
}
]
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/cik"
},
"date_basis": {
"$ref": "#/properties/cik"
},
"effective_period": {
"$ref": "#/properties/cik"
},
"policy_version": {
"$ref": "#/properties/cik"
},
"row_cap": {
"$ref": "#/properties/institution/anyOf/0/properties/rank"
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/cik"
},
"window_start": {
"$ref": "#/properties/cik"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"positions": {
"items": {
"additionalProperties": false,
"properties": {
"action": {
"$ref": "#/properties/cik"
},
"product_name": {
"$ref": "#/properties/cik"
},
"product_ticker": {
"$ref": "#/properties/cik"
},
"qoq_value_change": {
"$ref": "#/properties/institution/anyOf/0/properties/total_usd"
},
"shares_held": {
"$ref": "#/properties/institution/anyOf/0/properties/total_usd"
},
"usd_value": {
"$ref": "#/properties/institution/anyOf/0/properties/total_usd"
}
},
"required": [
"product_ticker",
"product_name",
"shares_held",
"usd_value",
"qoq_value_change",
"action"
],
"type": "object"
},
"type": "array"
},
"requested": {
"type": "string"
}
},
"required": [
"requested",
"cik",
"institution",
"positions",
"plan_limit"
],
"type": "object"
}
},
{
"description": "List institutional investors holding US spot crypto ETFs (Bitcoin ETF complex), ranked by total USD held, from the latest quarter of SEC 13F filings. Optionally filter to holders of a specific ETF via the `product` parameter (e.g. 'IBIT').",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"default": 50,
"description": "Results per page",
"maximum": 200,
"minimum": 1,
"type": "integer"
},
"page": {
"default": 1,
"description": "Page number",
"minimum": 1,
"type": "integer"
},
"product": {
"description": "Filter to holders of a specific spot crypto ETF ticker, e.g. 'IBIT', 'FBTC', 'GBTC'.",
"maxLength": 200,
"type": "string"
}
},
"type": "object"
},
"name": "get_crypto_holders",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/total_holders/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/total_holders/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"$ref": "#/properties/total_holders/anyOf/0"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/product"
},
"date_basis": {
"$ref": "#/properties/product"
},
"effective_period": {
"$ref": "#/properties/product"
},
"policy_version": {
"$ref": "#/properties/product"
},
"row_cap": {
"$ref": "#/properties/total_holders"
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/product"
},
"window_start": {
"$ref": "#/properties/product"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"product": {
"type": [
"string",
"null"
]
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"cik": {
"$ref": "#/properties/product"
},
"name": {
"$ref": "#/properties/product"
},
"prev_usd": {
"$ref": "#/properties/rows/items/properties/total_usd"
},
"product_count": {
"$ref": "#/properties/total_holders"
},
"products": {
"items": {
"type": "string"
},
"type": "array"
},
"qoq_value_change": {
"$ref": "#/properties/rows/items/properties/total_usd"
},
"rank": {
"$ref": "#/properties/total_holders"
},
"total_usd": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
}
},
"required": [
"rank",
"cik",
"name",
"total_usd",
"prev_usd",
"qoq_value_change",
"product_count",
"products"
],
"type": "object"
},
"type": "array"
},
"total_holders": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
}
},
"required": [
"product",
"total_holders",
"rows",
"paging",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Get U.S. economic indicators from BLS — CPI (inflation), PPI (producer prices), Non-farm Payrolls (employment), Unemployment Rate, JOLTS. Filter by category.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"category": {
"default": "all",
"description": "Category (case-insensitive): cpi/inflation, ppi, nfp/payrolls, unemployment, jolts, or all",
"enum": [
"cpi",
"unemployment",
"nfp",
"ppi",
"jolts",
"all"
],
"type": "string"
},
"days": {
"default": 365,
"description": "Number of days of history (default 365)",
"maximum": 3650,
"minimum": 1,
"type": "integer"
},
"limit": {
"default": 100,
"description": "Rows per page, 1-500 (default 100). A long `days` window can hold more rows than one page; the answer says when the page is full and names the next one.",
"maximum": 500,
"minimum": 1,
"type": "integer"
},
"page": {
"default": 1,
"description": "Page number (default 1)",
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"name": "get_economic_indicators",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"category": {
"type": "string"
},
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"category": {
"$ref": "#/properties/rows/items/properties/date"
},
"date": {
"type": [
"string",
"null"
]
},
"series_id": {
"$ref": "#/properties/rows/items/properties/date"
},
"series_name": {
"$ref": "#/properties/rows/items/properties/date"
},
"value": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
}
},
"required": [
"date",
"series_id",
"series_name",
"value",
"category"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"category",
"rows",
"paging"
],
"type": "object"
}
},
{
"description": "Get daily U.S. policy and money-market interest rates as a markdown table: Effective Fed Funds Rate, SOFR, Prime Rate, and benchmark Treasury yields (3M, 2Y, 10Y, 30Y) per date, newest first. Use for monetary-policy questions like 'Where is the Fed funds rate now?' or 'How has SOFR moved this quarter?', or to compare policy rates against long-end yields for inversion analysis. Covers up to 10 years of daily history. For the full Treasury curve across all maturities, use get_treasury_yields instead.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"days": {
"default": 30,
"description": "Number of days of history (default 30)",
"maximum": 3650,
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"name": "get_fed_rates",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"date": {
"type": [
"string",
"null"
]
},
"fed_funds_rate": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"prime_rate": {
"$ref": "#/properties/rows/items/properties/fed_funds_rate"
},
"sofr": {
"$ref": "#/properties/rows/items/properties/fed_funds_rate"
},
"treasury_10y": {
"$ref": "#/properties/rows/items/properties/fed_funds_rate"
},
"treasury_2y": {
"$ref": "#/properties/rows/items/properties/fed_funds_rate"
},
"treasury_30y": {
"$ref": "#/properties/rows/items/properties/fed_funds_rate"
},
"treasury_3m": {
"$ref": "#/properties/rows/items/properties/fed_funds_rate"
}
},
"required": [
"date",
"fed_funds_rate",
"sofr",
"prime_rate",
"treasury_3m",
"treasury_2y",
"treasury_10y",
"treasury_30y"
],
"type": "object"
},
"type": "array"
},
"unit": {
"const": "percent",
"type": "string"
}
},
"required": [
"unit",
"rows"
],
"type": "object"
}
},
{
"description": "Get the OFR Financial Stress Index — a daily indicator of stress in global financial markets. Values above 0 indicate above-average stress.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"days": {
"default": 365,
"description": "Number of days of history (default 365)",
"maximum": 3650,
"minimum": 1,
"type": "integer"
},
"limit": {
"default": 100,
"description": "Rows per page, 1-500 (default 100). A long `days` window can hold more rows than one page; the answer says when the page is full and names the next one.",
"maximum": 500,
"minimum": 1,
"type": "integer"
},
"page": {
"default": 1,
"description": "Page number (default 1)",
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"name": "get_financial_stress",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"date": {
"type": [
"string",
"null"
]
},
"series": {
"$ref": "#/properties/rows/items/properties/date"
},
"value": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
}
},
"required": [
"date",
"series",
"value"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"rows",
"paging"
],
"type": "object"
}
},
{
"description": "Get SEC Form 144 filings — notices of proposed sale of restricted/controlled securities by insiders. Filed before selling, these signal upcoming insider sales. Complements Form 4 (post-trade) with pre-trade intent.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"insider_cik": {
"description": "Filter by insider's CIK number",
"maxLength": 200,
"type": "string"
},
"limit": {
"default": 50,
"description": "Max notices to return",
"maximum": 200,
"minimum": 1,
"type": "integer"
},
"ticker": {
"description": "Filter by stock ticker (e.g. 'AAPL')",
"maxLength": 200,
"type": "string"
}
},
"type": "object"
},
"name": "get_form144_notices",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"filters": {
"additionalProperties": false,
"properties": {
"insider_cik": {
"$ref": "#/properties/filters/properties/ticker"
},
"ticker": {
"type": [
"string",
"null"
]
}
},
"required": [
"ticker",
"insider_cik"
],
"type": "object"
},
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/filters/properties/ticker"
},
"date_basis": {
"$ref": "#/properties/filters/properties/ticker"
},
"effective_period": {
"$ref": "#/properties/filters/properties/ticker"
},
"policy_version": {
"$ref": "#/properties/filters/properties/ticker"
},
"row_cap": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
]
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/filters/properties/ticker"
},
"window_start": {
"$ref": "#/properties/filters/properties/ticker"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"accession_no": {
"$ref": "#/properties/filters/properties/ticker"
},
"aggregate_market_value": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/units_to_sell/anyOf/0"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"approx_sale_date": {
"$ref": "#/properties/filters/properties/ticker"
},
"broker_name": {
"$ref": "#/properties/filters/properties/ticker"
},
"filed_date": {
"$ref": "#/properties/filters/properties/ticker"
},
"has_10b5_1_plan": {
"type": [
"boolean",
"null"
]
},
"issuer_cik": {
"$ref": "#/properties/filters/properties/ticker"
},
"issuer_name": {
"$ref": "#/properties/filters/properties/ticker"
},
"issuer_ticker": {
"$ref": "#/properties/filters/properties/ticker"
},
"relationship": {
"$ref": "#/properties/filters/properties/ticker"
},
"securities_class": {
"$ref": "#/properties/filters/properties/ticker"
},
"seller_name": {
"$ref": "#/properties/filters/properties/ticker"
},
"units_to_sell": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Units the filer NOTIFIED an intent to sell -- not a completed sale"
}
},
"required": [
"accession_no",
"filed_date",
"issuer_ticker",
"issuer_name",
"issuer_cik",
"seller_name",
"relationship",
"securities_class",
"units_to_sell",
"aggregate_market_value",
"approx_sale_date",
"broker_name",
"has_10b5_1_plan"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"filters",
"rows",
"paging",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Get SEC fails-to-deliver (FTD) data for a stock. Each quantity is the aggregate net BALANCE of shares that had failed to deliver and were still outstanding on that settlement date, as published by the SEC -- NOT the number of new fails that day. Balances carry over between days, so never sum quantities across dates (that counts the same unsettled shares repeatedly); compare levels or take the maximum instead. Fails arise from many causes (operational and processing delays, long sales, market-maker activity), and FTD data on its own is not evidence of naked short selling. Free/keyless access covers the trailing 92 days. structuredContent carries the exact share quantities.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"days": {
"default": 90,
"description": "Days of settlement-date history (default 90; Free/keyless access allows up to 92)",
"maximum": 1825,
"minimum": 1,
"type": "integer"
},
"limit": {
"default": 100,
"description": "Rows per page, 1-500 (default 100). A long `days` window can hold more rows than one page; the answer says when the page is full and names the next one.",
"maximum": 500,
"minimum": 1,
"type": "integer"
},
"page": {
"default": 1,
"description": "Page number (default 1)",
"minimum": 1,
"type": "integer"
},
"ticker": {
"description": "Stock ticker symbol (e.g. 'GME', 'TSLA')",
"maxLength": 200,
"type": "string"
}
},
"required": [
"ticker"
],
"type": "object"
},
"name": "get_ftd_data",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"measure": {
"const": "outstanding_fail_balance",
"description": "Each quantity is the balance of fails outstanding on that settlement date -- not new fails that day; never sum across dates",
"type": "string"
},
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/rows/items/properties/settlement_date"
},
"date_basis": {
"$ref": "#/properties/rows/items/properties/settlement_date"
},
"effective_period": {
"$ref": "#/properties/rows/items/properties/settlement_date"
},
"policy_version": {
"$ref": "#/properties/rows/items/properties/settlement_date"
},
"row_cap": {
"anyOf": [
{
"$ref": "#/properties/paging/properties/total_count/anyOf/0"
},
{
"type": "null"
}
]
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/rows/items/properties/settlement_date"
},
"window_start": {
"$ref": "#/properties/rows/items/properties/settlement_date"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"price": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/quantity/anyOf/0"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"quantity": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Outstanding fails-to-deliver balance (shares) on that settlement date"
},
"settlement_date": {
"type": [
"string",
"null"
]
},
"ticker": {
"$ref": "#/properties/rows/items/properties/settlement_date"
}
},
"required": [
"settlement_date",
"ticker",
"quantity",
"price"
],
"type": "object"
},
"type": "array"
},
"ticker": {
"type": "string"
}
},
"required": [
"ticker",
"measure",
"rows",
"paging",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Get insider (SEC Form 4) transactions for one company. Two grains, and the answer says which: (1) with `executive_cik` -> one row per Form 4 transaction line, with its SEC code (P open-market or private purchase, S open-market or private sale, M/X/C option or RSU exercise/conversion, A grant/award, F shares withheld for tax, G gift, ...), shares, price and value; (2) without it -> one row per insider per trade date that AGGREGATES all that day's lines, split into code P/S purchases/sales (open market or private) versus all acquisitions/dispositions (which also count vests, exercises and tax withholding), with both dollar totals and the line count; when ko.io reports them, the Lines cell and structuredContent also carry that day's SEC codes (e.g. '4 (F 1, M 2, S 1)'). Do not read an aggregate day's total disposed value as a sale decision; use the P/S columns, whose dollar totals cover priced lines only (unpriced lines are counted and flagged as partial). Keyless/Free access covers the trailing 92 days; `period` beyond 1Q requires Pro. structuredContent carries the exact share counts and dollar amounts.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"executive_cik": {
"description": "Insider's SEC CIK (from a previous answer's person_cik, or list_insider_traders). When given, returns that insider's individual Form 4 transaction lines in this company, newest first.",
"type": "string"
},
"limit": {
"default": 50,
"description": "Rows per page, 1-200",
"maximum": 200,
"minimum": 1,
"type": "integer"
},
"page": {
"default": 1,
"description": "Page number",
"minimum": 1,
"type": "integer"
},
"period": {
"default": "1Q",
"description": "Trade-date window for the per-day view: 1Q = trailing 90 days (default, allowed on every plan); 2Q / 1Y / ALL require Pro. Ignored when executive_cik is given (that view returns the full history your plan allows).",
"enum": [
"1Q",
"2Q",
"1Y",
"ALL"
],
"type": "string"
},
"ticker": {
"description": "Stock ticker symbol (e.g. 'AAPL')",
"maxLength": 200,
"type": "string"
}
},
"required": [
"ticker"
],
"type": "object"
},
"name": "get_insider_trades",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"executive_cik": {
"type": [
"string",
"null"
]
},
"grain": {
"description": "insider_trade_date = one row per insider per day, aggregating that day's Form 4 lines; form4_transaction_line = one row per line",
"enum": [
"insider_trade_date",
"form4_transaction_line"
],
"type": "string"
},
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/form4_lines/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/form4_lines/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/form4_lines/anyOf/0"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"period": {
"$ref": "#/properties/executive_cik"
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/executive_cik"
},
"date_basis": {
"$ref": "#/properties/executive_cik"
},
"effective_period": {
"$ref": "#/properties/executive_cik"
},
"policy_version": {
"$ref": "#/properties/executive_cik"
},
"row_cap": {
"$ref": "#/properties/rows/items/properties/form4_lines"
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/executive_cik"
},
"window_start": {
"$ref": "#/properties/executive_cik"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"acquired_disposed": {
"anyOf": [
{
"enum": [
"A",
"D"
],
"type": "string"
},
{
"type": "null"
}
]
},
"all_shares_acquired": {
"$ref": "#/properties/rows/items/properties/shares",
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"all_shares_disposed": {
"$ref": "#/properties/rows/items/properties/shares",
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"all_value_acquired": {
"$ref": "#/properties/rows/items/properties/shares",
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"all_value_disposed": {
"$ref": "#/properties/rows/items/properties/shares",
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"code_meaning": {
"$ref": "#/properties/executive_cik"
},
"code_p_or_s": {
"description": "true for SEC codes P (purchase) and S (sale) -- open market OR private; the code does not distinguish",
"type": "boolean"
},
"first_filed_date": {
"$ref": "#/properties/executive_cik"
},
"form4_lines": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"is_derivative": {
"type": "boolean"
},
"last_filed_date": {
"$ref": "#/properties/executive_cik"
},
"officer_title": {
"$ref": "#/properties/executive_cik"
},
"person_cik": {
"$ref": "#/properties/executive_cik"
},
"person_name": {
"$ref": "#/properties/executive_cik"
},
"price": {
"$ref": "#/properties/rows/items/properties/shares",
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"ps_buy_lines": {
"$ref": "#/properties/rows/items/properties/form4_lines",
"description": "Code P lines that day (open market or private purchases)"
},
"ps_buy_unpriced_lines": {
"$ref": "#/properties/rows/items/properties/form4_lines",
"description": "Code P lines with no dollar value; > 0 means ps_value_bought is partial"
},
"ps_sell_lines": {
"$ref": "#/properties/rows/items/properties/form4_lines",
"description": "Code S lines that day (open market or private sales)"
},
"ps_sell_unpriced_lines": {
"$ref": "#/properties/rows/items/properties/form4_lines",
"description": "Code S lines with no dollar value; > 0 means ps_value_sold is partial"
},
"ps_shares_bought": {
"$ref": "#/properties/rows/items/properties/shares",
"description": "null = unknown (a line had no share count)"
},
"ps_shares_sold": {
"$ref": "#/properties/rows/items/properties/shares",
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"ps_value_bought": {
"$ref": "#/properties/rows/items/properties/shares",
"description": "Dollar total of PRICED code P lines only"
},
"ps_value_bought_complete": {
"description": "false = some code P lines unpriced; null = not reported",
"type": [
"boolean",
"null"
]
},
"ps_value_sold": {
"$ref": "#/properties/rows/items/properties/shares",
"description": "Dollar total of PRICED code S lines only"
},
"ps_value_sold_complete": {
"type": [
"boolean",
"null"
]
},
"security_title": {
"$ref": "#/properties/executive_cik"
},
"shares": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"shares_owned_after": {
"$ref": "#/properties/rows/items/properties/shares"
},
"trade_date": {
"$ref": "#/properties/executive_cik"
},
"transaction_code": {
"$ref": "#/properties/executive_cik"
},
"transaction_code_breakdown": {
"anyOf": [
{
"items": {
"additionalProperties": false,
"properties": {
"acquired_disposed": {
"enum": [
"A",
"D"
],
"type": "string"
},
"code": {
"$ref": "#/properties/executive_cik"
},
"code_meaning": {
"type": "string"
},
"is_derivative": {
"type": "boolean"
},
"lines": {
"$ref": "#/properties/rows/items/properties/form4_lines"
},
"shares": {
"$ref": "#/properties/rows/items/properties/shares"
},
"value": {
"$ref": "#/properties/rows/items/properties/shares"
}
},
"required": [
"code",
"code_meaning",
"acquired_disposed",
"is_derivative",
"lines",
"shares",
"value"
],
"type": "object"
},
"type": "array"
},
{
"type": "null"
}
],
"description": "Per code x acquired/disposed x table: line count, shares, value (null = unknown, not partial)"
},
"transaction_codes": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"description": "Distinct SEC Form 4 codes aggregated into this day (e.g. [\"F\",\"M\",\"S\"]); null = not reported by ko.io"
},
"value": {
"$ref": "#/properties/rows/items/properties/shares",
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
}
},
"required": [
"trade_date",
"person_cik",
"person_name",
"shares_owned_after"
],
"type": "object"
},
"type": "array"
},
"ticker": {
"type": "string"
}
},
"required": [
"ticker",
"grain",
"executive_cik",
"period",
"rows",
"paging",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Get current stock holdings of an institutional investor (hedge fund, mutual fund, pension fund) from their latest SEC 13F filing. Returns top positions with share counts, values, and quarter-over-quarter changes. Every answer states its grain: ENTITY (a CIK that belongs to a manager family is answered for the whole family by default -- pass entity='filer' for that one filer's own 13F) and SECURITY (the default portfolio merges an issuer's share classes into one row, e.g. GOOG+GOOGL, and lists the per-class breakdown; pass `ticker` to get only that security). Shares and value are the 13F-reported totals over all legs; option legs are flagged. structuredContent carries exact shares/values and the grain fields.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"entity": {
"default": "family",
"description": "family (default): consolidate every 13F filer in the manager family; filer: only the requested CIK's own filing.",
"enum": [
"family",
"filer"
],
"type": "string"
},
"institution": {
"description": "Institution CIK number (e.g. '1067983'), slug (e.g. 'berkshire-hathaway'), or name (e.g. 'Berkshire Hathaway') — names are resolved automatically.",
"maxLength": 200,
"type": "string"
},
"limit": {
"default": 50,
"description": "Results per page",
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"page": {
"default": 1,
"description": "Page number",
"minimum": 1,
"type": "integer"
},
"ticker": {
"description": "Only this security (e.g. 'GOOG'). Returns the security grain: GOOG is Class C only, not the Alphabet issuer total.",
"maxLength": 20,
"type": "string"
}
},
"required": [
"institution"
],
"type": "object"
},
"name": "get_institution_holdings",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"entity_grain": {
"description": "filer = one 13F filer's own filing; family = consolidated across a manager family's filers",
"enum": [
"filer",
"family",
"unknown"
],
"type": "string"
},
"family": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"canonical_cik": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"name": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"slug": {
"type": [
"string",
"null"
]
}
},
"required": [
"slug",
"name",
"canonical_cik"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The manager family, when the answer is at family grain and ko.io named it"
},
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/reported_by_members/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/reported_by_members/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/reported_by_members/anyOf/0"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"date_basis": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"effective_period": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"policy_version": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"row_cap": {
"$ref": "#/properties/rows/items/properties/reported_by_members"
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"window_start": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"position_basis": {
"description": "What shares_held/holding_value count, when ko.io stated it (e.g. 13f_reported_all_legs)",
"type": [
"string",
"null"
]
},
"quarter_date": {
"description": "The snapshot's quarter; null for a history (each row carries its own quarter_date)",
"type": [
"string",
"null"
]
},
"quarters": {
"description": "Distinct quarter-ends present in rows, newest first",
"items": {
"type": "string"
},
"type": "array"
},
"requested": {
"description": "The institution identifier the caller passed",
"type": "string"
},
"requested_cik": {
"description": "The CIK/slug the request was made for",
"type": [
"string",
"null"
]
},
"resolved_cik": {
"description": "The CIK ko.io answered for (the family's canonical CIK at family grain)",
"type": [
"string",
"null"
]
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"action": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"call_shares": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"cik": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"equity_shares": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"has_option_legs": {
"type": [
"boolean",
"null"
]
},
"holding_value": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"issuer": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"portfolio_weight_pct": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"put_shares": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"quarter_date": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"reported_by_members": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"security_grain": {
"enum": [
"security",
"issuer"
],
"type": "string"
},
"share_change": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"share_classes": {
"description": "Per-class breakdown of an issuer-grain row; empty at security grain",
"items": {
"additionalProperties": false,
"properties": {
"holding_value": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"shares_held": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"ticker": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
}
},
"required": [
"ticker",
"shares_held",
"holding_value"
],
"type": "object"
},
"type": "array"
},
"shares_held": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"ticker": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"tickers": {
"description": "Share-class tickers summed into this row (one entry at security grain)",
"items": {
"type": "string"
},
"type": "array"
}
},
"required": [
"cik",
"ticker",
"issuer",
"quarter_date",
"shares_held",
"holding_value",
"portfolio_weight_pct",
"action",
"share_change",
"security_grain",
"tickers",
"share_classes",
"equity_shares",
"call_shares",
"put_shares",
"has_option_legs",
"reported_by_members"
],
"type": "object"
},
"type": "array"
},
"security_grain": {
"description": "security = one row per security/share class; issuer = share classes of one issuer merged; mixed = portfolio with some merged rows",
"enum": [
"security",
"issuer",
"mixed"
],
"type": "string"
},
"ticker_filter": {
"$ref": "#/properties/family/anyOf/0/properties/slug"
},
"view": {
"description": "snapshot = one quarter's holdings; history = one position across quarters (family + ticker), one row per quarter, newest first",
"enum": [
"snapshot",
"history"
],
"type": "string"
}
},
"required": [
"requested",
"requested_cik",
"resolved_cik",
"entity_grain",
"family",
"security_grain",
"ticker_filter",
"position_basis",
"view",
"quarters",
"quarter_date",
"rows",
"paging",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Get institutional buying/selling activity trend for a stock over multiple quarters. Shows how many institutions are buying vs selling, net share changes, and value flows — useful for detecting accumulation or distribution patterns. Plan limits: Free/keyless access covers the latest 13F quarter only; the multi-quarter trend requires Pro. Omit `quarters` to get the most your plan allows. structuredContent carries the exact net shares/values. Each quarter carries ko.io's comparability state (comparable / split_adjusted with its split factor / not_comparable / first_reported): a null share or value flow means UNKNOWN (withheld), never zero.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"quarters": {
"description": "Number of quarters to return. Omit for the plan default (Pro: 8 = 2 years; Free/keyless: the latest quarter only). An explicit value above what your plan allows returns a plan-limit error.",
"maximum": 40,
"minimum": 1,
"type": "integer"
},
"ticker": {
"description": "Stock ticker symbol",
"maxLength": 200,
"type": "string"
}
},
"required": [
"ticker"
],
"type": "object"
},
"name": "get_stock_activity",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"latest": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"changes": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"added": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"basis": {
"description": "\"equity_filer_baseline\"",
"type": [
"string",
"null"
]
},
"comparability": {
"$ref": "#/properties/latest/anyOf/0/properties/comparability"
},
"comparability_reason": {
"$ref": "#/properties/latest/anyOf/0/properties/quarter",
"description": "ko.io's prose for the comparability state; null when comparable"
},
"exited": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"flow_excluded_filers": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased",
"description": "Classified filers left out of share/value flows (implausible row); still counted as holders"
},
"holders": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"net_shares": {
"$ref": "#/properties/latest/anyOf/0/properties/changes/anyOf/0/properties/split_factor"
},
"net_value": {
"$ref": "#/properties/latest/anyOf/0/properties/changes/anyOf/0/properties/split_factor"
},
"new": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"no_baseline": {
"anyOf": [
{
"$ref": "#/properties/quarters_requested/anyOf/0"
},
{
"type": "null"
}
],
"description": "Filers with no usable prior-quarter baseline: not classified as new/added/..."
},
"null_reason": {
"$ref": "#/properties/latest/anyOf/0/properties/null_reason"
},
"price_corrected": {
"description": "true when values use the holders' median implied price instead of a quarter-end close that was off by > 50%",
"type": [
"boolean",
"null"
]
},
"shares_added": {
"$ref": "#/properties/latest/anyOf/0/properties/changes/anyOf/0/properties/split_factor"
},
"shares_removed": {
"$ref": "#/properties/latest/anyOf/0/properties/changes/anyOf/0/properties/split_factor"
},
"split_factor": {
"description": "split_adjusted only: last quarter's shares were multiplied by this factor before classifying (e.g. 10 = 10-for-1); null otherwise",
"type": [
"number",
"null"
]
},
"trimmed": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"unchanged": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"value_added": {
"$ref": "#/properties/latest/anyOf/0/properties/changes/anyOf/0/properties/split_factor"
},
"value_removed": {
"$ref": "#/properties/latest/anyOf/0/properties/changes/anyOf/0/properties/split_factor"
}
},
"required": [
"basis",
"new",
"added",
"trimmed",
"exited",
"unchanged",
"no_baseline",
"holders",
"shares_added",
"shares_removed",
"net_shares",
"value_added",
"value_removed",
"net_value"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "equity_filer_baseline: common stock only (option legs excluded); one holder per filer CIK; only filers with a usable prior-quarter baseline are classified. Same names/values as ko.io REST `changes`. A null share/value flow means UNKNOWN (withheld), never zero. null = ko.io could not compute `changes` for this quarter; absent when ko.io did not send it."
},
"comparability": {
"$ref": "#/properties/latest/anyOf/0/properties/quarter",
"description": "comparable | split_adjusted (last quarter's shares x split_factor before classifying) | not_comparable (share and value flows withheld -> null) | first_reported (no 13F filer held it last quarter: no prior-quarter baseline, every holder is new) | unknown (flows could not be recomputed -> null)"
},
"institutions_decreased": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"institutions_exited": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"institutions_increased": {
"anyOf": [
{
"$ref": "#/properties/quarters_requested/anyOf/0"
},
{
"type": "null"
}
]
},
"institutions_new": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"institutions_total": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"net_shares": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "null = unknown (withheld, see null_reason), never zero"
},
"net_value": {
"anyOf": [
{
"$ref": "#/properties/latest/anyOf/0/properties/net_shares/anyOf/0"
},
{
"type": "null"
}
],
"description": "null = unknown (withheld, see null_reason), never zero"
},
"null_reason": {
"$ref": "#/properties/latest/anyOf/0/properties/quarter",
"description": "Why the share/value flows are null (e.g. share_ratio_not_a_split_factor, price_conflict_insufficient_samples, value_above_sanity_cap, not_recomputable); null when they are not"
},
"quarter": {
"type": [
"string",
"null"
]
},
"shares_added": {
"anyOf": [
{
"$ref": "#/properties/latest/anyOf/0/properties/net_shares/anyOf/0"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"shares_removed": {
"$ref": "#/properties/latest/anyOf/0/properties/shares_added"
},
"value_added": {
"$ref": "#/properties/latest/anyOf/0/properties/shares_added"
},
"value_removed": {
"$ref": "#/properties/latest/anyOf/0/properties/shares_added"
}
},
"required": [
"quarter",
"institutions_increased",
"institutions_decreased",
"institutions_new",
"institutions_exited",
"net_shares",
"net_value",
"institutions_total",
"shares_added",
"shares_removed",
"value_added",
"value_removed"
],
"type": "object"
},
{
"type": "null"
}
]
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/latest/anyOf/0/properties/quarter"
},
"date_basis": {
"$ref": "#/properties/latest/anyOf/0/properties/quarter"
},
"effective_period": {
"$ref": "#/properties/latest/anyOf/0/properties/quarter"
},
"policy_version": {
"$ref": "#/properties/latest/anyOf/0/properties/quarter"
},
"row_cap": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/latest/anyOf/0/properties/quarter"
},
"window_start": {
"$ref": "#/properties/latest/anyOf/0/properties/quarter"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"plan_note": {
"description": "Set when the plan limited how many quarters were returned",
"type": [
"string",
"null"
]
},
"quarters_requested": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "null = the plan default was used"
},
"quarters_returned": {
"type": "integer"
},
"ticker": {
"type": "string"
},
"trend": {
"items": {
"additionalProperties": false,
"properties": {
"changes": {
"$ref": "#/properties/latest/anyOf/0/properties/changes"
},
"comparability": {
"$ref": "#/properties/latest/anyOf/0/properties/comparability"
},
"institutions_decreased": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"institutions_exited": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"institutions_increased": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"institutions_new": {
"$ref": "#/properties/latest/anyOf/0/properties/institutions_increased"
},
"net_shares": {
"$ref": "#/properties/latest/anyOf/0/properties/net_shares"
},
"net_value": {
"$ref": "#/properties/latest/anyOf/0/properties/net_value"
},
"null_reason": {
"$ref": "#/properties/latest/anyOf/0/properties/null_reason"
},
"quarter": {
"$ref": "#/properties/latest/anyOf/0/properties/quarter"
}
},
"required": [
"quarter",
"institutions_increased",
"institutions_decreased",
"institutions_new",
"institutions_exited",
"net_shares",
"net_value"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"ticker",
"quarters_requested",
"quarters_returned",
"latest",
"trend",
"plan_note",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Get quarterly or annual financial statements for a company (revenue, net income, EPS, margins, cash flow, debt ratios) from SEC 10-K/10-Q filings. Plan limits: the Free plan and keyless access return only the latest quarterly statement; annual statements and earlier quarters require Pro (a request for them returns an explicit plan-limit error, never 'no data'). structuredContent carries the exact reported values.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"default": 8,
"description": "Number of periods to return (default 8)",
"maximum": 20,
"minimum": 1,
"type": "integer"
},
"period_type": {
"default": "quarterly",
"description": "Period type — quarterly (10-Q) or annual (10-K)",
"enum": [
"quarterly",
"annual"
],
"type": "string"
},
"ticker": {
"description": "Stock ticker symbol (e.g. 'AAPL', 'MSFT')",
"maxLength": 200,
"type": "string"
}
},
"required": [
"ticker"
],
"type": "object"
},
"name": "get_stock_financials",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"period_type": {
"enum": [
"quarterly",
"annual"
],
"type": "string"
},
"periods": {
"items": {
"additionalProperties": false,
"properties": {
"eps_basic": {
"$ref": "#/properties/periods/items/properties/revenue"
},
"eps_diluted": {
"$ref": "#/properties/periods/items/properties/revenue"
},
"gross_profit": {
"$ref": "#/properties/periods/items/properties/revenue"
},
"long_term_debt": {
"$ref": "#/properties/periods/items/properties/revenue"
},
"net_income": {
"$ref": "#/properties/periods/items/properties/revenue"
},
"operating_cashflow": {
"$ref": "#/properties/periods/items/properties/revenue"
},
"operating_income": {
"$ref": "#/properties/periods/items/properties/revenue"
},
"period_end": {
"type": [
"string",
"null"
]
},
"revenue": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"short_term_debt": {
"$ref": "#/properties/periods/items/properties/revenue"
},
"stockholders_equity": {
"$ref": "#/properties/periods/items/properties/revenue"
}
},
"required": [
"period_end",
"revenue",
"net_income",
"eps_basic",
"eps_diluted",
"gross_profit",
"operating_income",
"operating_cashflow",
"long_term_debt",
"short_term_debt",
"stockholders_equity"
],
"type": "object"
},
"type": "array"
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/periods/items/properties/period_end"
},
"date_basis": {
"$ref": "#/properties/periods/items/properties/period_end"
},
"effective_period": {
"$ref": "#/properties/periods/items/properties/period_end"
},
"policy_version": {
"$ref": "#/properties/periods/items/properties/period_end"
},
"row_cap": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/periods/items/properties/period_end"
},
"window_start": {
"$ref": "#/properties/periods/items/properties/period_end"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"plan_note": {
"description": "Set when the caller's plan limited which periods were returned",
"type": [
"string",
"null"
]
},
"ticker": {
"type": "string"
}
},
"required": [
"ticker",
"period_type",
"periods",
"plan_note",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Get top institutional holders of a stock from SEC 13F filings. Shows which hedge funds, mutual funds, and pension funds own the most shares, with quarter-over-quarter changes.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"default": 20,
"description": "Results per page",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"page": {
"default": 1,
"description": "Page number",
"minimum": 1,
"type": "integer"
},
"ticker": {
"description": "Stock ticker symbol (e.g. 'NVDA')",
"maxLength": 200,
"type": "string"
}
},
"required": [
"ticker"
],
"type": "object"
},
"name": "get_stock_holders",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"entity_grain": {
"anyOf": [
{
"enum": [
"filer",
"family"
],
"type": "string"
},
{
"type": "null"
}
],
"description": "filer = each row is one 13F filer CIK (not consolidated into manager families); null = ko.io did not state it"
},
"family": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"canonical_cik": {
"$ref": "#/properties/quarter_date"
},
"name": {
"$ref": "#/properties/quarter_date"
},
"slug": {
"$ref": "#/properties/quarter_date"
}
},
"required": [
"slug",
"name",
"canonical_cik"
],
"type": "object"
},
{
"type": "null"
}
]
},
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/total_institutions/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/total_institutions/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"$ref": "#/properties/total_institutions/anyOf/0"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/quarter_date"
},
"date_basis": {
"$ref": "#/properties/quarter_date"
},
"effective_period": {
"$ref": "#/properties/quarter_date"
},
"policy_version": {
"$ref": "#/properties/quarter_date"
},
"row_cap": {
"$ref": "#/properties/total_institutions"
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/quarter_date"
},
"window_start": {
"$ref": "#/properties/quarter_date"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"position_basis": {
"$ref": "#/properties/quarter_date"
},
"position_basis_note": {
"$ref": "#/properties/quarter_date"
},
"quarter_date": {
"type": [
"string",
"null"
]
},
"requested_cik": {
"$ref": "#/properties/quarter_date"
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"action": {
"$ref": "#/properties/quarter_date"
},
"call_shares": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"cik": {
"$ref": "#/properties/quarter_date"
},
"equity_action": {
"$ref": "#/properties/quarter_date",
"description": "NEW | ADDED | TRIMMED | EXITED | UNCHANGED on the equity_filer_baseline basis; null = not classified"
},
"equity_share_change": {
"$ref": "#/properties/rows/items/properties/shares_held",
"description": "Common-share change on the equity_filer_baseline basis (split-restated); null = no usable prior-quarter baseline (unknown, never zero). Absent when ko.io did not send it"
},
"equity_shares": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"family": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"canonical_cik": {
"$ref": "#/properties/quarter_date"
},
"name": {
"$ref": "#/properties/quarter_date"
},
"slug": {
"$ref": "#/properties/quarter_date"
}
},
"required": [
"slug",
"name",
"canonical_cik"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The manager family this holder belongs to, when ko.io attributes it"
},
"flags": {
"description": "e.g. NO_BASELINE (no prior-quarter 13F in ko.io), DEALER (market maker / dealer desk)",
"items": {
"type": "string"
},
"type": "array"
},
"has_option_legs": {
"type": [
"boolean",
"null"
]
},
"holding_value": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"name": {
"$ref": "#/properties/quarter_date"
},
"portfolio_weight_pct": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"put_shares": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"rank": {
"type": "integer"
},
"reported_by_members": {
"$ref": "#/properties/total_institutions"
},
"share_change": {
"$ref": "#/properties/rows/items/properties/shares_held"
},
"shares_held": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
}
},
"required": [
"rank",
"cik",
"name",
"shares_held",
"holding_value",
"portfolio_weight_pct",
"share_change",
"action",
"equity_shares",
"call_shares",
"put_shares",
"has_option_legs",
"family",
"reported_by_members"
],
"type": "object"
},
"type": "array"
},
"ticker": {
"type": "string"
},
"total_institutions": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
}
},
"required": [
"ticker",
"quarter_date",
"position_basis",
"position_basis_note",
"entity_grain",
"requested_cik",
"family",
"total_institutions",
"rows",
"paging",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Get historical daily stock prices (OHLC). Returns a summary by default; set series=true to get the full daily price series (for backtesting / charting).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"default": 500,
"description": "Max rows of the daily series to return when series=true.",
"maximum": 3000,
"minimum": 1,
"type": "integer"
},
"period": {
"default": "1y",
"description": "Look-back window",
"enum": [
"1y",
"3y",
"5y",
"10y"
],
"type": "string"
},
"series": {
"default": false,
"description": "If true, return the full daily OHLC series (up to `limit` rows) instead of just a summary.",
"type": "boolean"
},
"ticker": {
"description": "Stock ticker symbol",
"maxLength": 200,
"type": "string"
}
},
"required": [
"ticker"
],
"type": "object"
},
"name": "get_stock_price",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"days_requested": {
"type": "integer"
},
"latest": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"close": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"date": {
"type": [
"string",
"null"
]
}
},
"required": [
"date",
"close"
],
"type": "object"
},
{
"type": "null"
}
]
},
"period": {
"type": "string"
},
"period_high_close": {
"$ref": "#/properties/latest/anyOf/0/properties/close"
},
"period_low_close": {
"$ref": "#/properties/latest/anyOf/0/properties/close"
},
"period_start": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"close": {
"$ref": "#/properties/latest/anyOf/0/properties/close"
},
"date": {
"$ref": "#/properties/latest/anyOf/0/properties/date"
}
},
"required": [
"date",
"close"
],
"type": "object"
},
{
"type": "null"
}
]
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/latest/anyOf/0/properties/date"
},
"date_basis": {
"$ref": "#/properties/latest/anyOf/0/properties/date"
},
"effective_period": {
"$ref": "#/properties/latest/anyOf/0/properties/date"
},
"policy_version": {
"$ref": "#/properties/latest/anyOf/0/properties/date"
},
"row_cap": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/latest/anyOf/0/properties/date"
},
"window_start": {
"$ref": "#/properties/latest/anyOf/0/properties/date"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"rows": {
"description": "The rows rendered: the full series (series=true, up to limit) or the latest 10",
"items": {
"additionalProperties": false,
"properties": {
"close": {
"$ref": "#/properties/latest/anyOf/0/properties/close"
},
"date": {
"$ref": "#/properties/latest/anyOf/0/properties/date"
},
"high": {
"$ref": "#/properties/latest/anyOf/0/properties/close"
},
"low": {
"$ref": "#/properties/latest/anyOf/0/properties/close"
},
"open": {
"$ref": "#/properties/latest/anyOf/0/properties/close"
},
"volume": {
"$ref": "#/properties/latest/anyOf/0/properties/close"
}
},
"required": [
"date",
"open",
"high",
"low",
"close",
"volume"
],
"type": "object"
},
"type": "array"
},
"rows_returned": {
"type": "integer"
},
"ticker": {
"type": "string"
},
"total_return_pct": {
"anyOf": [
{
"$ref": "#/properties/latest/anyOf/0/properties/close/anyOf/0"
},
{
"type": "null"
}
],
"description": "(latest close - period-start close) / period-start close x 100, from the returned rows"
}
},
"required": [
"ticker",
"period",
"days_requested",
"rows_returned",
"latest",
"period_start",
"total_return_pct",
"period_high_close",
"period_low_close",
"rows",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Get a company's profile — sector, market cap, price, P/E ratio, 52-week range, beta, dividend yield, and other key financials.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"ticker": {
"description": "Stock ticker symbol (e.g. 'AAPL', 'NVDA', 'MSFT')",
"maxLength": 200,
"type": "string"
}
},
"required": [
"ticker"
],
"type": "object"
},
"name": "get_stock_profile",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"position_basis": {
"$ref": "#/properties/stock/properties/sector"
},
"stock": {
"additionalProperties": false,
"properties": {
"avg_volume": {
"$ref": "#/properties/stock/properties/market_cap"
},
"beta": {
"$ref": "#/properties/stock/properties/market_cap"
},
"current_price": {
"$ref": "#/properties/stock/properties/market_cap"
},
"dividend_yield_pct": {
"$ref": "#/properties/stock/properties/market_cap"
},
"eps": {
"$ref": "#/properties/stock/properties/market_cap"
},
"fifty_two_week_high": {
"$ref": "#/properties/stock/properties/market_cap"
},
"fifty_two_week_low": {
"$ref": "#/properties/stock/properties/market_cap"
},
"industry": {
"$ref": "#/properties/stock/properties/sector"
},
"market_cap": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"pe_ratio": {
"$ref": "#/properties/stock/properties/market_cap"
},
"previous_close": {
"$ref": "#/properties/stock/properties/market_cap"
},
"price_date": {
"$ref": "#/properties/stock/properties/sector"
},
"profit_margins": {
"$ref": "#/properties/stock/properties/market_cap"
},
"sector": {
"type": [
"string",
"null"
]
}
},
"required": [
"sector",
"industry",
"market_cap",
"current_price",
"price_date",
"previous_close",
"fifty_two_week_high",
"fifty_two_week_low",
"pe_ratio",
"eps",
"beta",
"dividend_yield_pct",
"profit_margins",
"avg_volume"
],
"type": "object"
},
"ticker": {
"type": "string"
},
"top_holders": {
"items": {
"additionalProperties": false,
"properties": {
"call_shares": {
"$ref": "#/properties/stock/properties/market_cap"
},
"cik": {
"$ref": "#/properties/stock/properties/sector"
},
"equity_shares": {
"$ref": "#/properties/stock/properties/market_cap"
},
"has_option_legs": {
"type": [
"boolean",
"null"
]
},
"holding_value": {
"$ref": "#/properties/stock/properties/market_cap"
},
"name": {
"$ref": "#/properties/stock/properties/sector"
},
"portfolio_weight_pct": {
"$ref": "#/properties/stock/properties/market_cap"
},
"put_shares": {
"$ref": "#/properties/stock/properties/market_cap"
},
"shares_held": {
"$ref": "#/properties/stock/properties/market_cap"
}
},
"required": [
"cik",
"name",
"shares_held",
"holding_value",
"portfolio_weight_pct",
"equity_shares",
"call_shares",
"put_shares",
"has_option_legs"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"ticker",
"stock",
"position_basis",
"top_holders"
],
"type": "object"
}
},
{
"description": "Get U.S. Treasury yield curve data — daily yields for maturities from 1-month to 30-year. Essential for understanding interest rate environment and yield curve shape.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"days": {
"default": 30,
"description": "Days of daily history to return, 1-3650 (default 30 = last month)",
"maximum": 3650,
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"name": "get_treasury_yields",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"date": {
"type": [
"string",
"null"
]
},
"m1": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"m3": {
"$ref": "#/properties/rows/items/properties/m1"
},
"m6": {
"$ref": "#/properties/rows/items/properties/m1"
},
"y1": {
"$ref": "#/properties/rows/items/properties/m1"
},
"y10": {
"$ref": "#/properties/rows/items/properties/m1"
},
"y2": {
"$ref": "#/properties/rows/items/properties/m1"
},
"y30": {
"$ref": "#/properties/rows/items/properties/m1"
},
"y5": {
"$ref": "#/properties/rows/items/properties/m1"
}
},
"required": [
"date",
"m1",
"m3",
"m6",
"y1",
"y2",
"y5",
"y10",
"y30"
],
"type": "object"
},
"type": "array"
},
"unit": {
"const": "percent",
"type": "string"
}
},
"required": [
"unit",
"rows"
],
"type": "object"
}
},
{
"description": "List executives/insiders who have recently traded their company stock. Filter by role (CEO only or all executives). Useful for finding notable insider buying/selling activity across the market.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"default": 20,
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"page": {
"default": 1,
"minimum": 1,
"type": "integer"
},
"role": {
"default": "all",
"description": "Filter by role (case-insensitive): CEO, executive/officer, or all",
"enum": [
"ceo",
"executive",
"all"
],
"type": "string"
},
"search": {
"description": "Search by name or ticker",
"maxLength": 200,
"type": "string"
}
},
"type": "object"
},
"name": "list_insider_traders",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"grain": {
"const": "insider_trade_date",
"type": "string"
},
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/form4_lines/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/form4_lines/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/form4_lines/anyOf/0"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/search"
},
"date_basis": {
"$ref": "#/properties/search"
},
"effective_period": {
"$ref": "#/properties/search"
},
"policy_version": {
"$ref": "#/properties/search"
},
"row_cap": {
"$ref": "#/properties/rows/items/properties/form4_lines"
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/search"
},
"window_start": {
"$ref": "#/properties/search"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"role": {
"type": "string"
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"all_value_acquired": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/ps_value_bought/anyOf/0"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"all_value_disposed": {
"$ref": "#/properties/rows/items/properties/all_value_acquired"
},
"company_name": {
"$ref": "#/properties/search"
},
"form4_lines": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"officer_title": {
"$ref": "#/properties/search"
},
"person_cik": {
"$ref": "#/properties/search"
},
"person_name": {
"$ref": "#/properties/search"
},
"ps_value_bought": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Code P lines (open-market or private purchase), priced lines only"
},
"ps_value_sold": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/ps_value_bought/anyOf/0"
},
{
"type": "null"
}
],
"description": "Code S lines (open-market or private sale), priced lines only"
},
"shares_owned_after": {
"$ref": "#/properties/rows/items/properties/all_value_acquired"
},
"ticker": {
"$ref": "#/properties/search"
},
"trade_date": {
"$ref": "#/properties/search"
}
},
"required": [
"ticker",
"company_name",
"person_cik",
"person_name",
"officer_title",
"trade_date",
"form4_lines",
"ps_value_bought",
"ps_value_sold",
"all_value_acquired",
"all_value_disposed",
"shares_owned_after"
],
"type": "object"
},
"type": "array"
},
"search": {
"type": [
"string",
"null"
]
}
},
"required": [
"search",
"role",
"grain",
"rows",
"paging",
"plan_limit"
],
"type": "object"
}
},
{
"description": "List top institutional investors (hedge funds, mutual funds, etc.) tracked in the SEC 13F database. Supports search by name and pagination.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"default": 20,
"description": "Results per page",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"page": {
"default": 1,
"description": "Page number",
"minimum": 1,
"type": "integer"
},
"search": {
"description": "Search by institution name, CIK, or manager name (e.g. 'Klarman' -> Baupost)",
"maxLength": 200,
"type": "string"
}
},
"type": "object"
},
"name": "list_institutions",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"paging": {
"additionalProperties": false,
"description": "Paging state reconciled from ko.io meta.total_count and meta.softwall",
"properties": {
"continuation": {
"description": "SIGNIN_REQUIRED = page>1 needs a (free) ko.io API key",
"type": [
"string",
"null"
]
},
"has_more": {
"description": "null = a full page came back and more MAY exist",
"type": [
"boolean",
"null"
]
},
"next_page": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/rank/anyOf/0"
},
{
"type": "null"
}
],
"description": "Next page THIS caller can open; null when there is none (or sign-in is required)"
},
"page": {
"type": "integer"
},
"per_page": {
"type": "integer"
},
"plan_row_cap": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/rank/anyOf/0"
},
{
"type": "null"
}
],
"description": "Row cap the caller's plan applied to this page, if any"
},
"returned": {
"type": "integer"
},
"total_count": {
"anyOf": [
{
"$ref": "#/properties/rows/items/properties/rank/anyOf/0"
},
{
"type": "null"
}
],
"description": "Total rows matching the request, when ko.io reported it"
},
"truncated_by_plan": {
"description": "True when the plan's row cap withheld rows from this page",
"type": "boolean"
}
},
"required": [
"page",
"per_page",
"returned",
"total_count",
"has_more",
"next_page",
"continuation",
"plan_row_cap",
"truncated_by_plan"
],
"type": "object"
},
"plan_limit": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"continuation": {
"$ref": "#/properties/search"
},
"date_basis": {
"$ref": "#/properties/search"
},
"effective_period": {
"$ref": "#/properties/search"
},
"policy_version": {
"$ref": "#/properties/search"
},
"row_cap": {
"$ref": "#/properties/rows/items/properties/rank"
},
"truncated": {
"type": [
"boolean",
"null"
]
},
"window_end": {
"$ref": "#/properties/search"
},
"window_start": {
"$ref": "#/properties/search"
}
},
"required": [
"policy_version",
"window_start",
"window_end",
"effective_period",
"date_basis",
"row_cap",
"truncated",
"continuation"
],
"type": "object"
},
{
"type": "null"
}
],
"description": "The Free/keyless plan limits ko.io applied to this answer (null for paid callers)"
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"category": {
"$ref": "#/properties/search"
},
"cik": {
"$ref": "#/properties/search"
},
"name": {
"$ref": "#/properties/search"
},
"portfolio_value": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"rank": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"slug": {
"$ref": "#/properties/search"
},
"stock_count": {
"$ref": "#/properties/rows/items/properties/rank"
}
},
"required": [
"cik",
"name",
"slug",
"rank",
"category",
"portfolio_value",
"stock_count"
],
"type": "object"
},
"type": "array"
},
"search": {
"type": [
"string",
"null"
]
}
},
"required": [
"search",
"rows",
"paging",
"plan_limit"
],
"type": "object"
}
},
{
"description": "Search across institutions, stocks, and insider traders in the ko.io SEC database. Institutions match by firm name OR manager name ('Seth Klarman' -> Baupost, 'Ackman' -> Pershing Square; person hits carry matched_person). Use this first when you have a name but need the CIK number, ticker, or slug to use with other tools.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"default": 5,
"description": "Max results per category",
"maximum": 10,
"minimum": 1,
"type": "integer"
},
"query": {
"description": "Search query — company name, ticker, person name, or institution name (min 2 characters)",
"maxLength": 200,
"minLength": 2,
"type": "string"
}
},
"required": [
"query"
],
"type": "object"
},
"name": "search",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"congress": {
"items": {
"additionalProperties": false,
"properties": {
"name": {
"$ref": "#/properties/institutions/items/properties/cik"
},
"type": {
"$ref": "#/properties/institutions/items/properties/cik"
}
},
"required": [
"name",
"type"
],
"type": "object"
},
"type": "array"
},
"insiders": {
"items": {
"additionalProperties": false,
"properties": {
"name": {
"$ref": "#/properties/institutions/items/properties/cik"
},
"ticker": {
"$ref": "#/properties/institutions/items/properties/cik"
},
"type": {
"$ref": "#/properties/institutions/items/properties/cik"
}
},
"required": [
"name",
"ticker",
"type"
],
"type": "object"
},
"type": "array"
},
"institutions": {
"items": {
"additionalProperties": false,
"properties": {
"aum": {
"anyOf": [
{
"pattern": "^-?\\d+(\\.\\d+)?([eE][-+]?\\d+)?$",
"type": "string"
},
{
"type": "null"
}
],
"description": "Exact decimal string as served by ko.io (not rounded); null = unknown"
},
"category": {
"$ref": "#/properties/institutions/items/properties/cik"
},
"cik": {
"type": [
"string",
"null"
]
},
"matched_person": {
"anyOf": [
{
"additionalProperties": false,
"properties": {
"name": {
"$ref": "#/properties/institutions/items/properties/cik"
},
"role": {
"$ref": "#/properties/institutions/items/properties/cik"
}
},
"required": [
"name",
"role"
],
"type": "object"
},
{
"type": "null"
}
]
},
"name": {
"$ref": "#/properties/institutions/items/properties/cik"
},
"rank": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"slug": {
"$ref": "#/properties/institutions/items/properties/cik"
}
},
"required": [
"cik",
"name",
"slug",
"category",
"aum",
"rank",
"matched_person"
],
"type": "object"
},
"type": "array"
},
"query": {
"type": "string"
},
"stocks": {
"items": {
"additionalProperties": false,
"properties": {
"industry": {
"$ref": "#/properties/institutions/items/properties/cik"
},
"market_cap": {
"$ref": "#/properties/institutions/items/properties/aum"
},
"name": {
"$ref": "#/properties/institutions/items/properties/cik"
},
"sector": {
"$ref": "#/properties/institutions/items/properties/cik"
},
"ticker": {
"$ref": "#/properties/institutions/items/properties/cik"
}
},
"required": [
"ticker",
"name",
"sector",
"industry",
"market_cap"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"query",
"institutions",
"stocks",
"insiders",
"congress"
],
"type": "object"
}
},
{
"description": "Get a source document from a SEC filing, served by ko.io. Returns a ko.io LINK to the rendered document (open in a browser) plus, optionally, an extracted text excerpt. Never returns the whole file — for full content, open the link or request a specific section. Requires a paid ko.io plan (Pro): on Free or keyless access the call returns an explicit plan-limit error. Use sec_list_filings / sec_get_filing_index (open on every plan) to find filings and their files.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"accession_no": {
"description": "Accession number, e.g. '0000320193-23-000106'",
"maxLength": 200,
"type": "string"
},
"cik": {
"description": "Company CIK number",
"maxLength": 200,
"type": "string"
},
"file": {
"description": "File name within the filing (from sec_get_filing_index). Omit for the primary document.",
"maxLength": 200,
"type": "string"
},
"include_excerpt": {
"default": true,
"description": "Include a text excerpt (first ~6000 chars) in the response",
"type": "boolean"
}
},
"required": [
"cik",
"accession_no"
],
"type": "object"
},
"name": "sec_get_filing_document",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"accession_no": {
"type": "string"
},
"cik": {
"type": "string"
},
"excerpt": {
"additionalProperties": false,
"properties": {
"chars_total": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"status": {
"enum": [
"ok",
"unavailable",
"not_requested"
],
"type": "string"
},
"text": {
"$ref": "#/properties/file"
},
"truncated": {
"type": [
"boolean",
"null"
]
}
},
"required": [
"status",
"text",
"chars_total",
"truncated"
],
"type": "object"
},
"file": {
"type": [
"string",
"null"
]
},
"link": {
"additionalProperties": false,
"properties": {
"expires_at": {
"$ref": "#/properties/file"
},
"signed": {
"description": "true = ko.io-signed, expiring link a browser can open; false = needs a paid API key",
"type": "boolean"
},
"url": {
"type": "string"
}
},
"required": [
"url",
"signed",
"expires_at"
],
"type": "object"
}
},
"required": [
"cik",
"accession_no",
"file",
"link",
"excerpt"
],
"type": "object"
}
},
{
"description": "Enumerate every file in a single SEC filing (primary document, exhibits, images, XBRL, the full .txt submission). Pass a file name from here to sec_get_filing_document.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"accession_no": {
"description": "Accession number, e.g. '0000320193-23-000106'",
"maxLength": 200,
"type": "string"
},
"cik": {
"description": "Company CIK number",
"maxLength": 200,
"type": "string"
}
},
"required": [
"cik",
"accession_no"
],
"type": "object"
},
"name": "sec_get_filing_index",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"accession": {
"$ref": "#/properties/cik"
},
"cik": {
"type": [
"string",
"null"
]
},
"files": {
"items": {
"additionalProperties": false,
"properties": {
"last_modified": {
"$ref": "#/properties/cik"
},
"name": {
"$ref": "#/properties/cik"
},
"size_bytes": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"type": {
"$ref": "#/properties/cik"
}
},
"required": [
"name",
"type",
"size_bytes",
"last_modified"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"cik",
"accession",
"files"
],
"type": "object"
}
},
{
"description": "List an entity's SEC filings from EDGAR (most recent first), each with its accession number. Provide the company's CIK (use search or get_stock_profile to find it). Returns accession numbers to pass to sec_get_filing_index / sec_get_filing_document.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"cik": {
"description": "Company CIK number (e.g. '320193' for Apple)",
"maxLength": 200,
"type": "string"
},
"form_type": {
"description": "Exact SEC form filter, e.g. '10-K', '13F-HR', '8-K'",
"maxLength": 200,
"type": "string"
},
"from": {
"description": "Earliest filing date, ISO YYYY-MM-DD",
"maxLength": 200,
"type": "string"
},
"limit": {
"default": 50,
"description": "Max filings to return",
"maximum": 200,
"minimum": 1,
"type": "integer"
},
"to": {
"description": "Latest filing date, ISO YYYY-MM-DD",
"maxLength": 200,
"type": "string"
}
},
"required": [
"cik"
],
"type": "object"
},
"name": "sec_list_filings",
"outputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"cik": {
"type": "string"
},
"filters": {
"additionalProperties": false,
"properties": {
"form_type": {
"type": [
"string",
"null"
]
},
"from": {
"$ref": "#/properties/filters/properties/form_type"
},
"to": {
"$ref": "#/properties/filters/properties/form_type"
}
},
"required": [
"form_type",
"from",
"to"
],
"type": "object"
},
"rows": {
"items": {
"additionalProperties": false,
"properties": {
"accession": {
"$ref": "#/properties/filters/properties/form_type"
},
"description": {
"$ref": "#/properties/filters/properties/form_type"
},
"filing_date": {
"$ref": "#/properties/filters/properties/form_type"
},
"form": {
"$ref": "#/properties/filters/properties/form_type"
},
"primary_document": {
"$ref": "#/properties/filters/properties/form_type"
}
},
"required": [
"filing_date",
"form",
"accession",
"primary_document",
"description"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"cik",
"filters",
"rows"
],
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:df0a0dda8824353aab2ccfdac75c0b07a6591a6ec08b9f168241edd62b62f5ff | sha256sum