
Company News
Socket Joins New OpenJS Program to Fund Node.js Security Work
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.
datasinking-mcp
Advanced tools
MCP server for DataSinking — full-text Asian financial reports (China, Korea, Japan, Taiwan) as clean Markdown, for Claude, Cursor and other AI agents.
MCP server for DataSinking — full-text financial reports from China A-shares, Korea, Japan and Taiwan (annual / semi-annual / quarterly) as clean Markdown, ready for LLM reading and RAG.
Turns "what were Toyota's FY2025 results?" into a real answer: the agent finds the filing on EDINET, pulls just the chapter it needs, and cites the source.
npx -y datasinking-mcp
No Python, no uv, no build step — just Node 18+.
Get a free API key at https://datasink.ing (free tier: 3 requests/second, thousands of documents per month), then add this to your MCP client:
{
"mcpServers": {
"datasinking": {
"command": "npx",
"args": ["-y", "datasinking-mcp"],
"env": {
"DATASINK_API_KEY": "<your-key>"
}
}
}
}
Works with Claude Desktop, Claude Code, Cursor, Windsurf, Codex, and anything else that speaks MCP over stdio.
Prefer the remote endpoint? DataSinking also serves MCP over streamable HTTP at
https://api.datasink.ing/mcp— no local process, same six tools. Prefer Python?pip install "datasinking[mcp]"gives you the identical server.
| Tool | What it does |
|---|---|
list_exchanges | Coverage per exchange (sse / szse / bj / ksc / koe / knx / jpx / twse / tpex) with report counts |
list_stocks | Companies on an exchange, with report count each |
list_reports | A company's reports — metadata only (id, title, period, source) |
list_sections | Every section of one report, with chars / estimated_tokens / has_tables |
get_section | One chapter, by heading keyword — the token-cheap path for RAG |
get_report | A whole report (metadata + Markdown body) — expensive, use sparingly |
600519.SS (Kweichow Moutai) · 005930.KS (Samsung Electronics) · 7203.T (Toyota) ·
2330.TW (TSMC)
A full annual report can be 500k+ characters. list_sections tells the agent what's inside and
what it will cost in context, so it pulls one chapter instead of the whole document:
// 1. list_reports → { "symbol": "7203.T" } → id = 12345
// 2. list_sections → { "document_id": 12345 } → sections: ["事業の概況", ...]
// 3. get_section → { "document_id": 12345, "section": "事業の概況" }
section is substring-matched against the report's own headings, so pass it in the report's
language: 管理层讨论与分析 for A-shares, MD&A for English-language filings, 事業の概況 for
Japanese. If nothing matches, the API returns 404 together with the real headings — retry with
one of those.
Every response carries a source field naming the official disclosure platform — keep that
attribution when you cite a report.
| Market | Source | Coverage |
|---|---|---|
| China A-shares | cninfo.com.cn (巨潮资讯网) | 5,500+ companies |
| Korea | DART (전자공시시스템) | KOSPI / KOSDAQ / KONEX |
| Japan | EDINET (金融庁) | from 2016 — annual, semi-annual and quarterly securities reports (有価証券報告書). Note: 決算短信 are filed on TDnet and are not in EDINET, so they are not here either. |
| Taiwan | MOPS (公開資訊觀測站) | TWSE / TPEx |
| Env var | Default | Purpose |
|---|---|---|
DATASINK_API_KEY | (required) | Your key. Without it every tool call returns a clear error naming this variable. |
DATASINK_API_URL | https://api.datasink.ing | Override the API base URL (self-hosted / testing). |
cd npm
npm install
npm run smoke # handshake + tools/list, no key needed
DATASINK_API_KEY=xxx npm run smoke # full round-trip against the live API
The smoke test drives this server with a real MCP client over stdio rather than calling the functions directly — tool descriptions and parameter schemas only matter if they actually reach the client, and that has silently broken here before.
MIT. See LICENSE.
FAQs
MCP server for DataSinking — full-text Asian financial reports (China, Korea, Japan, Taiwan) as clean Markdown, for Claude, Cursor and other AI agents.
We found that datasinking-mcp demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Company News
Socket is joining the OpenJS Security Stewardship Program to fund Node.js vulnerability research, maintainer remediation, and security releases.

Security News
Two compromised GitHub Actions were re-enabled with malicious tags intact, exposing thousands of downstream repositories to Mini Shai-Hulud.

Research
/Security News
A malicious Firefox extension fetches its payload after installation to evade detection, steal Google session cookies, and automate account takeover.