drosatos's picture
Deploy
fdcac99

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:

  2. Configure environment:

    export TAVILY_API_KEY=tvly-YOUR_API_KEY
    

Example 1: Discovering a Real Company

Using with Claude Desktop

# In Claude Desktop, use the MCP tool:
discover_organization(
  organizationName="OpenAI",
  domain="openai.com",
  context="AI research company"
)

Expected Output with Tavily

{
  "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

# 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:

{
  "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:

// 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

# 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:

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


Built for MCP 1st Birthday Hackathon 🎂