
Earnings Watch
io.github.benjamin-di由 GitHub 帳號 benjamin-di 發布v0.3.3更新於 Nov 4, 2026
Verified issuer earnings calendars and results documents
概覽
本機 MCP 伺服器,讓助理取得經核驗的發行人財報行事曆、事件證據與官方業績文件連結,並維護個人追蹤清單。
- 可以做什麼
- 查詢帶有時間不確定性的即將到來財報日期,並檢視事件證據、修訂與近期歷史
- 取得官方業績文件連結及其核驗狀態,並讀取以游標為基礎的公開變更串流
- 管理個人追蹤清單:追蹤或取消追蹤發行人、排入登記、處理歧義
- 規劃選用的外部行事曆操作,並記錄用戶端確認的寫入
- 檢視目錄與維護狀態,使用內建提示詞與即將事件行事曆資源
- 適用情境
- 適合需要以引用證據而非猜測日期來追蹤公司財報日期與業績文件,並維護個人追蹤清單或把財報事件同步到外部行事曆的情境。
- 執行需求
- 需要 Python 3.12+ 並在本機安裝該套件(例如透過 uv tool install),再設定以 stdio 執行 serve 指令的用戶端。資料存於 SQLite;抓取發行人頁面與模型擷取在另外的維護執行中進行。選用的模型後端需自行登入 Claude Code 或 Codex CLI;使用 OpenAI 相容的 Codex 端點需設定 codex_base_url 與 codex_key_env。未附帶發行人資料庫或行情資料訂閱。
安裝
在 SourceWeft 中
- 開啟 儀表板中的 Earnings Watch,將其新增到工作區。
- 為需要使用其工具的對話啟用該服務。
Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。
其他 MCP 客戶端
參照 儲存庫 中的啟動說明。
README
Earnings Watch
Verified issuer earnings calendars and results documents through a CLI, Python API and MCP server. Models propose dates; deterministic checks require quoted evidence and consistent issuer, period and timing. A call time never silently becomes a publication time.
Calendar updates are optional. Earnings Watch produces an operation plan; your MCP client uses its external Outlook app to apply it and acknowledges confirmed writes. No Microsoft credentials or calendar SDK are required by this package.
Maintained source and contributions: benjamin-di/earnings-watch. See Source and releases.
Requires Python 3.12+. Install the published package with uv tool install earnings-watch, or develop from a source checkout:
The example uses reserved domains and fictional data; replace its source URLs and issuer metadata before fetching. There is no bundled issuer universe or market-data subscription.
Maintenance and models
Serving reads SQLite and updates personal follows/ledgers; it never fetches issuer pages or calls a model. Run maintenance separately:
The default backend is none: it preserves existing dates and still polls official release providers. To extract new dates, install and sign into your own Claude Code or Codex CLI, then configure it in earnings-watch.toml:
Supported minimum versions are Claude Code 2.1.312 and Codex 0.164.0. Run earnings-watch doctor --live to check capabilities and an optional model canary. The package has no login flow. Model usage follows your CLI account's limits and terms. Only an explicit sign-in or account-limit refusal, or a configured Codex endpoint that is unreachable or failing before any output, tries the next backend; a timed-out run is not repeated in the same tick.
Codex runs with --ignore-user-config. To send it through an OpenAI Responses-compatible endpoint, set both codex_base_url and codex_key_env (the name of the environment variable holding its key) under [llm]; the key itself never goes in the file. Use https:// for any endpoint that is not on the local host. Claude Code receives ANTHROPIC_BASE_URL and CLAUDE_CODE_MAX_RETRIES from the environment, so a bounded retry count lets an unavailable endpoint fail before the task timeout.
MCP
A local client configuration, after initialization:
Prompts: earnings_briefing, results_brief, sync_to_my_outlook. Resource: earnings://upcoming.ics. Exact times require verified clock and timezone evidence; otherwise calendar entries are all-day. Outlook operations never include attendees.
HTTP standalone mode uses a separate bearer token per person at /users/<id>/mcp. Gateway mode accepts a configured backend bearer and an immutable subject header from the admission gateway at /mcp. These modes are separate trust boundaries; see permissions.
Connections page and notifications
The optional Connections page provides Upcoming, Your companies, Notifications and Calendar in one place. Sign in, add companies or preview a holdings import, then subscribe to your private calendar feed. Facts are shared; holdings, watchlists, mutes, preferences and receipts are personal.
Results-out notifications are enabled for new people. Daily briefs and urgent changes are optional. Mail submission requires a separately configured transport; the server and acquisition worker never send messages themselves.
Docker Compose
Save the returned token privately and use it only on that person's HTTP path. The server binds to loopback by default. Both images run as uid 1000; Compose drops capabilities, prevents privilege escalation and mounts the root filesystem read-only. The worker image includes pinned model CLIs; their auth volume is optional with backends=["none"]. Configure CLI sign-in outside the read-only worker before enabling model maintenance. Protect auth files and the data volume from other users.
Use --config PATH, --person ID, and --json with the CLI. Settings come from TOML and EARNINGS_WATCH_* environment variables. See operations, architecture, providers and design decisions.
Development
make check verifies lock drift, lint, formatting, types, dependency boundaries, offline tests and wheel/source builds. Tests use synthetic issuers and fake network/model/account boundaries. Real-model and real-page checks are separate operator gates. Read CONTRIBUTING.md and SECURITY.md.
See implementation status for completed capabilities, release gates and the production adapter work still required before cutover.
來源:README.md,提交 0d3c6cc
工具
0版本歷史
4- v0.3.3最新Nov 4, 2026
- v0.3.1Nov 1, 2026
- v0.2.1Oct 31, 2026
- v0.1.0Oct 30, 2026
評分
已滿足適用檢查項的 50%
該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。
- 近 30 天內可連通25 分
請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。
- 已宣告認證方式10 分
請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。
- 已列出工具15 分
請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。
- 描述必需15 分
- 圖示10 分
- 文件15 分
- 授權條款10 分