All checks were successful
Build and Push Docker Image / build (push) Successful in 1m4s
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
20 KiB
20 KiB