Skip to content

Configuration and Authentication

Mofesto edited this page Aug 7, 2026 · 1 revision

設定與認證

Server 啟動時由 .env 或作業系統環境變數讀取設定。.env 僅適合本機開發,正式環境應使用平台的 secret store 或受控環境變數注入。

認證方式

傳統 PFX 登入

必要欄位:

變數 必填 說明
FUBON_USERNAME 富邦 personal ID/帳號識別
FUBON_PASSWORD 登入密碼
FUBON_PFX_PATH PFX 憑證絕對路徑
FUBON_PFX_PASSWORD PFX 密碼,無密碼時可留空

底層呼叫形狀:

sdk.login(username, password, pfx_path, pfx_password)

SDK 2.2.8 API-Key 登入

必要欄位:

變數 必填 說明
FUBON_USERNAME personal_id
FUBON_API_KEY API Key
FUBON_PFX_PATH 金鑰管理頁匯出的網頁憑證
FUBON_PFX_PASSWORD 憑證密碼

底層呼叫形狀:

sdk.apikey_login(personal_id, api_key, cert_path, cert_password)

本版登入不接受 FUBON_API_SECRET。API Key 與 PFX 需配套使用。若同時存在 FUBON_API_KEY 與傳統密碼設定,API-Key 路徑優先。

共用設定

變數 預設值 說明
FUBON_DATA_DIR 平台使用者資料目錄 SQLite 歷史行情快取與執行資料目錄
FUBON_MCP_TRANSPORT stdio stdiostreamable-httpsse
FUBON_MCP_HOST 127.0.0.1 HTTP/SSE 監聽介面
FUBON_MCP_PORT 8000 1–65535
FUBON_MCP_HTTP_PATH /mcp Streamable HTTP endpoint
FUBON_MCP_STATELESS_HTTP true 是否採用 stateless HTTP
FUBON_MCP_JSON_RESPONSE false Streamable HTTP 是否使用 JSON response
FUBON_MCP_SSE_PATH /sse 舊式 SSE endpoint
FUBON_MCP_MESSAGE_PATH /messages/ SSE message endpoint

布林值接受 true/false1/0yes/noon/off;其他值會啟動失敗。

Transport 選擇

Transport 使用情境 特性
stdio VS Code、Claude Desktop 等本機 Host 預設、程序一對一、無公開 port
streamable-http 服務化或容器部署 MCP 2026-07-28;預設 stateless,不依賴 sticky session
sse 仍需舊版 SSE client 時 相容用途,不是新部署首選

Streamable HTTP 範例:

FUBON_MCP_TRANSPORT=streamable-http
FUBON_MCP_HOST=127.0.0.1
FUBON_MCP_PORT=8000
FUBON_MCP_HTTP_PATH=/mcp
FUBON_MCP_STATELESS_HTTP=true
FUBON_MCP_JSON_RESPONSE=false

stateless 模式下,每個 request 使用獨立 transport,不應要求 Mcp-Session-Id 或 sticky routing。呼叫端仍需送出正確的 MCP protocol metadata 與 headers。

資料目錄與快取

FUBON_DATA_DIR 應指向只有服務帳號可存取的持久化路徑。historical_candles 會在其中建立 stock_data.db;只有未還原、日線、完整欄位查詢可共用這份 SQLite 快取。adjusted=true、非日線或指定 fields 的查詢會直接走官方 API,避免混用不同語意的 K 線。

安全建議

  • 使用絕對 PFX 路徑,並限制檔案 ACL。
  • 不要把密碼、API Key 或完整 PFX 路徑寫入 issue、log 或 Wiki。
  • .env 必須維持未追蹤;提交前執行 git status --short
  • HTTP 模式預設維持 loopback。若確實需要跨機存取,應另加反向代理、TLS、身分驗證、網路 ACL 與稽核。
  • 輪換 key 或憑證後要重啟 server,並先用唯讀工具確認登入。

Clone this wiki locally