{"_id":"k-data-mcp","_rev":"5-8c3b2b096adf8b4690dc599b69edc8ec","name":"k-data-mcp","dist-tags":{"latest":"0.3.0"},"versions":{"0.1.0":{"name":"k-data-mcp","version":"0.1.0","keywords":["mcp","modelcontextprotocol","x402","korea","kimchi-premium","upbit","crypto","usdc","base","agent-payments"],"license":"MIT","_id":"k-data-mcp@0.1.0","maintainers":[{"name":"theblack1022","email":"hyunjuhong939@gmail.com"}],"bin":{"k-data-mcp":"dist/index.js"},"dist":{"shasum":"4c87fb5582c6ac5d32f2f7169924a59c12756c61","tarball":"https://registry.npmjs.org/k-data-mcp/-/k-data-mcp-0.1.0.tgz","fileCount":4,"integrity":"sha512-dAruO6dTvB/MrXZzM6RilyPwwFU+Mi9M73z0Vwv2cdFkM0SvAGUYHA4B7iRT8rnRRblNsy37mXI4Sl+WPEX8VA==","signatures":[{"sig":"MEUCIBhJcUoeuAHK0peTShAvQ1In580MTDg120eubeJbH2DaAiEA4pFLs/Zw0Sdud+PD3BIsRwR3G3tYZoM1++5W/aNW+CY=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13187},"type":"module","engines":{"node":">=20"},"gitHead":"1a5044625d9762578c24463ff4dd72744202245c","scripts":{"build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"theblack1022","email":"hyunjuhong939@gmail.com"},"_npmVersion":"11.8.0","description":"MCP server for Korean market data — kimchi premium on a tradeable USDT basis, premium history and percentiles, Korean news translated to English. Pays per call in USDC via x402; no account or API key.","directories":{},"_nodeVersion":"24.13.1","dependencies":{"viem":"^2.21.0","@x402/evm":"~2.20.0","@x402/fetch":"~2.20.0","@modelcontextprotocol/sdk":"^1.30.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/k-data-mcp_0.1.0_1785620349196_0.4263600667903271","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"k-data-mcp","version":"0.1.1","keywords":["mcp","modelcontextprotocol","x402","korea","kimchi-premium","upbit","crypto","usdc","base","agent-payments"],"license":"MIT","_id":"k-data-mcp@0.1.1","maintainers":[{"name":"theblack1022","email":"hyunjuhong939@gmail.com"}],"bin":{"k-data-mcp":"dist/index.js"},"dist":{"shasum":"66626217bacdd92ca15c4b08952081aa6577bc2e","tarball":"https://registry.npmjs.org/k-data-mcp/-/k-data-mcp-0.1.1.tgz","fileCount":4,"integrity":"sha512-KAVJco16JsLkVDFv2RZAjJowkMgXxkGPa/0nyelwPDer3Y2BzjGYQDMVuPRrRHAxp3QONNiyQJIujpz/0LWHTQ==","signatures":[{"sig":"MEUCIQCjZy2BBTKCv2RISvDVXvMW5RSjgRXgvVIqz8BxwuEVDgIgDt5rz2YF6OVWPBlP1Srwgw+bOHKRGCWK/2nUKyVpYSU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":13231},"type":"module","engines":{"node":">=20"},"gitHead":"aea82a1949e5566fa10cb42d98029d160eaf089a","mcpName":"io.github.juh5ng/k-data-mcp","scripts":{"build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"theblack1022","email":"hyunjuhong939@gmail.com"},"_npmVersion":"11.8.0","description":"MCP server for Korean market data — kimchi premium on a tradeable USDT basis, premium history and percentiles, Korean news translated to English. Pays per call in USDC via x402; no account or API key.","directories":{},"_nodeVersion":"24.13.1","dependencies":{"viem":"^2.21.0","@x402/evm":"~2.20.0","@x402/fetch":"~2.20.0","@modelcontextprotocol/sdk":"^1.30.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/k-data-mcp_0.1.1_1785621212392_0.5477097630196242","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"k-data-mcp","version":"0.2.0","keywords":["mcp","modelcontextprotocol","x402","korea","kimchi-premium","upbit","crypto","usdc","base","agent-payments"],"license":"MIT","_id":"k-data-mcp@0.2.0","maintainers":[{"name":"theblack1022","email":"hyunjuhong939@gmail.com"}],"bin":{"k-data-mcp":"dist/index.js"},"dist":{"shasum":"8b37f7bfba663691b17e7d91f29c54785880c155","tarball":"https://registry.npmjs.org/k-data-mcp/-/k-data-mcp-0.2.0.tgz","fileCount":4,"integrity":"sha512-kQ4HpFheJxw6qlBQR5NQte7p2e9wTKhKTs1/qOcoymQKZNVCp1nVI+bDHznDfP17MjKbXbmpp5f6Z4+IJvA66A==","signatures":[{"sig":"MEUCIAKxkLAViKc04wKZIDxlST/b0h6IzwUbwmMPVoP73pxfAiEAqcLsAiQ/bzRV9sFTcx1v3uRPv69aJP3p/84BkKBH2T4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14238},"type":"module","engines":{"node":">=20"},"gitHead":"57ebbdc1f2979ebfcd20505902c330a2706b0ffd","scripts":{"build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"theblack1022","email":"hyunjuhong939@gmail.com"},"_npmVersion":"11.8.0","description":"MCP server for Korean market data — kimchi premium on a tradeable USDT basis, premium history and percentiles, Korean news translated to English. Pays per call in USDC via x402; no account or API key.","directories":{},"_nodeVersion":"24.13.1","dependencies":{"viem":"^2.21.0","@x402/evm":"~2.20.0","@x402/fetch":"~2.20.0","@modelcontextprotocol/sdk":"^1.30.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/k-data-mcp_0.2.0_1786625723436_0.6961496286309197","host":"s3://npm-registry-packages-npm-production"}},"0.2.1":{"name":"k-data-mcp","version":"0.2.1","keywords":["mcp","modelcontextprotocol","x402","korea","kimchi-premium","upbit","crypto","usdc","base","agent-payments"],"license":"MIT","_id":"k-data-mcp@0.2.1","maintainers":[{"name":"theblack1022","email":"hyunjuhong939@gmail.com"}],"bin":{"k-data-mcp":"dist/index.js"},"dist":{"shasum":"4fe6db3cee9318349e353794209336645dddc4d8","tarball":"https://registry.npmjs.org/k-data-mcp/-/k-data-mcp-0.2.1.tgz","fileCount":4,"integrity":"sha512-fD9J8ZhLgjgao1xH+ZnIubq82RfXswvz80NhhhyCPbWoSB8oYZRc+OdvS4b7M/H+9+UwAEWQdt3YQxTc7/NM1w==","signatures":[{"sig":"MEYCIQDGr+FXn5qnF53SwDy9qAK2yiuhpO1hBSsNfzfAz/QyigIhALGM+MADJlH8QGbH8xKaH6QPB4LGBHBR8Pm+MM/N+V9D","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":14282},"type":"module","engines":{"node":">=20"},"gitHead":"4bdc1000c834d170eea7c21049ab796d370e2b41","mcpName":"io.github.juh5ng/k-data-mcp","scripts":{"build":"tsc","start":"node dist/index.js"},"_npmUser":{"name":"theblack1022","email":"hyunjuhong939@gmail.com"},"_npmVersion":"11.8.0","description":"MCP server for Korean market data — kimchi premium on a tradeable USDT basis, premium history and percentiles, Korean news translated to English. Pays per call in USDC via x402; no account or API key.","directories":{},"_nodeVersion":"24.13.1","dependencies":{"viem":"^2.21.0","@x402/evm":"~2.20.0","@x402/fetch":"~2.20.0","@modelcontextprotocol/sdk":"^1.30.0"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.7.0","@types/node":"^22.0.0"},"_npmOperationalInternal":{"tmp":"tmp/k-data-mcp_0.2.1_1786628095282_0.39245496379963196","host":"s3://npm-registry-packages-npm-production"}},"0.3.0":{"name":"k-data-mcp","mcpName":"io.github.juh5ng/korea-stock-research-mcp","version":"0.3.0","description":"MCP server for Korean equity research and market data — analyst ratings, target-price revision history, tradeable-basis kimchi premium, and Korean news in English. Wallet-free previews; pay per call in USDC via x402.","homepage":"https://k-data-x402-production.theblack1022.workers.dev","repository":{"type":"git","url":"git+https://github.com/juh5ng/k-data-mcp.git"},"keywords":["mcp","modelcontextprotocol","x402","korea","kimchi-premium","upbit","crypto","usdc","base","agent-payments","korean-stocks","krx","kospi","equity-research","analyst-ratings","target-price","consensus"],"license":"MIT","type":"module","bin":{"k-data-mcp":"dist/index.js"},"engines":{"node":">=20"},"scripts":{"build":"tsc","start":"node dist/index.js"},"dependencies":{"@modelcontextprotocol/sdk":"^1.30.0","@x402/evm":"~2.20.0","@x402/fetch":"~2.20.0","viem":"^2.21.0"},"devDependencies":{"@types/node":"^22.0.0","typescript":"^5.7.0"},"gitHead":"2a25246e873e003c48793e0b972fba60636ee036","_id":"k-data-mcp@0.3.0","bugs":{"url":"https://github.com/juh5ng/k-data-mcp/issues"},"_nodeVersion":"24.20.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-wbkLgRUS/FXO4OP3wMULQrb32qt0YcXYGwN2d9pFSmKacb1GdXJqZFsuKf0pNXfopzpBBv7nXbxVVMgURMO9SA==","shasum":"62c8fe3eac950ecc1dd48962c883768d16b35f1e","tarball":"https://registry.npmjs.org/k-data-mcp/-/k-data-mcp-0.3.0.tgz","fileCount":5,"unpackedSize":16588,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/k-data-mcp@0.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDpqCPuCqSCtW9BnsOTtBehXBHVLlP8WaraXqW7MKF0hAiEA5gimMdYqypWlft4qF6RaHF3hnJYX3je95rjP6aAReIo="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:46b7e907-947f-463b-ae1c-9b2aeae9d182"}},"directories":{},"maintainers":[{"name":"theblack1022","email":"hyunjuhong939@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/k-data-mcp_0.3.0_1788657674759_0.3814367907058007"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-01T21:39:09.099Z","modified":"2026-09-06T01:21:15.537Z","0.1.0":"2026-08-01T21:39:09.465Z","0.1.1":"2026-08-01T21:53:32.513Z","0.2.0":"2026-08-13T12:55:23.571Z","0.2.1":"2026-08-13T13:34:55.415Z","0.3.0":"2026-09-06T01:21:14.947Z"},"license":"MIT","keywords":["mcp","modelcontextprotocol","x402","korea","kimchi-premium","upbit","crypto","usdc","base","agent-payments","korean-stocks","krx","kospi","equity-research","analyst-ratings","target-price","consensus"],"description":"MCP server for Korean equity research and market data — analyst ratings, target-price revision history, tradeable-basis kimchi premium, and Korean news in English. Wallet-free previews; pay per call in USDC via x402.","maintainers":[{"name":"theblack1022","email":"hyunjuhong939@gmail.com"}],"readme":"# k-data-mcp\n\nMCP server for **Korean equity research and market data**, metered per call in USDC over [x402](https://x402.org). Start it without a wallet to inspect the catalog and run free, date-stamped previews; add a dedicated wallet only when you want paid calls.\n\n## Try before funding a wallet\n\nRun `npx k-data-mcp` with no environment variables to use these free tools:\n\n- `list_endpoints` — paid catalog and prices.\n- `preview_research_coverage` — real per-ticker report/brokerage counts and archive date ranges.\n- `preview_research` — a single ticker's actual archive depth; this does not disclose report content.\n- `preview_kimchi_premium` — live BTC-only dual-basis sample.\n\nSet `K_DATA_PRIVATE_KEY` and `K_DATA_MAX_SPEND_USD` only when you are ready to enable paid tools.\n\n## What you get\n\n- **Kimchi premium on a tradeable basis.** Everyone quotes the premium against the official USD/KRW rate, but Korean capital controls mean the KRW exit leg actually goes through USDT — so that number is not something you can trade on. This returns both, and they routinely disagree *in sign*: official can read −0.27% while the realizable basis is +0.19%.\n- **Premium history and percentile context.** A continuously recorded archive answers \"is this premium unusual right now?\" — percentile, mean, stdev, z-score over 1h–90d. No free source publishes this, and it cannot be reconstructed after the fact.\n- **Korean headlines translated to English**, from Yonhap, Maeil Business and Hankyung. Korean myriad units (억 / 조) are expanded deterministically before translation, so \"989억달러\" comes back as *$98.9 billion* rather than the 10×-off answer language models produce unaided.\n- **Korean sell-side research as structured data.** Target prices, ratings, brokerage and analyst per KRX ticker, each with an English summary, plus the consensus and revision history built from them — who raised, who cut, and how far apart the houses actually are. Only the facts of each report are sold, in our own words, with a link back to the publisher; the report PDF stays with the brokerage that wrote it. The listing source shows a rolling recent window only, so this series cannot be reconstructed after the fact either.\n- Upbit KRW quotes and market summaries, USD/KRW.\n\n## Install\n\n```bash\nnpx k-data-mcp\n```\n\n### Claude Desktop / Claude Code\n\n```json\n{\n  \"mcpServers\": {\n    \"k-data\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"k-data-mcp\"],\n      \"env\": {\n        \"K_DATA_PRIVATE_KEY\": \"0xYOUR_DEDICATED_WALLET_KEY\",\n        \"K_DATA_MAX_SPEND_USD\": \"1\"\n      }\n    }\n  }\n}\n```\n\n## Wallet setup\n\nEach tool call spends real USDC, so the server will not start without a key and a budget.\n\n1. Create a **dedicated** wallet — not your main one. The key sits in a config file and every call spends from it.\n2. Fund it with the USDC you're willing to spend on Base. **No ETH needed**: x402 settles with an off-chain EIP-3009 signature and the facilitator pays the gas.\n3. Set `K_DATA_MAX_SPEND_USD`. The server refuses any call that would push cumulative spend past it.\n\n| Variable | Required | Default | Meaning |\n|---|---|---|---|\n| `K_DATA_PRIVATE_KEY` | yes | — | Private key of the paying wallet (USDC on Base) |\n| `K_DATA_MAX_SPEND_USD` | no | `1` | Hard cap on cumulative spend for the session |\n| `K_DATA_BASE_URL` | no | hosted service | Point at a different K-Data deployment |\n\n## Tools\n\n`list_endpoints` is **free** — call it first to see current prices and decide what's worth buying.\n\n| Tool | Price | Returns |\n|---|---|---|\n| `list_endpoints` | free | Catalog, current prices, wallet address, remaining budget |\n| `kimchi_premium` | $0.03 | Dual-basis premium (official + USDT) for up to 10 coins |\n| `kimchi_premium_stats` | $0.12 | Percentile, mean, stdev, z-score of the premium over 1h–90d |\n| `kimchi_premium_history` | $0.08 | Premium time series, both bases |\n| `korea_market_snapshot` | $0.08 | One-call briefing: premium + markets + FX + translated headlines |\n| `research_consensus_ticker` | $0.12 | Analyst consensus for one KRX ticker — target price mean/median/range and spread, rating mix, and every house's revision history |\n| `research_company_ticker` | $0.05 | Archived Korean brokerage reports for one ticker, summarised in English |\n| `research_latest` | $0.02 | Latest Korean equity research across all covered companies |\n| `news_headlines_en` | $0.05 | Korean headlines with English translations |\n| `crypto_krw_markets` | $0.01 | All Upbit KRW markets — volume leaders, gainers, losers |\n| `news_headlines` | $0.01 | Korean headlines, untranslated |\n| `crypto_krw_ticker` | $0.005 | One Upbit KRW quote |\n| `fx_usdkrw` | $0.005 | USD/KRW rate |\n\nPrices are read from the provider's catalog at startup, so this table reflects whatever the service currently charges.\n\n## How payment works\n\nEvery paid endpoint answers an unpaid request with `HTTP 402` and a `PAYMENT-REQUIRED` header describing the price, asset and recipient. This server signs an EIP-3009 authorization for that exact amount and retries; the facilitator settles it on Base. Nothing is held on account — you pay per call, and stop paying when you stop calling.\n\n## License\n\nMIT\n","readmeFilename":"README.md","homepage":"https://k-data-x402-production.theblack1022.workers.dev","repository":{"type":"git","url":"git+https://github.com/juh5ng/k-data-mcp.git"},"bugs":{"url":"https://github.com/juh5ng/k-data-mcp/issues"}}