AI financial document analyst that answers questions about uploaded financial documents using RAG and agentic orchestration
FinLens is a Streamlit frontend application, not an MCP server. No MCP protocol implementation detected. Tools are defined as Streamlit UI components calling internal Python functions, not as MCP tool definitions with schemas. All 7 tools lack formal JSON Schema input definitions, parameter type declarations, and structured output schemas. Descriptions exist but are UI-oriented, not LLM-optimized. No error handling guidance, no permission gates, no audit trails. This is a chat UI wrapper around a RAG pipeline, not a production-grade MCP server.
Compares your financial data against a public company's SEC filings (free, real-time data from SEC EDGAR). Use this when the user mentions a public company by name or ticker and wants to benchmark (e.g. 'How does our revenue compare to Tesla?', 'Benchmark margins against Apple').
Extracts numbers from documents and performs arithmetic. Use this when the answer requires computation — averages, totals, percentages, growth rates, or any derived metric not directly stated in the text (e.g. 'What is average monthly revenue?', 'What percentage of revenue is R&D spend?').
Compares financial figures across documents or time periods. Use this for questions asking to compare, contrast, or find differences (e.g. 'Compare invoice total vs Q3 revenue', 'How did margins change?').
Computes standard financial ratios from uploaded data. Use this for questions about financial health metrics (e.g. 'What is the current ratio?', 'What is the gross margin?', 'Calculate debt-to-equity').
Creates Plotly visualizations (bar charts, pie charts, waterfall charts) from document data. Use this when the user asks to visualize, chart, graph, plot, or show a breakdown of data.
No MCP server implementation detected. This is a Streamlit web app, not an MCP server. Cannot be used with MCP clients or hosted agents.
No JSON Schema input definitions for any tool. All tools accept only a free-form 'query' string with no type constraints, enums, or validation rules. Violates pattern:constrained-input.
No documented output schemas. Tools return unstructured results (text, charts, dashboards) with no field definitions. LLMs cannot plan downstream calls or extract structured data.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 21 | <=2025-11-25 | v2 |
Produces a financial overview dashboard with key metrics from all uploaded documents. Use this when the user asks for a summary, overview, dashboard, or snapshot of their financial position.
Searches the user's uploaded documents and returns an answer with source citations. Use this for factual questions that can be answered directly from the text (e.g. 'What was Q3 revenue?').
No error handling or recovery guidance. Tools fail silently or return generic errors with no actionable next steps for agents.
No security controls: no permission gates, no audit logging, no secret injection pattern. Credentials (GOOGLE_API_KEY) hardcoded in config module.