Files
schwab-mcp-custom/compose.yaml
b3nw 27d1e2be10
All checks were successful
Build and Push Docker Image / build (push) Successful in 1m4s
fix: resolve report_url=None for blob-URL tickers and fix dataclass serialization
When Schwab uses modern blob URLs (increasingly common), find_report()
returns __CLICK_TO_OPEN__ and the scraper skips storing a report_url
even though the PDF downloads and parses successfully. This caused
agents to see report_url=None for tickers like PEP/BR/DPZ/MSCI/BMI.

Changes:
- Fix serialize() to use dataclasses.asdict() instead of str() for
  dataclass payloads, producing proper JSON objects instead of Python
  repr strings
- Add /reports/{ticker}/pdf endpoint to serve cached Morningstar PDFs
- Enrich report_url with the MCP's own PDF endpoint when blob URLs
  were used and the report was successfully downloaded
- Add SCHWAB_MCP_BASE_URL env var to compose for self-referential URLs
2026-05-21 14:46:08 +00:00

1.1 KiB