Kunkafa
Market forecasts with their own track record, inside Claude, ChatGPT and other MCP apps.
사용해야 할까요
품질 및 안전성
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"kunkafa": {
"url": "https://kunkafa.com/mcp"
}
}
}원격 엔드포인트
https://kunkafa.com/mcpstreamable-http할 수 있는 일
도구 목록
도구 (9)
🟢list_markets(cursor, limit)
Markets this account can read, each with the durations that have forecasts now, and what it follows. Page with page.nextCursor.
입력 스키마
{
"type": "object",
"properties": {
"cursor": {
"description": "page.nextCursor from the previous reply, to read the next page; omit for the first page",
"type": "string",
"minLength": 1,
"maxLength": 256,
"pattern": "^[A-Za-z0-9_-]+$"
},
"limit": {
"description": "Items per page, 1 to 50; default 50",
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_outlooks(market, durations, minDuration, maxDuration, maxDurationExclusive, ...)
Current forecasts for one market; one market per call by design, so data is not pulled in bulk. Choose durations (exact or a range) and optionally direction, confidence or target filters. At most 6 durations and 72 forecasts per call; calls can run in parallel.
입력 스키마
{
"type": "object",
"properties": {
"market": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
"description": "Market slug from list_markets, for example bitcoin"
},
"durations": {
"description": "Exact duration labels from list_markets, for example [\"1 hour\", \"6 hours\"]",
"minItems": 1,
"maxItems": 6,
"type": "array",
"items": {
"type": "string",
"minLength": 2,
"maxLength": 24,
"pattern": "^\\d{1,5}\\s*[A-Za-z]{1,8}$"
}
},
"minDuration": {
"description": "Shortest duration to include, for example \"1 hour\"",
"type": "string",
"minLength": 2,
"maxLength": 24,
"pattern": "^\\d{1,5}\\s*[A-Za-z]{1,8}$"
},
"maxDuration": {
"description": "Longest duration to include, for example \"1 day\"",
"type": "string",
"minLength": 2,
"maxLength": 24,
"pattern": "^\\d{1,5}\\s*[A-Za-z]{1,8}$"
},
"maxDurationExclusive": {
"description": "true for \"less than maxDuration\"; default includes maxDuration",
"type": "boolean"
},
"direction": {
"description": "Default both",
"type": "string",
"enum": [
"up",
"down",
"both"
]
},
"minProbabilityPercent": {
"description": "Only forecasts whose probability (Kunkafa's confidence) is at least this",
"type": "number",
"minimum": 0,
"maximum": 100
},
"maxProbabilityPercent": {
"description": "Only forecasts whose probability is at most this",
"type": "number",
"minimum": 0,
"maximum": 100
},
"minTargetPercent": {
"description": "Only targets at least this far from the reference price, in percent",
"type": "number",
"minimum": 0,
"maximum": 10000
},
"maxTargetPercent": {
"description": "Only targets at most this far from the reference price, in percent",
"type": "number",
"minimum": 0,
"maximum": 10000
}
},
"required": [
"market"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_performance(market, probabilityPercent)
How often past forecasts touched their target, by confidence level and period. Pass probabilityPercent for the matching row (headline).
입력 스키마
{
"type": "object",
"properties": {
"market": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
"description": "Market slug from list_markets, for example bitcoin"
},
"probabilityPercent": {
"description": "A forecast's confidence; the headline shows past results at the nearest published level at or below it",
"type": "number",
"minimum": 0,
"maximum": 100
}
},
"required": [
"market"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_results(market, durations)
Recent example forecasts with their outcomes; not a full record.
입력 스키마
{
"type": "object",
"properties": {
"market": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
"description": "Market slug from list_markets, for example bitcoin"
},
"durations": {
"description": "Only these duration labels, for example [\"1 hour\", \"1 day\"]; default every duration",
"minItems": 1,
"maxItems": 6,
"type": "array",
"items": {
"type": "string",
"minLength": 2,
"maxLength": 24,
"pattern": "^\\d{1,5}\\s*[A-Za-z]{1,8}$"
}
}
},
"required": [
"market"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_usage(cursor, limit)
Remaining allowances, what one get_outlooks call returns, and this connection's permissions, canFollow and expiry. Uses no allowance.
입력 스키마
{
"type": "object",
"properties": {
"cursor": {
"description": "page.nextCursor from the previous reply, to read the next page; omit for the first page",
"type": "string",
"minLength": 1,
"maxLength": 256,
"pattern": "^[A-Za-z0-9_-]+$"
},
"limit": {
"description": "Items per page, 1 to 50; default 50",
"type": "integer",
"minimum": 1,
"maximum": 50
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🔴follow_market(market, confirmReplacement)
Follow a market for this account. Check canFollow in get_usage first. Replacing a followed market is allowed once every 30 days: ask the user, then call with confirmReplacement true.
입력 스키마
{
"type": "object",
"properties": {
"market": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
"description": "Market slug from list_markets, for example bitcoin"
},
"confirmReplacement": {
"description": "Set true only after the user agreed to replace a market they already follow",
"type": "boolean"
}
},
"required": [
"market"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🔴unfollow_market(market)
Stop following a market; its data stops being readable. Check canFollow in get_usage first.
입력 스키마
{
"type": "object",
"properties": {
"market": {
"type": "string",
"minLength": 1,
"maxLength": 200,
"pattern": "^[a-z0-9]+(?:-[a-z0-9]+)*$",
"description": "Market slug from list_markets, for example bitcoin"
}
},
"required": [
"market"
],
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_glossary
What every Kunkafa term and number means and how to read them. Call once before explaining results. No sign-in needed.
입력 스키마
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}🟢get_account_links
Links to create an account, sign in and manage connections.
입력 스키마
{
"type": "object",
"properties": {},
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false
}커뮤니티
증거