A comprehensive Model Context Protocol (MCP) package for analyzing startup investment risks using AI-powered assessment across multiple risk categories. Built with FastMCP and Google Gemini AI.
PitchLense is a comprehensive AI-powered startup analysis platform that provides detailed risk assessment and growth potential evaluation for early-stage ventures. The platform analyzes multiple dimensions of startup risk and provides actionable insights for investors, founders, and stakeholders.
- Website Link : https://www.pitchlense.com
- Web App Github Repo: https://github.com/connectaman/PitchLense
Watch our comprehensive tutorial video to learn how to use PitchLense effectively:
Click the image above to watch the tutorial on YouTube
- Market Risk Analyzer - TAM, growth rate, competition, differentiation
- Product Risk Analyzer - Development stage, market fit, technical feasibility, IP protection
- Team Risk Analyzer - Leadership depth, founder stability, skill gaps, credibility
- Financial Risk Analyzer - Metrics consistency, burn rate, projections, CAC/LTV
- Customer Risk Analyzer - Traction levels, churn rate, retention, customer concentration
- Operational Risk Analyzer - Supply chain, GTM strategy, efficiency, execution
- Competitive Risk Analyzer - Incumbent strength, entry barriers, defensibility
- Legal Risk Analyzer - Regulatory environment, compliance, legal disputes
- Exit Risk Analyzer - Exit pathways, sector activity, late-stage appeal
- Comprehensive Risk Scanner - Full analysis across all risk categories
- Quick Risk Assessment - Fast assessment of critical risk areas
- Peer Benchmarking - Compare metrics against sector/stage peers
- SerpAPI Google News Tool - Fetches first-page Google News with URLs and thumbnails
- Perplexity Search Tool - Answers with cited sources and URLs
| Category | Key risks |
|---|---|
| Market | Small/overstated TAM; weak growth; crowded space; limited differentiation; niche dependence |
| Product | Early stage; unclear PMF; technical uncertainty; weak IP; poor scalability |
| Team/Founder | Single-founder risk; churn; skill gaps; credibility; misaligned incentives |
| Financial | Inconsistent metrics; high burn/short runway; optimistic projections; unfavorable CAC/LTV; low margins |
| Customer & Traction | Low traction; high churn; low retention; no marquee customers; concentration risk |
| Operational | Fragile supply chain; unclear GTM; operational inefficiency; poor execution |
| Competitive | Strong incumbents; low entry barriers; weak defensibility; saturation |
| Legal & Regulatory | Grey/untested areas; compliance gaps; disputes; IP risks |
| Exit | Unclear pathways; low sector exit activity; weak lateβstage appeal |
pip install pitchlense-mcpgit clone https://github.com/pitchlense/pitchlense-mcp.git
cd pitchlense-mcp
pip install -e .git clone https://github.com/pitchlense/pitchlense-mcp.git
cd pitchlense-mcp
pip install -e ".[dev]"- Visit Google AI Studio
- Create a new API key
- Copy the API key
cp .env.template .env
# edit .env and fill in keysSupported variables:
GEMINI_API_KEY=
SERPAPI_API_KEY=
PERPLEXITY_API_KEY=
# Create sample data
pitchlense-mcp sample --output my_startup.json
# Run comprehensive analysis
pitchlense-mcp analyze --input my_startup.json --output results.jsonpitchlense-mcp quick --input my_startup.json --output quick_results.jsonpitchlense-mcp serverfrom pitchlense_mcp import ComprehensiveRiskScanner
# Initialize scanner (reads GEMINI_API_KEY from env if not provided)
scanner = ComprehensiveRiskScanner()
# Provide all startup info as one organized text string
startup_info = """
Name: TechFlow Solutions
Industry: SaaS/Productivity Software
Stage: Series A
Business Model:
AI-powered workflow automation for SMBs; subscription pricing.
Financials:
MRR: $45k; Burn: $35k; Runway: 8 months; LTV/CAC: 13.3
Traction:
250 customers; 1,200 MAU; Churn: 5% monthly; NRR: 110%
Team:
CEO: Sarah Chen; CTO: Michael Rodriguez; Team size: 12
Market & Competition:
TAM: $12B; Competitors: Zapier, Power Automate; Growth: 15% YoY
"""
# Run comprehensive analysis
results = scanner.comprehensive_startup_risk_analysis(startup_info)
print(f"Overall Risk Level: {results['overall_risk_level']}")
print(f"Overall Risk Score: {results['overall_score']}/10")
print(f"Investment Recommendation: {results['investment_recommendation']}")from pitchlense_mcp import MarketRiskAnalyzer, GeminiLLM
# Initialize components
llm_client = GeminiLLM(api_key="your_api_key")
market_analyzer = MarketRiskAnalyzer(llm_client)
# Analyze market risks
market_results = market_analyzer.analyze(startup_info)
print(f"Market Risk Level: {market_results['overall_risk_level']}")The package provides a complete MCP server that can be integrated with MCP-compatible clients:
from pitchlense_mcp import ComprehensiveRiskScanner
# Start MCP server
scanner = ComprehensiveRiskScanner()
scanner.run()The primary input is a single organized text string containing all startup information (details, metrics, traction, news, competitive landscape, etc.). This is the format used by all analyzers and MCP tools.
Example text input:
Name: AcmeAI
Industry: Fintech (Lending)
Stage: Seed
Summary:
Building AI-driven credit risk models for SMB lending; initial pilots with 5 lenders.
Financials:
MRR: $12k; Burn: $60k; Runway: 10 months; Gross Margin: 78%
Traction:
200 paying SMBs; 30% MoM growth; Churn: 3% monthly; CAC: $220; LTV: $2,100
Team:
Founders: Jane Doe (ex-Square), John Lee (ex-Stripe); Team size: 9
Market & Competition:
TAM: $25B; Competitors: Blend, Upstart; Advantage: faster underwriting via proprietary data partnerships
Tip: See examples/text_input_example.py for a complete end-to-end script and JSON export of results.
All tools return structured JSON responses with:
{
"startup_name": "Startup Name",
"overall_risk_level": "low|medium|high|critical",
"overall_score": 1-10,
"risk_categories": [
{
"category_name": "Risk Category",
"overall_risk_level": "low|medium|high|critical",
"category_score": 1-10,
"indicators": [
{
"indicator": "Specific risk factor",
"risk_level": "low|medium|high|critical",
"score": 1-10,
"description": "Detailed risk description",
"recommendation": "Mitigation action"
}
],
"summary": "Category summary"
}
],
"key_concerns": ["Top 5 concerns"],
"investment_recommendation": "Investment advice",
"confidence_score": 0.0-1.0,
"analysis_metadata": {
"total_categories_analyzed": 9,
"successful_analyses": 9,
"analysis_timestamp": "2024-01-01T00:00:00Z"
}
}- Investor Due Diligence - Comprehensive risk assessment for investment decisions
- Startup Self-Assessment - Identify and mitigate key risk areas
- Portfolio Risk Management - Assess risk across startup portfolio
- Accelerator/Incubator Screening - Evaluate startup applications
- M&A Risk Analysis - Assess acquisition targets
- Research & Analysis - Academic and industry research on startup risks
pitchlense-mcp/
βββ pitchlense_mcp/
β βββ __init__.py
β βββ cli.py # Command-line interface
β βββ core/ # Core functionality
β β βββ __init__.py
β β βββ base.py # Base classes
β β βββ gemini_client.py # Gemini AI integration
β β βββ comprehensive_scanner.py
β βββ models/ # Data models
β β βββ __init__.py
β β βββ risk_models.py
β βββ analyzers/ # Individual risk analyzers
β β βββ __init__.py
β β βββ market_risk.py
β β βββ product_risk.py
β β βββ team_risk.py
β β βββ financial_risk.py
β β βββ customer_risk.py
β β βββ operational_risk.py
β β βββ competitive_risk.py
β β βββ legal_risk.py
β β βββ exit_risk.py
β βββ utils/ # Utility functions
βββ tests/ # Test suite
βββ docs/ # Documentation
βββ examples/ # Example usage
βββ setup.py
βββ pyproject.toml
βββ requirements.txt
βββ README.md
-
Base Classes (
core/base.py)BaseLLM- Abstract base for LLM integrationsBaseRiskAnalyzer- Base class for all risk analyzersBaseMCPTool- Base class for MCP tools
-
Gemini Integration (
core/gemini_client.py)GeminiLLM- Main LLM clientGeminiTextGenerator- Text generationGeminiImageAnalyzer- Image analysisGeminiVideoAnalyzer- Video analysisGeminiAudioAnalyzer- Audio analysisGeminiDocumentAnalyzer- Document analysis
-
Risk Analyzers (
analyzers/)- Individual analyzers for each risk category
- Consistent interface and output format
- Extensible architecture
-
Models (
models/risk_models.py)- Pydantic models for type safety
- Structured data validation
- Clear data contracts
git clone https://github.com/pitchlense/pitchlense-mcp.git
cd pitchlense-mcp
pip install -e ".[dev]"
pre-commit install# Create and activate a virtual environment (recommended)
python3 -m venv .venv
source .venv/bin/activate
# Install dev extras (pytest, pytest-cov, linters)
pip install -e ".[dev]"
# Run tests with coverage and avoid global plugin conflicts
PYTEST_DISABLE_PLUGIN_AUTOLOAD=1 pytest -q -p pytest_covNotes:
- Coverage reports are written to
htmlcov/index.htmlandcoverage.xml. - If you see errors about unknown
--covoptions, ensure you passed-p pytest_covwhenPYTEST_DISABLE_PLUGIN_AUTOLOAD=1is set.
python examples/basic_usage.py
python examples/text_input_example.pyblack pitchlense_mcp/
flake8 pitchlense_mcp/
mypy pitchlense_mcp/python -m build- All risk scores are on a 1-10 scale (1 = lowest risk, 10 = highest risk)
- Risk levels: low (1-3), medium (4-6), high (7-8), critical (9-10)
- Individual tools can be used independently or combined for comprehensive analysis
- The system handles API failures gracefully with fallback responses
- All tables and structured data are returned in JSON format
- Professional package architecture with proper separation of concerns
We welcome contributions! Please see our Contributing Guide for details.
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.
- Documentation: https://pitchlense-mcp.readthedocs.io/
- Issues: GitHub Issues
- Email: connectamanulla@gmail.com
- Google Gemini AI for providing the underlying AI capabilities
- FastMCP for the Model Context Protocol implementation
- The open-source community for inspiration and tools
PitchLense MCP - Making startup risk analysis accessible, comprehensive, and AI-powered.