Guides / MCP
MCP 接続
Claude、ChatGPT、Cursor などの AI ツールから、Phoenix AI の開示・財務・株価データをツールとして利用できます。Data API キー(ck_live_)で接続すると Data API ツールが、PRO API キーまたは OAuth で接続すると対話型リサーチを含む PRO ツールが使えます。プランと上限はそれぞれの API のものがそのまま適用されます。
キーによって使えるツール
ck_live_…)で接続すると Data API ツールが、PRO API キー(ck_pers_…)または OAuth で接続すると PRO ツールが表示されます。Data API キーで ask_phoenix などの PRO ツールを呼び出した場合や、API ドキュメント用セッションキー(ck_docs_…)で接続した場合は WRONG_KEY_SCOPE が返ります。下のData API キーで接続をご覧ください。サーバー情報
| 項目 | 値 |
|---|---|
| サーバー URL | https://www.chickstockfi.com/openapi/pro/v1/mcp |
| トランスポート | Streamable HTTP(JSON-RPC 2.0)、ステートレス。POST のみ受け付け、GET(SSE)・DELETE には 405 を返します。 |
| 認証 | Data API キー(Authorization: Bearer ck_live_…)— Data API ツール · PRO API キー(Authorization: Bearer ck_pers_…)または OAuth 2.1(PKCE · 動的クライアント登録)— PRO ツール |
| スコープ | mcp のみ。利用できるツールはアカウントの PRO プランによって決まります。 |
| 必要なプラン | Data API キー:Data API プラン(PoC · Launch · Business · Scale · Enterprise)。PRO API キー・OAuth:PRO プラン(Data · Ask · Bundle のいずれか)。Data のみの場合は質問ツールが、Ask のみの場合はデータツールが使えません。 |
OAuth の認可サーバー(issuer)は https://www.chickstockfi.com/openapi/pro/v1 です。MCP 接続には www.chickstockfi.com のアドレスを使用してください。
Data API キーで接続
Data API のお客様は、Data API キー(ck_live_…)を Authorization ヘッダーに入れて接続します。PRO API プランは不要です。サーバー URL は共通で、どのキーで接続するかによって使えるツールが変わります。
- ツール 1 つが Data API のエンドポイント 1 つに対応します。ツール呼び出し 1 回は Data API リクエスト 1 回で、REST と同じ 1 日の上限・1 分あたりの上限で数えます。
tools/listには、そのキーで使えるツールだけが表示されます。契約していない市場のツールは表示されません(韓国のみの契約ならget_earnings_calendarはありません)。旧 Free キーにはget_news・search_news・grounded_answer・get_api_usageのみ表示されます。- 結果は REST のレスポンス本文に
usageを加えた形です。quota(1 日)・rate_limit(1 分あたり)、AI 呼び出し上限のあるアカウント(PoC · Launch · Business · Scale)ではai_quotaも含まれます。 - エラーコードとメッセージは REST と同じです。例:
MARKET_NOT_ENTITLED、PLAN_REQUIRED、POC_ENDED、QUOTA_EXCEEDED、RATE_LIMITED、AI_QUOTA_EXCEEDED。PoC が終了すると、接続の段階で403 POC_ENDEDが返ります。 - OAuth ログインは PRO アカウント用です。Data API キーはヘッダーで接続してください。API ドキュメントのセッションキー(
ck_docs_…)では接続できず(401 WRONG_KEY_SCOPE)、ask_phoenixなどの PRO ツールを呼ぶとWRONG_KEY_SCOPEが返ります。
Claude Code
claude mcp add --transport http phoenix-data https://www.chickstockfi.com/openapi/pro/v1/mcp \
--header "Authorization: Bearer $PHOENIX_DATA_KEY"Claude Desktop
claude_desktop_config.json
{
"mcpServers": {
"phoenix-data": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://www.chickstockfi.com/openapi/pro/v1/mcp", "--header", "Authorization:${PHOENIX_AUTH}"],
"env": { "PHOENIX_AUTH": "Bearer ck_live_xxxxxxxx" }
}
}
}Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"phoenix-data": {
"url": "https://www.chickstockfi.com/openapi/pro/v1/mcp",
"headers": { "Authorization": "Bearer ck_live_xxxxxxxx" }
}
}
}AI 呼び出し
grounded_answer は回答モデルを呼び出すたびに AI 呼び出しを 1 回使います。get_disclosure_summary・get_stock_briefing は要約・ブリーフィングを新しく作るときだけ 1 回使います。run_data_query はモデルを呼び出さないためカウントしません。上限は等級ごとの1日の AI 呼び出し上限で、REST と合算します(レート制限とクォータ)。
Data API ツール
エンドポイントのパスは https://api.chickstockfi.com/openapi/v1 配下です。
| ツール | Data API エンドポイント | 市場 | 備考 |
|---|---|---|---|
get_company_financials | GET /companies/{symbol}/financials | KR · US | |
get_company_metrics | GET /companies/{symbol}/metrics | KR · US | |
get_company_segments | GET /companies/{symbol}/segments | KR · US | |
get_company_dividends | GET /companies/{symbol}/dividends | KR · US | |
get_company_consensus | GET /companies/{symbol}/consensus | KR · US | |
get_company_guidance | GET /companies/{symbol}/guidance | KR · US | |
get_us_earnings_surprises | GET /companies/{symbol}/earnings-surprises | US | |
get_us_analyst_ratings | GET /companies/{symbol}/analyst-ratings | US | |
get_company_disclosures | GET /companies/{symbol}/disclosures | KR · US | |
get_net_income_split | GET /companies/{symbol}/net-income-split | KR | |
get_quote | GET /quotes/{symbol} | KR | |
get_disclosure_text | GET /disclosures/{id} | KR | |
get_disclosure_summary | GET /disclosures/{id}/summary | KR | 新規作成時に AI 呼び出し |
get_stock_briefing | GET /briefings/{symbol} | KR | 新規作成時に AI 呼び出し |
get_major_holders | GET /major-holders/{symbol} | KR | |
get_insider_trades | GET /insider-trades/{symbol} | KR | |
get_treasury_stock | GET /treasury/{symbol} | KR | |
get_employees | GET /employees/{symbol} | KR | |
get_credit_ratings | GET /credit-ratings/{symbol} | KR | |
get_dividend_table | GET /dividends/{symbol} | KR | |
get_corporate_actions | GET /corporate-actions[/{symbol}] | KR | |
get_filing_events | GET /events | KR | |
get_ir_calendar | GET /ir-calendar | KR | |
get_ir_materials | GET /ir-materials | KR | |
get_ipo_offerings | GET /ipo-offerings | KR | |
get_ipo_listings | GET /ipo-listings | KR | |
get_clinical_trials | GET /clinical-trials | KR | |
get_earnings_calendar | GET /earnings | US | |
get_economic_calendar | GET /economic-calendar | KR · US | |
get_news | GET /news[/{symbol}] | KR · US | Free キーも可 |
search_news | GET /search | KR | Free キーも可 |
grounded_answer | GET /rag | KR · US | AI 呼び出し · Free キーも可 |
run_data_query | POST /query | KR · US | |
get_api_usage | GET /key | KR · US | Free キーも可 |
クライアント別の接続方法
Claude Code
# PRO API キーで接続
claude mcp add --transport http phoenix https://www.chickstockfi.com/openapi/pro/v1/mcp \
--header "Authorization: Bearer $PHOENIX_PRO_KEY"
# OAuth で接続: ヘッダーなしで追加し、Claude Code で /mcp → phoenix → 認証
claude mcp add --transport http phoenix https://www.chickstockfi.com/openapi/pro/v1/mcpClaude Desktop
キーを使わずに接続する場合は、設定 → コネクタ → カスタムコネクタを追加 でサーバー URL を入力して接続します。ブラウザでログインして同意すれば完了です。キーで接続する場合は、claude_desktop_config.json で mcp-remote を使います。
claude_desktop_config.json
{
"mcpServers": {
"phoenix": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://www.chickstockfi.com/openapi/pro/v1/mcp", "--header", "Authorization:${PHOENIX_AUTH}"],
"env": { "PHOENIX_AUTH": "Bearer ck_pers_xxxxxxxx" }
}
}
}claude.ai(Web・アプリ)
設定 → コネクタ → カスタムコネクタを追加 → URL にサーバー URL を入力 → 接続 → ログイン → 同意。OAuth のみに対応しています。
ChatGPT
開発者モードでアプリ・コネクタを作成し、MCP サーバーの URL に同じアドレスを入力して、認証方式に OAuth を選びます。
Cursor
~/.cursor/mcp.json
{
"mcpServers": {
"phoenix": {
"url": "https://www.chickstockfi.com/openapi/pro/v1/mcp",
"headers": { "Authorization": "Bearer ck_pers_xxxxxxxx" }
}
}
}その他の MCP クライアント
Streamable HTTP に対応していれば、サーバー URL と Authorization ヘッダーを設定するだけで接続できます。接続の確認は curl でも行えます。
curl -s https://www.chickstockfi.com/openapi/pro/v1/mcp \
-H "Authorization: Bearer $PHOENIX_PRO_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'OAuth のフロー
- クライアントがキーなしでサーバーを呼び出すと、
401と保護リソースメタデータの URL が返ります。 - メタデータから認可サーバーを特定し、動的クライアント登録(
/oauth/register)を行います。 - ブラウザで
/oauth/authorize→ ログイン → 同意画面へと進みます。同意画面には、アプリ名、リダイレクト先 URL、アカウント、プランで利用できる機能が表示されます。 - 承認すると、クライアントが認可コードをトークンに交換します(PKCE S256 必須)。アクセストークン(
ck_mcp_at_…)の有効期間は1時間、リフレッシュトークンは30日で、使用するたびに更新されます。 - 承認には有効な PRO プランが必要です。トークンの取得後も、リクエストごとにプランを再確認します。
HTTP/2 401
WWW-Authenticate: Bearer resource_metadata="https://www.chickstockfi.com/openapi/pro/v1/.well-known/oauth-protected-resource/mcp", scope="mcp"| パス | 用途 |
|---|---|
/.well-known/oauth-protected-resource/mcp | 保護リソースメタデータ(RFC 9728) |
/.well-known/oauth-authorization-server | 認可サーバーメタデータ(RFC 8414) |
/oauth/register | 動的クライアント登録(RFC 7591) |
/oauth/authorize | 認可リクエスト → ログイン・同意 |
/oauth/token | 認可コードの交換 · トークンの更新 |
/oauth/revoke | トークンの失効(RFC 7009) |
パスはすべて https://www.chickstockfi.com/openapi/pro/v1 の配下にあります。アカウントあたりの有効な接続は20件までで、超えると古い接続から順に切断されます。
PRO ツール(PRO API キー · OAuth)
| ツール | プランの商品 | 機能 |
|---|---|---|
search_disclosures | Data | 企業・市場・期間・種類で韓国・米国の開示を検索(保存済みの AI 要約を含む) |
get_disclosure | Data | 開示1件のメタデータ・AI 要約・様式からの抽出値。指定すれば原文テキストも取得 |
get_company_snapshot | Data | 株価・バリュエーション・財務比率・業種 |
get_financials | Data | 財務諸表の勘定科目行(値・単位・報告書・開示日・原文リンク) |
variance_table | Data | 業績差異表(原文の実績値 · 会社ガイダンス · 発表前のコンセンサス) |
fact_check | Data | 数値を含む文章を開示の原文と照合(モデルは呼び出しません) |
ask_phoenix | Ask | Phoenix AI PRO に質問 |
get_ask_result | Ask | 質問の結果を取得 |
get_account_usage | すべてのプラン | プランと本日・今月の使用量 |
PRO の上限
- ツールの呼び出し1回が、1日の呼び出し1回としてカウントされます。REST の呼び出しと合算します。
get_ask_result・get_account_usageはカウントしません。 - キーで接続した場合は、REST と同じ1秒あたりのバケットを使います。OAuth で接続した場合は、接続ごとに別のバケットになります。
- 接続手続き(initialize · tools/list)は1日の呼び出しにカウントしません。
- 上限に達すると、ツールの結果がエラー(
isError)として返り、RATE_LIMITED、DAILY_QUOTA_EXCEEDEDなどのコードが含まれます。コードの意味はエラーコードをご覧ください。
接続できない場合