# Tavily AI Integration Example This document demonstrates how the Tavily AI integration enhances organization discovery for EU AI Act compliance. ## Setup 1. **Get your Tavily API Key:** - Visit [https://app.tavily.com](https://app.tavily.com) - Sign up (free tier: 1,000 API credits/month) - Copy your API key 2. **Configure environment:** ```bash export TAVILY_API_KEY=tvly-YOUR_API_KEY ``` ## Example 1: Discovering a Real Company ### Using with Claude Desktop ```bash # In Claude Desktop, use the MCP tool: discover_organization( organizationName="OpenAI", domain="openai.com", context="AI research company" ) ``` ### Expected Output with Tavily ```json { "organization": { "name": "OpenAI", "sector": "Technology", "size": "Enterprise", "jurisdiction": ["United States"], "euPresence": false, "headquarters": { "country": "United States", "city": "San Francisco" }, "contact": { "email": "contact@openai.com", "website": "https://openai.com" }, "aiMaturityLevel": "Leader", "aiSystemsCount": 0, "primaryRole": "Provider" }, "regulatoryContext": { "applicableFrameworks": ["EU AI Act", "GDPR"], "complianceDeadlines": [...], "existingCertifications": ["SOC 2", "ISO 27001"], "hasQualityManagementSystem": true, "hasRiskManagementSystem": false }, "metadata": { "createdAt": "2024-11-27T...", "lastUpdated": "2024-11-27T...", "completenessScore": 90, "dataSource": "tavily-research", "tavilyResults": { "overview": "OpenAI is an AI research and deployment company...", "aiCapabilities": "OpenAI develops advanced AI models including GPT-4...", "compliance": "OpenAI maintains SOC 2 Type II certification...", "sources": [ "https://openai.com/about", "https://openai.com/security" ] } } } ``` ## Example 2: European Healthcare AI Company ```bash # Discover a healthcare AI company discover_organization( organizationName="Ada Health", domain="ada.com", context="Digital health AI diagnostic company" ) ``` ### What Tavily Discovers: 1. **Company Overview Search:** - Business model: B2B2C health platform - Products: AI symptom checker, clinical decision support - Market: European healthcare market 2. **AI/Technology Search:** - AI capabilities: Medical AI, NLP for symptoms - Maturity: Mature AI operations - Technology stack: Machine learning models 3. **Compliance Search:** - GDPR compliance status - ISO 27001 certification - Medical device regulations (MDR) - Quality management systems ### Expected Classifications: - **Risk Category:** High-risk (healthcare AI per Annex III) - **EU Presence:** Yes (headquartered in Berlin) - **Applicable Frameworks:** EU AI Act, GDPR, MDR - **AI Maturity:** Mature ## Example 3: Without Tavily (Fallback Mode) If `TAVILY_API_KEY` is not set, the tool falls back to mock data: ```json { "organization": { "name": "Example Company", "sector": "Technology", "size": "SME", "jurisdiction": ["EU"], "euPresence": true, ... }, "metadata": { "completenessScore": 40, "dataSource": "fallback-mock" } } ``` ## Multi-Step Research Process The Tavily integration performs three parallel searches: ```typescript // 1. Company Overview tavily.search( "Company Name overview business model products services", { searchDepth: "advanced", maxResults: 5 } ) // 2. AI Capabilities tavily.search( "Company Name artificial intelligence AI machine learning", { searchDepth: "basic", maxResults: 3 } ) // 3. Compliance Status tavily.search( "Company Name GDPR compliance certifications ISO EU regulations", { searchDepth: "basic", maxResults: 3 } ) ``` ## Key Benefits ### 🎯 Accurate Classification - Real business sector identification (Healthcare, Finance, etc.) - Actual company size (Startup, SME, Enterprise) - Verified jurisdiction and EU presence ### 🔍 AI Maturity Assessment - Detects AI leadership and pioneering companies - Identifies mature vs. developing AI capabilities - Discovers AI-powered products and services ### ✅ Compliance Discovery - Finds existing certifications (ISO 27001, SOC 2, GDPR) - Identifies quality management systems - Discovers regulatory compliance status ### 📚 Source Citations - Provides URLs to company information - Includes AI-generated summaries - Links to compliance documentation ## Tavily Search Parameters The integration uses these optimized parameters: | Parameter | Value | Reason | |-----------|-------|--------| | `searchDepth` | `"advanced"` for overview, `"basic"` for others | Balance between quality and API credits | | `maxResults` | 5 for overview, 3 for others | Sufficient context without overload | | `includeAnswer` | `true` | Get AI-generated summaries | | `includeDomains` | Company domain when provided | Focus on official sources | ## API Credits Usage - **Overview Search (advanced):** ~2 credits - **AI Search (basic):** ~1 credit - **Compliance Search (basic):** ~1 credit - **Total per organization:** ~4 credits With the free tier (1,000 credits/month), you can discover **~250 organizations per month**. ## Integration with EU AI Act The discovered information directly maps to AI Act requirements: | Tavily Data | AI Act Article | Purpose | |-------------|----------------|---------| | Company sector | Annex III | Determine if high-risk sector | | AI capabilities | Article 6 | Risk classification | | EU presence | Article 22 | Authorized representative need | | Certifications | Article 17 | Quality management system | | Company size | Article 16 | SME support measures | ## Testing the Integration ```bash # Build the MCP server cd packages/eu-ai-act-mcp pnpm build # Set your API key export TAVILY_API_KEY=tvly-YOUR_API_KEY # Run the test agent cd ../test-agent pnpm dev ``` The test agent will demonstrate the Tavily integration with real company research. ## Troubleshooting ### Issue: "TAVILY_API_KEY not set, using fallback mock data" **Solution:** Set the environment variable: ```bash export TAVILY_API_KEY=tvly-YOUR_API_KEY ``` ### Issue: Low completeness scores **Possible causes:** - Company has limited public information - Domain name doesn't match company name - Recent startup with minimal web presence **Solutions:** - Provide more context in the `context` parameter - Ensure correct domain is provided - Check if company website is accessible ### Issue: API rate limiting **Solution:** Monitor your Tavily dashboard for credit usage. Consider: - Upgrading to a paid plan for higher limits - Caching organization profiles to reduce API calls - Using `searchDepth: "basic"` for all searches (saves credits) ## Resources - [Tavily Documentation](https://docs.tavily.com/) - [Tavily JavaScript SDK](https://docs.tavily.com/sdk/javascript/reference) - [Company Research Use Case](https://docs.tavily.com/examples/use-cases/company-research) - [EU AI Act Text](https://eur-lex.europa.eu/eli/reg/2024/1689/oj) --- **Built for MCP 1st Birthday Hackathon** 🎂