AI 에이전트 연결 (MCP)
DataSinking은 MCP 서버입니다. 에이전트가 이 서버를 바라보게 하면 미국, 중국, 유럽, 일본, 한국, 대만의 공시 전문을 자연어로 검색하고 읽을 수 있습니다 — 코드 없이, 6개 도구로. 먼저 키를 발급받으세요 — 무료 키 받기. API 레퍼런스의 일부입니다.
클라이언트 선택
| 클라이언트 | 설정 파일 | 호스팅 URL 사용 가능 여부 |
| Claude Code | ~/.claude.json · .mcp.json | 가능 |
| Claude Desktop | Connectors UI · claude_desktop_config.json | 가능 |
| Cursor | .cursor/mcp.json | 가능 |
| OpenAI Codex CLI | ~/.codex/config.toml | 가능 |
| WorkBuddy / CodeBuddy | ~/.workbuddy/mcp.json · ~/.codebuddy/.mcp.json | CodeBuddy만 |
| Doubao Work | in-app connectors, no file | 가능 |
| Devin Desktop | %AppData%\devin\mcp_config.json | 가능 |
| DeepSeek Harness (dsh) | ~/.dsh/profiles/<name>/cordis.patch.yml | 가능 |
| Gemini CLI | ~/.gemini/settings.json | 가능 |
| OpenCode | ~/.config/opencode/opencode.json | 가능 |
| Qoder | ~/.qoder/settings.json (CLI) · Settings → MCP (IDE) | 가능 |
| Reasonix | reasonix.toml · .mcp.json | 가능 |
| Mobile (Kelivo / Joey / Systemprompt) | 앱 내, 설정 파일 없음 | 가능 |
| Any other client | command + args + env | 보통 가능 |
엔드포인트
URL 하나면 끝이고 설치할 것도 없습니다. 인증은 bearer 헤더로 하며, 헤더를 설정할 수 없는 클라이언트에는 ?apikey=를 URL에 붙입니다.
https://api.datasink.ing/mcp Authorization: Bearer YOUR_KEY # or: https://api.datasink.ing/mcp?apikey=YOUR_KEY
Claude Code
.mcp.json · ~/.claude.json
명령 하나면 됩니다 — 안내가 나오면 키를 입력하고, 연결되었는지 확인하세요:
claude mcp add --transport http datasinking https://api.datasink.ing/mcp \ --header "Authorization: Bearer YOUR_KEY" claude mcp list # → datasinking: ✔ Connected
--scope user를 추가하면 이 프로젝트뿐 아니라 모든 프로젝트에서 쓸 수 있습니다. Claude Code가 서버 상태를 직접 점검하므로, claude mcp get datasinking으로 연결이 실패한 이유를 정확히 알 수 있습니다.
Claude Desktop
claude_desktop_config.json
Settings → Connectors → Add → Add custom connector에서 키가 이미 들어간 URL을 붙여 넣으세요:
https://api.datasink.ing/mcp?apikey=YOUR_KEY
키가 URL에 들어 있어야 합니다. 키 없는 URL을 붙여 넣으면 커넥터가 OAuth를 시도하는데, 이 서버에는 OAuth가 없습니다 — 그러면 “Couldn't register with …'s sign-in service.”라는 메시지가 나옵니다. 그다음 앱을 다시 시작하세요. 커넥터는 앱을 시작할 때 로드됩니다.
Cursor
.cursor/mcp.json
{
"mcpServers": {
"datasinking": {
"url": "https://api.datasink.ing/mcp",
"headers": { "Authorization": "Bearer ${env:DATASINK_API_KEY}" }
}
}
}Cursor는 ${env:NAME} 형식으로 보간합니다 — Claude Code처럼 ${NAME}가 아닙니다. 편집 후 Cursor를 다시 시작하세요. 연결 오류는 Output → MCP Logs에서 확인할 수 있습니다.
OpenAI Codex CLI
~/.codex/config.toml
명령 하나면 됩니다 — 설정은 알아서 작성됩니다:
codex mcp add datasinking --url https://api.datasink.ing/mcp \ --bearer-token-env-var DATASINK_API_KEY codex mcp list # → datasinking
실행하기 전에 해당 환경 변수를 설정하세요 — Codex는 키 자체가 아니라 변수의 이름을 저장합니다.
WorkBuddy / CodeBuddy (Tencent)
~/.workbuddy/mcp.json · ~/.codebuddy/.mcp.json
이 둘은 설정 파일이 서로 다른 별개의 제품입니다 — 설정이 “적용되지 않는” 가장 흔한 이유입니다:
// WorkBuddy (desktop app) — ~/.workbuddy/mcp.json
{
"mcpServers": {
"datasinking": {
"command": "npx",
"args": ["-y", "datasinking-mcp"],
"env": { "DATASINK_API_KEY": "YOUR_KEY" }
}
}
}WorkBuddy의 문서에 나온 설정은 stdio 전용이고, type: "http" 형식은 CodeBuddy Code에서 동작합니다. CodeBuddy는 설정을 ~/.codebuddy/.mcp.json에 보관합니다. 어느 쪽이든 편집 후 앱을 다시 시작하세요.
Doubao Work (ByteDance)
no file — configured in the app
WorkBuddy에 대응하는 ByteDance의 제품입니다. 이 제품은 전부 UI에서 설정합니다 — 편집할 설정 파일이 없어서, 위 표의 행들과 같은 패턴을 따르지 않습니다:
技能 · 连接器 · 伙伴 → 新建 → 新建自定义连接器
- Transport: HTTP (로컬 서버를 실행하고 싶다면 STDIO도 제공됩니다)
- URL:
https://api.datasink.ing/mcp - 自定义 Headers:
Authorization=Bearer YOUR_KEY
저장하고 토글이 켜져 있는지 확인하세요. 두 가지는 알아 두면 좋습니다. 사용자 정의 MCP 커넥터는 데스크톱 클라이언트에서만 로드되며 — 브라우저와 모바일 빌드에서는 무시됩니다 — Doubao는 헤더를 그대로 받으므로 여기서는 ?apikey= 대체 방식이 필요하지 않습니다.
Devin Desktop
%AppData%\devin\mcp_config.json
이전 이름은 Windsurf입니다. 올바른 파일은 Cascade → MCP → Open MCP config file에서 열 수 있습니다:
{
"mcpServers": {
"datasinking": {
"serverUrl": "https://api.datasink.ing/mcp",
"headers": { "Authorization": "Bearer ${env:DATASINK_API_KEY}" }
}
}
}원격 서버를 가리키는 필드는 serverUrl이고 url이 아닙니다 — 여기서 유일하게 다른 클라이언트입니다. Windows에서 이 파일은 %AppData%\devin\mcp_config.json이고, macOS와 Linux에서는 ~/.config/devin/mcp_config.json입니다.
DeepSeek Harness (dsh)
~/.dsh/profiles/<name>/cordis.patch.yml
dsh에는 MCP 설정 파일이 없습니다 — 서버가 곧 플러그인입니다. 먼저 프로필에 설치하세요:
dsh plugin --profile web add @deepseek-ai/dsh-mcp-client
그런 다음 해당 프로필의 패치 레이어에 이 행을 추가하세요:
- insert:
- id: mcp-datasinking
name: '@deepseek-ai/dsh-mcp-client'
config:
serverName: datasinking
transport: streamable-http
url: https://api.datasink.ing/mcp
headers:
Authorization: !!js '`Bearer ${process.env.DATASINK_API_KEY}`'
failOnStartupError: truefailOnStartupError: true를 유지하세요. 기본값은 false인데, 이 경우 아무것도 연결되지 않고 오류도 보고되지 않습니다. 도구는 mcp__datasinking__<tool> 형태로 나타납니다.
Gemini CLI
~/.gemini/settings.json
명령 한 줄, 또는 설정 파일을 직접 편집:
gemini mcp add --transport http datasinking https://api.datasink.ing/mcp \ --header "Authorization: Bearer YOUR_KEY" gemini mcp list # → datasinking
설정 파일의 필드는 httpUrl 이지 url 이 아닙니다 —— url 은 SSE를 뜻합니다:
{
"mcpServers": {
"datasinking": {
"httpUrl": "https://api.datasink.ing/mcp",
"headers": { "Authorization": "Bearer ${DATASINK_API_KEY}" }
}
}
}소비자용 Gemini(gemini.google.com → 연결된 앱)는 OAuth만 지원하므로, 거기서는 ?apikey= 로 key를 URL에 넣거나 CLI를 쓰세요.
OpenCode
~/.config/opencode/opencode.json
OpenCode는 ~/.config/opencode/opencode.json 과 프로젝트의 opencode.json 을 병합합니다. MCP 키는 mcp 이며 mcpServers 가 아닙니다:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"datasinking": {
"type": "remote",
"url": "https://api.datasink.ing/mcp",
"oauth": false,
"headers": { "Authorization": "Bearer {env:DATASINK_API_KEY}" }
}
}
}핵심은 두 설정입니다. "oauth": false 는 OpenCode가 우리의 401을 OAuth 챌린지로 오인하는 것을 막습니다 —— 빼면 "키 누락"이 아니라 "인증 오류"가 납니다. 보간 문법은 {env:NAME} 이고, Claude Code와 Cursor는 ${NAME} 을 씁니다.
Qoder
~/.qoder/settings.json (CLI) · Settings → MCP (IDE)
Qoder CLI와 Qoder IDE는 다른 설정을 읽습니다. CLI는 ~/.qoder/settings.json 의 mcpServers 에 추가합니다:
{
"mcpServers": {
"datasinking": {
"type": "http",
"url": "https://api.datasink.ing/mcp",
"headers": { "Authorization": "Bearer YOUR_KEY" }
}
}
}stdio 가 기본 type 이므로 URL에 "http" 가 없으면 시작 오류가 납니다. 도구는 mcp__datasinking__<tool> 로 나타납니다.IDE에서는 Settings(Ctrl Shift ,) → MCP → My Servers → + Add 로 따로 설정합니다 —— IDE는 CLI 파일을 읽지 않습니다.
Reasonix
reasonix.toml · .mcp.json
Reasonix는 공식 MCP Registry를 읽으므로 한 줄 명령이 있습니다. 또는 [[plugins]] 를 ./reasonix.toml (전역은 ~/.reasonix/config.toml)에 직접 선언합니다:
reasonix mcp install io.github.heubme2020/datasinking
# or, by hand:
[[plugins]]
name = "datasinking"
type = "http"
url = "https://api.datasink.ing/mcp"
headers = { Authorization = "Bearer ${DATASINK_API_KEY}" }type 은 기본이 stdio 이므로 "http" 줄이 필수입니다. 콜드 스타트 서버는 백그라운드에서 연결합니다 —— 도구가 아직 안 보이면 재시도하고 설정을 반복 확인하지 마세요. 도구는 mcp__datasinking__<tool> 로 나타납니다.
Mobile (Kelivo / Joey / Systemprompt)
앱 내, 설정 파일 없음
streamable HTTP를 지원하는 모든 모바일 앱에서 동작합니다——설치 불필요, 설정 파일 없음. 앱에서 서버를 추가하세요 (설정 → MCP → 추가):
URL: https://api.datasink.ing/mcp Authorization: Bearer YOUR_KEY # 앱이 헤더를 설정할 수 없으면 key를 URL에 넣습니다: # https://api.datasink.ing/mcp?apikey=YOUR_KEY
동작 확인된 앱: Kelivo (kelivo.psycheas.top), Joey MCP Client (Android), Systemprompt (Android/iOS). 데스크톱과 같은 엔드포인트라 6개 도구와 ?apikey= 폴백 동작이 동일합니다.
기타 MCP 클라이언트
command + args + env
로컬, stdio, Node 18+ 또는 Python 3.8+:
{
"mcpServers": {
"datasinking": {
"command": "npx",
"args": ["-y", "datasinking-mcp"],
"env": { "DATASINK_API_KEY": "YOUR_KEY" }
}
}
}
# Python instead of Node:
# "command": "uvx", "args": ["--from", "datasinking[mcp]", "datasinking-mcp"]에이전트가 사용할 수 있는 것
6개 도구. 각 도구는 REST 엔드포인트와 1:1로 대응하므로, API 레퍼런스 에 있는 것은 무엇이든 질문으로 쓸 수 있습니다.
| list_exchanges | 어떤 시장을 지원하는지, 그리고 규모는 얼마나 되는지 |
| list_stocks | 한 거래소의 종목 |
| list_reports | 한 종목의 공시 — 메타데이터만 |
| get_report | 공시 하나, 전체 텍스트 |
| list_sections | 공시의 장 제목 목록과 분량 |
| get_section | 한 장만 — 토큰 효율적, RAG에 가장 적합 |
첫 테스트로 “DataSinking은 어떤 거래소를 지원하나요?”를 물어보세요 — 에이전트가 list_exchanges를 호출하면 전체 연결이 동작한다는 증거입니다. 그다음에는 “도요타 최신 연간 보고서는 리스크에 대해 뭐라고 하나요?”를 시도해 보세요.
연결되지 않을 때
거의 모든 연결 실패는 다음 세 가지 중 하나입니다:
| {"detail":"Missing API key"} | 아무것도 전송되지 않았습니다 — 클라이언트를 실행하기 전에 환경 변수가 설정되지 않았습니다. |
| {"detail":"无效的 API key"} | 키가 인식되지 않았습니다 — 공백이 섞였는지, Bearer 가 빠지지 않았는지 확인하세요. |
| no tools | 클라이언트를 다시 시작하세요 — 클라이언트는 모두 실행 시점에 MCP 설정을 읽습니다. |
“내 클라이언트 설정이 잘못됐다”와 “내 키가 틀렸다”를 구분하려면 클라이언트를 아예 건너뛰고 직접 확인하세요:
curl -s -X POST https://api.datasink.ing/mcp \
-H "Authorization: Bearer YOUR_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'클라이언트별 문제 해결 — 각 클라이언트가 실제로 출력하는 오류 포함 — 은 위에 링크된 가이드의 docs/mcp/에 있습니다.
출처 표기를 유지하세요
모든 응답에는 공시가 나온 공식 플랫폼을 밝히는 source 필드가 있습니다 — SEC EDGAR (미국), cninfo.com.cn (중국), filings.xbrl.org (유럽), EDINET (일본), DART (한국), MOPS (대만). MCP 도구 설명에는 인용할 때 이 필드를 유지하라고 모델에 지시하고 있습니다. 재배포할 때도 이 필드를 제거하지 마세요.