How florentaden/agent-climate-disclosure works
This repository analyzes climate-disclosure PDFs through three user-facing modes: automated batch analysis, Claude Code via MCP, and interactive chat. The shared RAG layer extracts PDF text and image OCR, indexes parent/child chunks in Qdrant, and supplies search and page retrieval to agents. Batch analysis produces structured answers and JSON output; MCP supports interactive evidence gathering and saving; chat supports ad-hoc exploration. The README documents the three modes; the UI and some integrations are unsampled, so their internal wiring is not expanded.
Main entry points: pipeline.py Batch runner · rag.py PDF RAG · mcp_server.py MCP server · graph.py Chat agent
Components 17
Batch Analysis
- Batch runner
pipeline/pipeline.py - Analyst agent
pipeline/pipeline.py - Analysis tools
pipeline/toolkit.py - Answer verifier
pipeline/pipeline.py - Answer JSON
pipeline/pipeline.py
MCP Analysis
- MCP server
mcp/mcp_server.py - MCP ingest
mcp/ingest.py - Saved answers
mcp/mcp_server.py
Interactive Chat
- Chat interface
agent-chat-ui - Chat agent
climate_agent/graph.py
Other components
- Disclosure PDFs
- Claude Code
- Chat user
- Chat model
Connections 20
- Disclosure PDFs → Batch runner: reads PDFs
- Batch runner → PDF RAG: uploads collection
- Batch runner → Analyst agent: starts analysis
- Analyst agent → Chat model: prompts model
- Analyst agent → Analysis tools: dispatches tools
- Analysis tools → PDF RAG: searches pages
- Analyst agent → Batch runner: returns answers
- Batch runner → Answer verifier: can run verifier
- Batch runner → Answer JSON: writes JSON
- Claude Code → MCP server: calls MCP tools
- Disclosure PDFs → MCP ingest: reads PDFs
- MCP ingest → PDF RAG: uploads collection
- MCP server → PDF RAG: searches pages
- MCP server → Saved answers: writes answers
- Chat user → Chat interface: asks questions
- Chat interface → Chat agent: sends messages
- Chat agent → Chat model: prompts model
- Chat agent → RAG tools: dispatches tools
- RAG tools → PDF RAG: searches pages
- PDF RAG → Qdrant: reads writes