StockDrifts

Xếp hạng quỹ 13F với giá mua trung bình, KPI công ty, xếp hạng nhà đầu tư Nhật Bản, giao dịch nội bộ Hàn Quốc.

Máy chủ MCP được lưu trữ

npx add-mcp 'https://mcp.stockdrifts.io/mcp/'

Cài vào Claude Code, Codex, Cursor và nhiều công cụ khác

Tài liệu

Quick start

The StockDrifts Data API is HTTPS-only with JSON in and out. It covers data StockDrifts owns or derives from public record — Korean insider filings, Japanese 5%-rule shareholding reports, US 13F holdings, and normalized company KPIs. Every request is authenticated with a bearer token.

Base URL

https://api2.stockdrifts.io

Authenticate

Pass your key as a bearer token on every request. Keys are issued from the dashboard and look like sd_live_….

Response

1curl "https://api2.stockdrifts.io/v1/kr/insiders/top-buys?days=30" \
2-H "Authorization: Bearer sd_live_..."

Want your own API key?

Book a 30-minute demo and we'll get you set up, or email hk@stockdrifts.io.

Pagination

Endpoints marked paginated take ?page=&limit= (page is 0-indexed). A page shorter than limit means there are no more rows. Every list returns a plain array — no envelope, no total count.

Rate limits

Enforced per key in fixed one-minute windows. Responses carry X-RateLimit-Limit, -Remaining, and -Reset; a 429 adds Retry-After.

Fields & currency

Responses are snake_case JSON. Value fields are suffixed with their currency (value_usd, value_krw, value_jpy), so nothing is silently FX-converted.

Periods

13F period values are ISO quarter-end dates (2026-03-31), not 2026-Q1. Omit it to get the latest quarter on file.

Errors

Every error uses one shape, with an optional hint. The code maps to the HTTP status: bad_request (400), unauthorized (401), forbidden (403), not_found (404), validation_error (422), rate_limited (429), upstream_error (502), and internal_error (500, which carries a request_id to quote when reporting it).

Response

1{
2"error": {
3"code": "forbidden",
4"message": "Your plan does not include the 'holdings' endpoints",
5"hint": "See stockdrifts.io/pricing for plans that include it."
6}
7}

Out-of-range parameters fail the same way, naming the offending field:

Response

1{
2"error": {
3"code": "validation_error",
4"message": "limit: Input should be less than or equal to 500"
5}
6}