ko-mcp

Real SEC, 13F, insider, congress & macro data your AI agent can cite. Hosted MCP, 24 tools.

使うべきか

品質と安全性

A
説明の品質
98%
スキーマの完全性
92%
命名の品質
98%
ポイズニングのリスク
100%
権限の一致
100%
プロトコルへの準拠
100%

ツール定義とプロトコルへの準拠に関する自動分析に基づいています。

コンテキストコスト

~4,437トークン数(ツール定義)
~1.3 KB一般的なレスポンスサイズ
注意への影響は大きい(128k コンテキストの 3.47%)

これは、サーバーのツールがモデルのコンテキストに読み込まれるたびに消費されるおおよそのトークン数です。数が多いほど、ほかのタスクに使える注意が減ります。

インストール

ワンクリックインストール

これを `claude_desktop_config.json` ファイルに追加してください:

{
  "mcpServers": {
    "ko-mcp": {
      "url": "https://mcp.ko.io/mcp"
    }
  }
}

リモートエンドポイント

https://mcp.ko.io/mcpstreamable-http

できること

ツール一覧

ツール(24)

🟢 読み取り専用🟡 書き込み🔴 削除⚪ 不明
🟢get_institution_holdings(institution, page, limit)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "institution": {
      "type": "string",
      "maxLength": 200,
      "description": "Institution CIK number (e.g. '1067983'), slug (e.g. 'berkshire-hathaway'), or name (e.g. 'Berkshire Hathaway') — names are resolved automatically."
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1,
      "description": "Page number"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 50,
      "description": "Results per page"
    }
  },
  "required": [
    "institution"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_institutions(search, page, limit)

List top institutional investors (hedge funds, mutual funds, etc.) tracked in the SEC 13F database. Supports search by name and pagination.

入力スキーマ

{
  "type": "object",
  "properties": {
    "search": {
      "type": "string",
      "maxLength": 200,
      "description": "Search by institution name, CIK, or manager name (e.g. 'Klarman' -> Baupost)"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1,
      "description": "Page number"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20,
      "description": "Results per page"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_stock_profile(ticker)

Get a company's profile — sector, market cap, price, P/E ratio, 52-week range, beta, dividend yield, and other key financials.

入力スキーマ

{
  "type": "object",
  "properties": {
    "ticker": {
      "type": "string",
      "maxLength": 200,
      "description": "Stock ticker symbol (e.g. 'AAPL', 'NVDA', 'MSFT')"
    }
  },
  "required": [
    "ticker"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_stock_holders(ticker, page, limit)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "ticker": {
      "type": "string",
      "maxLength": 200,
      "description": "Stock ticker symbol (e.g. 'NVDA')"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1,
      "description": "Page number"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20,
      "description": "Results per page"
    }
  },
  "required": [
    "ticker"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_stock_activity(ticker, quarters)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "ticker": {
      "type": "string",
      "maxLength": 200,
      "description": "Stock ticker symbol"
    },
    "quarters": {
      "type": "integer",
      "minimum": 1,
      "maximum": 40,
      "default": 8,
      "description": "Number of quarters to return (default 8 = 2 years)"
    }
  },
  "required": [
    "ticker"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡get_stock_price(ticker, period, series, limit)

Get historical daily stock prices (OHLC). Returns a summary by default; set series=true to get the full daily price series (for backtesting / charting).

入力スキーマ

{
  "type": "object",
  "properties": {
    "ticker": {
      "type": "string",
      "maxLength": 200,
      "description": "Stock ticker symbol"
    },
    "period": {
      "type": "string",
      "enum": [
        "1y",
        "3y",
        "5y",
        "10y"
      ],
      "default": "1y",
      "description": "Look-back window"
    },
    "series": {
      "type": "boolean",
      "default": false,
      "description": "If true, return the full daily OHLC series (up to `limit` rows) instead of just a summary."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 3000,
      "default": 500,
      "description": "Max rows of the daily series to return when series=true."
    }
  },
  "required": [
    "ticker"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_insider_trades(ticker, executive_cik, page, limit)

Get insider/executive stock trades (SEC Form 4) for a company. Shows CEO, CFO, directors, and other officers buying or selling their own company's stock — a key signal for institutional investors.

入力スキーマ

{
  "type": "object",
  "properties": {
    "ticker": {
      "type": "string",
      "maxLength": 200,
      "description": "Stock ticker symbol (e.g. 'AAPL')"
    },
    "executive_cik": {
      "type": "string",
      "description": "Filter by specific executive CIK (from list_insider_traders)"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1,
      "description": "Page number"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "default": 50,
      "description": "Trades per page, 1-200"
    }
  },
  "required": [
    "ticker"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_insider_traders(search, role, page, limit)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "search": {
      "type": "string",
      "maxLength": 200,
      "description": "Search by name or ticker"
    },
    "role": {
      "type": "string",
      "enum": [
        "ceo",
        "executive",
        "all"
      ],
      "default": "all",
      "description": "Filter by role (case-insensitive): CEO, executive/officer, or all"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_congress_trades(chamber, ticker, search, sort, page, ...)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "chamber": {
      "type": "string",
      "enum": [
        "house",
        "senate",
        "all"
      ],
      "default": "all",
      "description": "Congressional chamber: house, senate, or all (default all)"
    },
    "ticker": {
      "type": "string",
      "maxLength": 200,
      "description": "Stock ticker symbol to filter by, e.g. NVDA or AAPL"
    },
    "search": {
      "type": "string",
      "maxLength": 200,
      "description": "Full or partial member name, e.g. 'Pelosi' or 'Dan Crenshaw'"
    },
    "sort": {
      "type": "string",
      "enum": [
        "volume",
        "trades",
        "recent"
      ],
      "default": "volume",
      "description": "Sort order — volume (most traded value), trades (most trades), recent (latest first)"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1,
      "description": "Page number for pagination (default 1)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "default": 20,
      "description": "Trades per page, 1-50 (default 20)"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_congress_member(member, page, limit)

Get detailed trading history of a specific U.S. Congress member. Shows individual trades with transaction types, amounts, and disclosure dates.

入力スキーマ

{
  "type": "object",
  "properties": {
    "member": {
      "type": "string",
      "description": "Member slug (e.g. 'nancy-pelosi', 'dan-crenshaw'). Use get_congress_trades or search to find exact slugs."
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "default": 50
    }
  },
  "required": [
    "member"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢search(query, limit)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "query": {
      "type": "string",
      "minLength": 2,
      "maxLength": 200,
      "description": "Search query — company name, ticker, person name, or institution name (min 2 characters)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 10,
      "default": 5,
      "description": "Max results per category"
    }
  },
  "required": [
    "query"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_form144_notices(ticker, insider_cik, limit)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "ticker": {
      "type": "string",
      "maxLength": 200,
      "description": "Filter by stock ticker (e.g. 'AAPL')"
    },
    "insider_cik": {
      "type": "string",
      "maxLength": 200,
      "description": "Filter by insider's CIK number"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "default": 50,
      "description": "Max notices to return"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sec_list_filings(cik, form_type, from, to, limit)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "cik": {
      "type": "string",
      "maxLength": 200,
      "description": "Company CIK number (e.g. '320193' for Apple)"
    },
    "form_type": {
      "type": "string",
      "maxLength": 200,
      "description": "Exact SEC form filter, e.g. '10-K', '13F-HR', '8-K'"
    },
    "from": {
      "type": "string",
      "maxLength": 200,
      "description": "Earliest filing date, ISO YYYY-MM-DD"
    },
    "to": {
      "type": "string",
      "maxLength": 200,
      "description": "Latest filing date, ISO YYYY-MM-DD"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "default": 50,
      "description": "Max filings to return"
    }
  },
  "required": [
    "cik"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sec_get_filing_index(cik, accession_no)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "cik": {
      "type": "string",
      "maxLength": 200,
      "description": "Company CIK number"
    },
    "accession_no": {
      "type": "string",
      "maxLength": 200,
      "description": "Accession number, e.g. '0000320193-23-000106'"
    }
  },
  "required": [
    "cik",
    "accession_no"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sec_get_filing_document(cik, accession_no, file, include_excerpt)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "cik": {
      "type": "string",
      "maxLength": 200,
      "description": "Company CIK number"
    },
    "accession_no": {
      "type": "string",
      "maxLength": 200,
      "description": "Accession number, e.g. '0000320193-23-000106'"
    },
    "file": {
      "type": "string",
      "maxLength": 200,
      "description": "File name within the filing (from sec_get_filing_index). Omit for the primary document."
    },
    "include_excerpt": {
      "type": "boolean",
      "default": true,
      "description": "Include a text excerpt (first ~6000 chars) in the response"
    }
  },
  "required": [
    "cik",
    "accession_no"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_stock_financials(ticker, period_type, limit)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "ticker": {
      "type": "string",
      "maxLength": 200,
      "description": "Stock ticker symbol (e.g. 'AAPL', 'MSFT')"
    },
    "period_type": {
      "type": "string",
      "enum": [
        "quarterly",
        "annual"
      ],
      "default": "quarterly",
      "description": "Period type — quarterly (10-Q) or annual (10-K)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 20,
      "default": 8,
      "description": "Number of periods to return (default 8)"
    }
  },
  "required": [
    "ticker"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_treasury_yields(days)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 3650,
      "default": 30,
      "description": "Days of daily history to return, 1-3650 (default 30 = last month)"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_fed_rates(days)

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.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 3650,
      "default": 30,
      "description": "Number of days of history (default 30)"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_economic_indicators(category, days, page, limit)

Get U.S. economic indicators from BLS — CPI (inflation), PPI (producer prices), Non-farm Payrolls (employment), Unemployment Rate, JOLTS. Filter by category.

入力スキーマ

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "cpi",
        "unemployment",
        "nfp",
        "ppi",
        "jolts",
        "all"
      ],
      "default": "all",
      "description": "Category (case-insensitive): cpi/inflation, ppi, nfp/payrolls, unemployment, jolts, or all"
    },
    "days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 3650,
      "default": 365,
      "description": "Number of days of history (default 365)"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1,
      "description": "Page number (default 1)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 500,
      "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."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_ftd_data(ticker, days, page, limit)

Get SEC Failures-to-Deliver (FTD) data for a stock. High FTD quantities may indicate naked short selling or settlement issues.

入力スキーマ

{
  "type": "object",
  "properties": {
    "ticker": {
      "type": "string",
      "maxLength": 200,
      "description": "Stock ticker symbol (e.g. 'GME', 'TSLA')"
    },
    "days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 1825,
      "default": 90,
      "description": "Number of days of history (default 90)"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1,
      "description": "Page number (default 1)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 500,
      "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."
    }
  },
  "required": [
    "ticker"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_financial_stress(days, page, limit)

Get the OFR Financial Stress Index — a daily indicator of stress in global financial markets. Values above 0 indicate above-average stress.

入力スキーマ

{
  "type": "object",
  "properties": {
    "days": {
      "type": "integer",
      "minimum": 1,
      "maximum": 3650,
      "default": 365,
      "description": "Number of days of history (default 365)"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1,
      "description": "Page number (default 1)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 500,
      "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."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_crypto_exposure

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).

入力スキーマ

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_crypto_holders(product, page, limit)

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').

入力スキーマ

{
  "type": "object",
  "properties": {
    "product": {
      "type": "string",
      "maxLength": 200,
      "description": "Filter to holders of a specific spot crypto ETF ticker, e.g. 'IBIT', 'FBTC', 'GBTC'."
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "default": 1,
      "description": "Page number"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200,
      "default": 50,
      "description": "Results per page"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_crypto_holder(institution)

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).

入力スキーマ

{
  "type": "object",
  "properties": {
    "institution": {
      "type": "string",
      "maxLength": 200,
      "description": "Institution CIK number (e.g. '1512857' for Brevan Howard) or name (e.g. 'BlackRock')."
    }
  },
  "required": [
    "institution"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

コミュニティ

このサーバーを評価する

エビデンス

最近の観測

検証済みバージョンは記録されていませんツール 24 件
検証済みバージョンは記録されていませんツール 24 件