From 4487d2163e3fb9ccde5ad7f5df1d3b775d7726c4 Mon Sep 17 00:00:00 2001 From: JBAhire Date: Fri, 16 Jan 2026 13:56:27 +0530 Subject: [PATCH 1/4] feat: Add latest model evaluations Add TrustVector evaluations for: - Claude Opus 4.5 - Gemini 3 Flash - Gemini 3 Pro - GPT-5.2 - GPT-5.2 Codex --- data/models/claude-opus-4-5.json | 664 ++++++++++++++++++++++++++++++ data/models/gemini-3-flash.json | 637 ++++++++++++++++++++++++++++ data/models/gemini-3-pro.json | 665 ++++++++++++++++++++++++++++++ data/models/gpt-5-2-codex.json | 654 +++++++++++++++++++++++++++++ data/models/gpt-5-2.json | 684 +++++++++++++++++++++++++++++++ 5 files changed, 3304 insertions(+) create mode 100644 data/models/claude-opus-4-5.json create mode 100644 data/models/gemini-3-flash.json create mode 100644 data/models/gemini-3-pro.json create mode 100644 data/models/gpt-5-2-codex.json create mode 100644 data/models/gpt-5-2.json diff --git a/data/models/claude-opus-4-5.json b/data/models/claude-opus-4-5.json new file mode 100644 index 0000000..f37d61b --- /dev/null +++ b/data/models/claude-opus-4-5.json @@ -0,0 +1,664 @@ +{ + "id": "claude-opus-4-5", + "type": "model", + "name": "Claude Opus 4.5", + "provider": "Anthropic", + "version": "20251101", + "last_evaluated": "2026-01-14", + "evaluated_by": "TrustVector Team", + "description": "Anthropic's most capable model with 80.9% SWE-bench (industry-leading), unique effort parameter for compute control, and exceptional abstract reasoning. First model to exceed 80% on SWE-bench Verified.", + "website": "https://www.anthropic.com/claude/opus", + + "trust_vector": { + "performance_reliability": { + "overall_score": 96, + "criteria": { + "task_accuracy_code": { + "score": 98, + "confidence": "high", + "evidence": [ + { + "source": "SWE-bench Verified", + "url": "https://www.anthropic.com/news/claude-opus-4-5", + "date": "2025-11-24", + "value": "80.9% resolution rate (first model to exceed 80%, industry-leading)" + }, + { + "source": "Aider Polyglot", + "url": "https://www.vellum.ai/blog/claude-opus-4-5-benchmarks", + "date": "2025-11-24", + "value": "89.4% on polyglot coding tasks" + }, + { + "source": "Terminal-bench 2.0", + "url": "https://www.anthropic.com/news/claude-opus-4-5", + "date": "2025-11-24", + "value": "59.3% on command-line tasks" + } + ], + "methodology": "Industry-standard coding benchmarks measuring real-world software engineering tasks", + "last_verified": "2026-01-14" + }, + "task_accuracy_reasoning": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "GPQA Diamond", + "url": "https://www.anthropic.com/news/claude-opus-4-5", + "date": "2025-11-24", + "value": "87% (PhD-level science questions)" + }, + { + "source": "ARC-AGI-2", + "url": "https://www.vellum.ai/blog/claude-opus-4-5-benchmarks", + "date": "2025-11-24", + "value": "37.6% (2x GPT-5.1's 17.6%, exceptional abstract reasoning)" + } + ], + "methodology": "Graduate and PhD-level reasoning benchmarks requiring multi-step problem solving", + "last_verified": "2026-01-14" + }, + "task_accuracy_general": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "MMLU", + "url": "https://llm-stats.com/models/claude-opus-4-5-20251101", + "date": "2025-11-24", + "value": "~90.8% on graduate-level knowledge" + }, + { + "source": "MMMU (Vision)", + "url": "https://www.anthropic.com/news/claude-opus-4-5", + "date": "2025-11-24", + "value": "80.7% multimodal understanding" + } + ], + "methodology": "Comprehensive knowledge and multimodal testing", + "last_verified": "2026-01-14" + }, + "output_consistency": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Documentation", + "url": "https://docs.anthropic.com/en/docs/about-claude/models", + "date": "2025-11-24", + "value": "Effort parameter enables consistent quality control" + } + ], + "methodology": "Internal testing with effort parameter across quality levels", + "last_verified": "2026-01-14", + "notes": "Effort parameter allows precise control over output quality and consistency" + }, + "latency_p50": { + "value": "2.5s", + "confidence": "medium", + "evidence": [ + { + "source": "Community benchmarking", + "url": "https://artificialanalysis.ai/models/claude-opus-4-5", + "date": "2025-12-01", + "value": "Typical response time ~2.5s for standard prompts" + } + ], + "methodology": "Median latency for API requests with standard prompt sizes", + "last_verified": "2026-01-14" + }, + "latency_p95": { + "value": "5.0s", + "confidence": "medium", + "evidence": [ + { + "source": "Community benchmarking", + "url": "https://artificialanalysis.ai/models/claude-opus-4-5", + "date": "2025-12-01", + "value": "p95 latency ~5.0s" + } + ], + "methodology": "95th percentile response time across diverse workloads", + "last_verified": "2026-01-14" + }, + "context_window": { + "value": "200,000 tokens", + "confidence": "high", + "evidence": [ + { + "source": "Anthropic API Documentation", + "url": "https://docs.anthropic.com/en/docs/about-claude/models", + "date": "2025-11-24", + "value": "200K token context window" + } + ], + "methodology": "Official specification from provider", + "last_verified": "2026-01-14" + }, + "uptime": { + "score": 99, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Status Page", + "url": "https://status.anthropic.com/", + "date": "2026-01-01", + "value": "99.95% uptime (last 90 days)" + } + ], + "methodology": "Historical uptime data from official status page", + "last_verified": "2026-01-14" + } + }, + "notes": "Industry-leading coding capabilities with 80.9% SWE-bench. Unique effort parameter allows compute control. Exceptional abstract reasoning (37.6% ARC-AGI-2)." + }, + + "security": { + "overall_score": 90, + "criteria": { + "prompt_injection_resistance": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Safety Research", + "url": "https://www.anthropic.com/news/evaluating-ai-systems", + "date": "2025-11-24", + "value": "92% resistance to prompt injection attacks in testing" + } + ], + "methodology": "Testing against OWASP LLM01 prompt injection attacks", + "last_verified": "2026-01-14" + }, + "jailbreak_resistance": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Constitutional AI", + "url": "https://www.anthropic.com/news/claudes-constitution", + "date": "2025-11-24", + "value": "Enhanced Constitutional AI provides strongest jailbreak resistance" + } + ], + "methodology": "Testing against adversarial prompt datasets", + "last_verified": "2026-01-14" + }, + "data_leakage_prevention": { + "score": 87, + "confidence": "medium", + "evidence": [ + { + "source": "Anthropic Privacy Statement", + "url": "https://www.anthropic.com/legal/privacy", + "date": "2025-11-24", + "value": "No training on user data without explicit consent" + } + ], + "methodology": "Analysis of privacy policies and data handling practices", + "last_verified": "2026-01-14" + }, + "output_safety": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Safety Evaluations", + "url": "https://www.anthropic.com/news/claude-opus-4-5", + "date": "2025-11-24", + "value": "ASL-2+ safety level with enhanced guardrails" + } + ], + "methodology": "Comprehensive safety testing across harmful content categories", + "last_verified": "2026-01-14" + }, + "api_security": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic API Documentation", + "url": "https://docs.anthropic.com/en/api/getting-started", + "date": "2025-11-24", + "value": "API key authentication, HTTPS only, rate limiting" + } + ], + "methodology": "Review of API security features and best practices", + "last_verified": "2026-01-14" + } + }, + "notes": "Strongest safety posture in the Claude family. Enhanced Constitutional AI provides industry-leading jailbreak resistance." + }, + + "privacy_compliance": { + "overall_score": 92, + "criteria": { + "data_residency": { + "value": "US, EU (customer choice)", + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Enterprise Documentation", + "url": "https://www.anthropic.com/claude/enterprise", + "date": "2025-11-24", + "value": "Data residency options for US and EU customers" + } + ], + "methodology": "Review of enterprise documentation and privacy policies", + "last_verified": "2026-01-14" + }, + "training_data_optout": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Privacy Policy", + "url": "https://www.anthropic.com/legal/privacy", + "date": "2025-11-24", + "value": "Opt-out available, no training on API data by default" + } + ], + "methodology": "Analysis of privacy policy and data usage terms", + "last_verified": "2026-01-14" + }, + "data_retention": { + "value": "0 days (ephemeral)", + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Terms of Service", + "url": "https://www.anthropic.com/legal/terms", + "date": "2025-11-24", + "value": "API prompts and outputs not retained (except for trust & safety)" + } + ], + "methodology": "Review of terms of service and data retention policies", + "last_verified": "2026-01-14" + }, + "pii_handling": { + "score": 88, + "confidence": "medium", + "evidence": [ + { + "source": "Anthropic Privacy Documentation", + "url": "https://docs.anthropic.com/en/docs/resources/data-protection", + "date": "2025-11-24", + "value": "Customer responsible for PII redaction" + } + ], + "methodology": "Review of data protection capabilities and customer responsibilities", + "last_verified": "2026-01-14" + }, + "compliance_certifications": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Trust Center", + "url": "https://trust.anthropic.com/", + "date": "2025-11-24", + "value": "SOC 2 Type II, GDPR compliant, HIPAA eligible" + } + ], + "methodology": "Verification of compliance certifications and audit reports", + "last_verified": "2026-01-14" + }, + "zero_data_retention": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic API Documentation", + "url": "https://docs.anthropic.com/en/docs/resources/data-protection", + "date": "2025-11-24", + "value": "Ephemeral data processing, no storage of prompts/outputs" + } + ], + "methodology": "Review of data handling practices", + "last_verified": "2026-01-14" + } + }, + "notes": "Exceptional privacy posture with ephemeral data handling and strong compliance certifications. HIPAA eligible for healthcare." + }, + + "trust_transparency": { + "overall_score": 89, + "criteria": { + "explainability": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "Effort Parameter Feature", + "url": "https://www.anthropic.com/news/claude-opus-4-5", + "date": "2025-11-24", + "value": "Effort parameter provides control and transparency over reasoning depth" + } + ], + "methodology": "Evaluation of reasoning transparency and explanation capabilities", + "last_verified": "2026-01-14" + }, + "hallucination_rate": { + "score": 88, + "confidence": "medium", + "evidence": [ + { + "source": "Anthropic Testing", + "url": "https://www.anthropic.com/news/claude-opus-4-5", + "date": "2025-11-24", + "value": "Improved factual accuracy with effort parameter on high" + } + ], + "methodology": "Testing on factual QA datasets and real-world usage", + "last_verified": "2026-01-14" + }, + "bias_fairness": { + "score": 84, + "confidence": "medium", + "evidence": [ + { + "source": "Anthropic Responsible Scaling Policy", + "url": "https://www.anthropic.com/news/anthropics-responsible-scaling-policy", + "date": "2025-11-24", + "value": "Regular bias testing and mitigation" + } + ], + "methodology": "Evaluation on bias benchmarks and diverse demographic testing", + "last_verified": "2026-01-14" + }, + "uncertainty_quantification": { + "score": 87, + "confidence": "medium", + "evidence": [ + { + "source": "Model Behavior", + "url": "https://docs.anthropic.com/en/docs/about-claude/models", + "date": "2025-11-24", + "value": "Model expresses uncertainty appropriately" + } + ], + "methodology": "Qualitative assessment of confidence expression in outputs", + "last_verified": "2026-01-14" + }, + "model_card_quality": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Model Documentation", + "url": "https://docs.anthropic.com/en/docs/about-claude/models", + "date": "2025-11-24", + "value": "Comprehensive model cards with capabilities, limitations, benchmarks" + } + ], + "methodology": "Review of documentation completeness and clarity", + "last_verified": "2026-01-14" + }, + "training_data_transparency": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Anthropic Public Statements", + "url": "https://www.anthropic.com/news", + "date": "2025-11-24", + "value": "General description provided, detailed sources not disclosed" + } + ], + "methodology": "Review of public disclosures about training data", + "last_verified": "2026-01-14" + }, + "guardrails": { + "score": 96, + "confidence": "high", + "evidence": [ + { + "source": "Constitutional AI", + "url": "https://www.anthropic.com/news/claudes-constitution", + "date": "2025-11-24", + "value": "Enhanced Constitutional AI safety guardrails" + } + ], + "methodology": "Analysis of built-in safety mechanisms", + "last_verified": "2026-01-14" + } + }, + "notes": "Strong explainability with effort parameter control. Enhanced Constitutional AI provides transparency in alignment approach." + }, + + "operational_excellence": { + "overall_score": 91, + "criteria": { + "api_design_quality": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic API Documentation", + "url": "https://docs.anthropic.com/en/api", + "date": "2025-11-24", + "value": "RESTful API with streaming, function calling, vision, effort parameter" + } + ], + "methodology": "Review of API design, consistency, and feature completeness", + "last_verified": "2026-01-14" + }, + "sdk_quality": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic SDKs", + "url": "https://github.com/anthropics", + "date": "2025-11-24", + "value": "Official SDKs for Python, TypeScript, actively maintained" + } + ], + "methodology": "Review of SDK quality, documentation, and maintenance", + "last_verified": "2026-01-14" + }, + "versioning_policy": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic API Versioning", + "url": "https://docs.anthropic.com/en/api/versioning", + "date": "2025-11-24", + "value": "Clear versioning with 6-month deprecation notice" + } + ], + "methodology": "Review of versioning policy and historical practices", + "last_verified": "2026-01-14" + }, + "monitoring_observability": { + "score": 87, + "confidence": "medium", + "evidence": [ + { + "source": "Anthropic Console", + "url": "https://console.anthropic.com/", + "date": "2025-11-24", + "value": "Usage dashboard with metrics" + } + ], + "methodology": "Review of available monitoring tools and metrics", + "last_verified": "2026-01-14" + }, + "support_quality": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Support", + "url": "https://support.anthropic.com/", + "date": "2025-11-24", + "value": "Email support, Discord community, comprehensive docs" + } + ], + "methodology": "Assessment of documentation, community, and support responsiveness", + "last_verified": "2026-01-14" + }, + "ecosystem_maturity": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Cloud Providers", + "url": "https://www.anthropic.com/claude/opus", + "date": "2025-11-24", + "value": "Available on AWS Bedrock, Google Vertex AI, Azure Foundry" + } + ], + "methodology": "Analysis of third-party integrations and tools", + "last_verified": "2026-01-14" + }, + "license_terms": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Anthropic Terms of Service", + "url": "https://www.anthropic.com/legal/commercial-terms", + "date": "2025-11-24", + "value": "Standard commercial terms, enterprise agreements available" + } + ], + "methodology": "Review of licensing terms and restrictions", + "last_verified": "2026-01-14" + } + }, + "notes": "Excellent operational maturity with multi-cloud availability. Effort parameter adds unique control capability. Enterprise-ready." + } + }, + + "use_case_ratings": { + "code-generation": { + "overall": 98, + "notes": "Industry-leading 80.9% SWE-bench. Best model for complex software engineering. Effort parameter enables quality/speed tradeoffs.", + "alternatives": ["claude-sonnet-4-5", "gpt-5-2"] + }, + "customer-support": { + "overall": 88, + "notes": "Strong empathy and natural conversation. Higher latency than Sonnet but superior quality for complex support.", + "alternatives": ["claude-sonnet-4-5", "gpt-5-2"] + }, + "content-creation": { + "overall": 92, + "notes": "Excellent for long-form, nuanced content. Effort parameter allows quality optimization for important pieces.", + "alternatives": ["gpt-5-2", "claude-sonnet-4-5"] + }, + "data-analysis": { + "overall": 95, + "notes": "Strong analytical capabilities. Effort parameter excellent for complex data interpretation.", + "alternatives": ["gemini-3-pro", "gpt-5-2"] + }, + "research-assistant": { + "overall": 96, + "notes": "Exceptional for deep research. 200K context and effort parameter ideal for comprehensive analysis.", + "alternatives": ["gemini-3-pro", "gpt-5-2"] + }, + "legal-compliance": { + "overall": 92, + "notes": "Strong privacy posture, HIPAA eligible. Effort parameter useful for thorough contract analysis.", + "alternatives": ["claude-sonnet-4-5"] + }, + "healthcare": { + "overall": 90, + "notes": "HIPAA eligible with strong privacy controls. Good for clinical documentation requiring high accuracy.", + "alternatives": ["claude-sonnet-4-5"] + }, + "financial-analysis": { + "overall": 93, + "notes": "Excellent quantitative reasoning. Effort parameter enables thorough financial modeling.", + "alternatives": ["gpt-5-2", "gemini-3-pro"] + }, + "education": { + "overall": 94, + "notes": "Excellent tutoring with patient explanations. Can adjust effort based on question complexity.", + "alternatives": ["gpt-5-2", "claude-sonnet-4-5"] + }, + "creative-writing": { + "overall": 90, + "notes": "Strong creative capabilities with nuanced character development and narrative flow.", + "alternatives": ["gpt-5-2", "claude-sonnet-4-5"] + } + }, + + "strengths": [ + "Industry-leading coding: 80.9% SWE-bench Verified (first model >80%)", + "Unique effort parameter for compute/quality control", + "Exceptional abstract reasoning: 37.6% ARC-AGI-2 (2x GPT-5.1)", + "Best computer-use model: 66.3% OSWorld", + "67% price reduction from Opus 4.1 ($5/$25 vs $15/$75)", + "HIPAA eligible with ephemeral data handling", + "Multi-cloud availability (AWS, GCP, Azure)" + ], + + "limitations": [ + "Higher latency than Sonnet models (~2.5s p50)", + "Smaller context than Gemini 3 (200K vs 1M)", + "Premium pricing ($5/$25 per 1M tokens)", + "No native audio capabilities", + "Training data transparency limited (industry standard)" + ], + + "best_for": [ + "Complex software engineering requiring highest accuracy", + "Enterprise applications with strict compliance requirements", + "Research tasks requiring deep analysis with effort control", + "Computer use and automation workflows", + "Healthcare and legal requiring HIPAA compliance" + ], + + "not_recommended_for": [ + "Real-time applications requiring <500ms latency", + "Cost-sensitive high-volume inference", + "Audio processing applications", + "Ultra-long documents (>200K tokens)" + ], + + "metadata": { + "pricing": { + "input": "$5.00 per 1M tokens", + "output": "$25.00 per 1M tokens", + "notes": "67% reduction from Opus 4.1. Batch API 50% discount. Prompt caching up to 90% savings.", + "last_verified": "2026-01-14" + }, + "context_window": 200000, + "max_output": 64000, + "languages": [ + "English", + "Spanish", + "French", + "German", + "Italian", + "Portuguese", + "Japanese", + "Korean", + "Chinese", + "Arabic", + "Hindi" + ], + "modalities": ["text", "image (input)", "document", "computer-use"], + "api_endpoint": "https://api.anthropic.com/v1/messages", + "open_source": false, + "architecture": "Transformer-based with Constitutional AI alignment and effort parameter", + "parameters": "Not disclosed", + "knowledge_cutoff": "May 2025" + }, + + "related_entities": ["claude-sonnet-4-5", "claude-opus-4-1", "gpt-5-2", "gemini-3-pro"], + + "tags": [ + "coding", + "reasoning", + "enterprise", + "hipaa-eligible", + "safety-focused", + "effort-parameter", + "computer-use", + "flagship" + ] +} diff --git a/data/models/gemini-3-flash.json b/data/models/gemini-3-flash.json new file mode 100644 index 0000000..d0ef4da --- /dev/null +++ b/data/models/gemini-3-flash.json @@ -0,0 +1,637 @@ +{ + "id": "gemini-3-flash", + "type": "model", + "name": "Gemini 3 Flash", + "provider": "Google", + "version": "gemini-3-flash-preview", + "last_evaluated": "2026-01-14", + "evaluated_by": "TrustVector Team", + "description": "Google's efficiency model with Pro-level performance at 1/4 the price. 78% SWE-bench (beats Pro), 1M context, 3x faster than 2.5 Pro. Thinking level parameter for compute control.", + "website": "https://blog.google/products/gemini/gemini-3-flash/", + + "trust_vector": { + "performance_reliability": { + "overall_score": 93, + "criteria": { + "task_accuracy_code": { + "score": 93, + "confidence": "high", + "evidence": [ + { + "source": "SWE-bench Verified", + "url": "https://blog.google/products/gemini/gemini-3-flash/", + "date": "2025-12-17", + "value": "78% (actually beats Gemini 3 Pro's 76.2%)" + } + ], + "methodology": "Industry-standard coding benchmarks", + "last_verified": "2026-01-14" + }, + "task_accuracy_reasoning": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "GPQA Diamond", + "url": "https://blog.google/products/gemini/gemini-3-flash/", + "date": "2025-12-17", + "value": "90.4% (near Pro-level 93.8%)" + }, + { + "source": "Toolathlon & MPC Atlas", + "url": "https://simonwillison.net/2025/Dec/17/gemini-3-flash/", + "date": "2025-12-17", + "value": "Beats Gemini 3 Pro on tool use and multi-step planning" + } + ], + "methodology": "PhD-level reasoning benchmarks", + "last_verified": "2026-01-14" + }, + "task_accuracy_general": { + "score": 93, + "confidence": "high", + "evidence": [ + { + "source": "MMMU Pro", + "url": "https://blog.google/products/gemini/gemini-3-flash/", + "date": "2025-12-17", + "value": "81.2% (actually beats Gemini 3 Pro's 81%)" + } + ], + "methodology": "Multimodal understanding testing", + "last_verified": "2026-01-14" + }, + "output_consistency": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Google Documentation", + "url": "https://blog.google/products/gemini/gemini-3-flash/", + "date": "2025-12-17", + "value": "Thinking level parameter enables consistent quality control" + } + ], + "methodology": "Consistency testing across thinking levels", + "last_verified": "2026-01-14" + }, + "latency_p50": { + "value": "0.5s", + "confidence": "high", + "evidence": [ + { + "source": "Google Performance Data", + "url": "https://blog.google/products/gemini/gemini-3-flash/", + "date": "2025-12-17", + "value": "3x faster than Gemini 2.5 Pro" + } + ], + "methodology": "Median latency measurements", + "last_verified": "2026-01-14" + }, + "latency_p95": { + "value": "1.5s", + "confidence": "medium", + "evidence": [ + { + "source": "Community benchmarking", + "url": "https://artificialanalysis.ai/", + "date": "2025-12-20", + "value": "p95 latency optimized for speed" + } + ], + "methodology": "95th percentile measurements", + "last_verified": "2026-01-14" + }, + "context_window": { + "value": "1,000,000 tokens", + "confidence": "high", + "evidence": [ + { + "source": "Google Documentation", + "url": "https://blog.google/products/gemini/gemini-3-flash/", + "date": "2025-12-17", + "value": "1M token context window" + } + ], + "methodology": "Official specification", + "last_verified": "2026-01-14" + }, + "uptime": { + "score": 98, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Status", + "url": "https://status.cloud.google.com/", + "date": "2026-01-01", + "value": "99.9% uptime" + } + ], + "methodology": "Historical uptime data", + "last_verified": "2026-01-14" + } + }, + "notes": "Exceptional value: 78% SWE-bench beats Pro at 1/4 the price. 3x faster than 2.5 Pro with 1M context. Beats Pro on tool use and MMMU." + }, + + "security": { + "overall_score": 86, + "criteria": { + "prompt_injection_resistance": { + "score": 85, + "confidence": "medium", + "evidence": [ + { + "source": "Google AI Safety", + "url": "https://ai.google/responsibility/", + "date": "2025-12-17", + "value": "Inherited safety from Gemini 3 family" + } + ], + "methodology": "OWASP LLM security testing", + "last_verified": "2026-01-14" + }, + "jailbreak_resistance": { + "score": 87, + "confidence": "medium", + "evidence": [ + { + "source": "Google Safety Testing", + "url": "https://ai.google.dev/gemini-api/docs/safety-settings", + "date": "2025-12-17", + "value": "Strong jailbreak resistance" + } + ], + "methodology": "Adversarial prompt testing", + "last_verified": "2026-01-14" + }, + "data_leakage_prevention": { + "score": 84, + "confidence": "medium", + "evidence": [ + { + "source": "Google Privacy", + "url": "https://policies.google.com/privacy", + "date": "2025-12-17", + "value": "API data not used for training" + } + ], + "methodology": "Privacy policy review", + "last_verified": "2026-01-14" + }, + "output_safety": { + "score": 89, + "confidence": "high", + "evidence": [ + { + "source": "Safety Filters", + "url": "https://ai.google.dev/gemini-api/docs/safety-settings", + "date": "2025-12-17", + "value": "Configurable safety filters" + } + ], + "methodology": "Safety testing", + "last_verified": "2026-01-14" + }, + "api_security": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Security", + "url": "https://cloud.google.com/security", + "date": "2025-12-17", + "value": "Google Cloud security" + } + ], + "methodology": "API security review", + "last_verified": "2026-01-14" + } + }, + "notes": "Strong security inherited from Gemini 3 family. Google Cloud infrastructure provides enterprise-grade protection." + }, + + "privacy_compliance": { + "overall_score": 85, + "criteria": { + "data_residency": { + "value": "Global (Google Cloud regions)", + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud", + "url": "https://cloud.google.com/about/locations", + "date": "2025-12-17", + "value": "Multiple region options" + } + ], + "methodology": "Cloud infrastructure review", + "last_verified": "2026-01-14" + }, + "training_data_optout": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Gemini API Terms", + "url": "https://ai.google.dev/gemini-api/terms", + "date": "2025-12-17", + "value": "API data not used for training" + } + ], + "methodology": "Terms review", + "last_verified": "2026-01-14" + }, + "data_retention": { + "value": "Varies by tier", + "confidence": "medium", + "evidence": [ + { + "source": "Google Cloud Terms", + "url": "https://cloud.google.com/terms/service-terms", + "date": "2025-12-17", + "value": "Enterprise zero retention available" + } + ], + "methodology": "Retention policy review", + "last_verified": "2026-01-14" + }, + "pii_handling": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Google AI Safety", + "url": "https://ai.google.dev/gemini-api/docs/safety-settings", + "date": "2025-12-17", + "value": "Customer responsible for PII" + } + ], + "methodology": "Data protection review", + "last_verified": "2026-01-14" + }, + "compliance_certifications": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Compliance", + "url": "https://cloud.google.com/security/compliance", + "date": "2025-12-17", + "value": "SOC 2, ISO 27001, GDPR, HIPAA (via Google Cloud)" + } + ], + "methodology": "Certification verification", + "last_verified": "2026-01-14" + }, + "zero_data_retention": { + "score": 84, + "confidence": "medium", + "evidence": [ + { + "source": "Enterprise Options", + "url": "https://cloud.google.com/", + "date": "2025-12-17", + "value": "Available for enterprise" + } + ], + "methodology": "Enterprise feature review", + "last_verified": "2026-01-14" + } + }, + "notes": "Good privacy with Google Cloud. Free tier available. Enterprise options for enhanced compliance." + }, + + "trust_transparency": { + "overall_score": 88, + "criteria": { + "explainability": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "Thinking Level Parameter", + "url": "https://blog.google/products/gemini/gemini-3-flash/", + "date": "2025-12-17", + "value": "Thinking level (minimal, low, medium, high) for reasoning control" + } + ], + "methodology": "Reasoning transparency evaluation", + "last_verified": "2026-01-14" + }, + "hallucination_rate": { + "score": 87, + "confidence": "medium", + "evidence": [ + { + "source": "Google Testing", + "url": "https://blog.google/products/gemini/gemini-3-flash/", + "date": "2025-12-17", + "value": "Improved accuracy over 2.5 Flash" + } + ], + "methodology": "Factual accuracy testing", + "last_verified": "2026-01-14" + }, + "bias_fairness": { + "score": 84, + "confidence": "medium", + "evidence": [ + { + "source": "Google AI Principles", + "url": "https://ai.google/responsibility/principles/", + "date": "2025-12-17", + "value": "Regular bias testing" + } + ], + "methodology": "Bias evaluation", + "last_verified": "2026-01-14" + }, + "uncertainty_quantification": { + "score": 86, + "confidence": "medium", + "evidence": [ + { + "source": "Model Behavior", + "url": "https://ai.google.dev/gemini-api/docs", + "date": "2025-12-17", + "value": "Appropriate uncertainty expression" + } + ], + "methodology": "Qualitative assessment", + "last_verified": "2026-01-14" + }, + "model_card_quality": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Gemini 3 Flash Documentation", + "url": "https://ai.google.dev/gemini-api/docs/models", + "date": "2025-12-17", + "value": "Comprehensive documentation" + } + ], + "methodology": "Documentation review", + "last_verified": "2026-01-14" + }, + "training_data_transparency": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Google AI Blog", + "url": "https://blog.google/technology/ai/", + "date": "2025-12-17", + "value": "General description" + } + ], + "methodology": "Public disclosure review", + "last_verified": "2026-01-14" + }, + "guardrails": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Safety Settings", + "url": "https://ai.google.dev/gemini-api/docs/safety-settings", + "date": "2025-12-17", + "value": "Configurable safety filters" + } + ], + "methodology": "Safety mechanism review", + "last_verified": "2026-01-14" + } + }, + "notes": "Strong transparency with thinking level parameter. Configurable reasoning depth for different use cases." + }, + + "operational_excellence": { + "overall_score": 92, + "criteria": { + "api_design_quality": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "Gemini API", + "url": "https://ai.google.dev/gemini-api/docs", + "date": "2025-12-17", + "value": "RESTful API with streaming, function calling, multimodal" + } + ], + "methodology": "API design review", + "last_verified": "2026-01-14" + }, + "sdk_quality": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "Google AI SDKs", + "url": "https://github.com/google-gemini", + "date": "2025-12-17", + "value": "SDKs for Python, Node.js, Go, Swift, Kotlin, Dart" + } + ], + "methodology": "SDK quality assessment", + "last_verified": "2026-01-14" + }, + "versioning_policy": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Versioning", + "url": "https://cloud.google.com/apis/design/versioning", + "date": "2025-12-17", + "value": "Clear versioning" + } + ], + "methodology": "Versioning policy review", + "last_verified": "2026-01-14" + }, + "monitoring_observability": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Console", + "url": "https://console.cloud.google.com/", + "date": "2025-12-17", + "value": "Comprehensive monitoring" + } + ], + "methodology": "Observability review", + "last_verified": "2026-01-14" + }, + "support_quality": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Support", + "url": "https://cloud.google.com/support", + "date": "2025-12-17", + "value": "Enterprise support with SLAs" + } + ], + "methodology": "Support assessment", + "last_verified": "2026-01-14" + }, + "ecosystem_maturity": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "Google AI Ecosystem", + "url": "https://ai.google.dev/", + "date": "2025-12-17", + "value": "Default model in consumer Gemini app" + } + ], + "methodology": "Ecosystem analysis", + "last_verified": "2026-01-14" + }, + "license_terms": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Terms", + "url": "https://cloud.google.com/terms", + "date": "2025-12-17", + "value": "Standard commercial terms" + } + ], + "methodology": "License review", + "last_verified": "2026-01-14" + } + }, + "notes": "Excellent operational maturity. Default model in Gemini consumer app. Free tier available in API." + } + }, + + "use_case_ratings": { + "code-generation": { + "overall": 93, + "notes": "78% SWE-bench beats Gemini 3 Pro. Excellent value for coding at 1/4 the price.", + "alternatives": ["gpt-5-2-codex", "claude-opus-4-5"] + }, + "customer-support": { + "overall": 92, + "notes": "Low latency (3x faster than 2.5 Pro). Native multimodal for image/video support.", + "alternatives": ["gpt-5-2", "claude-sonnet-4-5"] + }, + "content-creation": { + "overall": 91, + "notes": "Good creative capabilities with cost efficiency. 1M context for long-form.", + "alternatives": ["gemini-3-pro", "gpt-5-2"] + }, + "data-analysis": { + "overall": 94, + "notes": "1M context enables massive dataset analysis at low cost.", + "alternatives": ["gemini-3-pro", "gpt-5-2"] + }, + "research-assistant": { + "overall": 93, + "notes": "1M context for document processing. Cost-effective for high-volume research.", + "alternatives": ["gemini-3-pro"] + }, + "legal-compliance": { + "overall": 86, + "notes": "1M context for contract analysis. Good value for document review.", + "alternatives": ["gemini-3-pro", "claude-opus-4-5"] + }, + "healthcare": { + "overall": 84, + "notes": "HIPAA via Google Cloud. Cost-effective for medical record processing.", + "alternatives": ["claude-opus-4-5", "gemini-3-pro"] + }, + "financial-analysis": { + "overall": 91, + "notes": "Strong quantitative reasoning at low cost. 1M context for large documents.", + "alternatives": ["gemini-3-pro", "gpt-5-2"] + }, + "education": { + "overall": 93, + "notes": "90.4% GPQA Diamond. Cost-effective for educational platforms.", + "alternatives": ["gpt-5-2", "gemini-3-pro"] + }, + "creative-writing": { + "overall": 89, + "notes": "Good creative capabilities. Best value for creative at scale.", + "alternatives": ["gemini-3-pro", "gpt-5-2"] + } + }, + + "strengths": [ + "Pro-level performance at 1/4 the price ($0.50/$3 per 1M tokens)", + "78% SWE-bench actually beats Gemini 3 Pro (76.2%)", + "3x faster than Gemini 2.5 Pro", + "1M token context window", + "Thinking level parameter (minimal, low, medium, high)", + "Beats Pro on MMMU (81.2% vs 81%) and tool use", + "Free tier available in Gemini API", + "Default model in consumer Gemini app" + ], + + "limitations": [ + "Preview status (not yet GA)", + "Slightly behind Pro on GPQA Diamond (90.4% vs 93.8%)", + "Less deep reasoning than Pro's Deep Think mode", + "Newer model with less enterprise testing", + "Slightly higher than 2.5 Flash pricing ($0.50 vs $0.30)" + ], + + "best_for": [ + "Cost-sensitive applications needing frontier performance", + "High-volume inference workloads", + "Real-time applications requiring low latency", + "Startups and developers on a budget", + "Long-context applications at scale", + "Agentic workflows requiring fast iteration" + ], + + "not_recommended_for": [ + "Applications requiring deepest reasoning (use Gemini 3 Pro)", + "Projects needing GA/stable model status", + "Tasks where 3% GPQA difference matters critically" + ], + + "metadata": { + "pricing": { + "input": "$0.50 per 1M tokens", + "output": "$3.00 per 1M tokens", + "notes": "1/4 the price of Gemini 3 Pro. 10x cheaper than GPT-4o input. Free tier available.", + "last_verified": "2026-01-14" + }, + "context_window": 1000000, + "max_output": 64000, + "languages": [ + "English", + "100+ languages" + ], + "modalities": ["text", "vision", "audio", "video"], + "api_endpoint": "https://generativelanguage.googleapis.com/v1beta/models", + "open_source": false, + "architecture": "Multimodal transformer with thinking level parameter", + "parameters": "Not disclosed", + "knowledge_cutoff": "January 2025" + }, + + "related_entities": ["gemini-3-pro", "gemini-2-0-flash", "claude-sonnet-4-5", "gpt-4o"], + + "tags": [ + "cost-effective", + "fast", + "1m-tokens", + "multimodal", + "thinking-level", + "free-tier", + "high-volume", + "value-leader" + ] +} diff --git a/data/models/gemini-3-pro.json b/data/models/gemini-3-pro.json new file mode 100644 index 0000000..ddb9ffe --- /dev/null +++ b/data/models/gemini-3-pro.json @@ -0,0 +1,665 @@ +{ + "id": "gemini-3-pro", + "type": "model", + "name": "Gemini 3 Pro", + "provider": "Google", + "version": "gemini-3-pro-preview", + "last_evaluated": "2026-01-14", + "evaluated_by": "TrustVector Team", + "description": "Google's flagship with 1M token context, 1501 LMArena Elo (first model >1500), Deep Think mode for complex reasoning, and native multimodal. 6x improvement on ARC-AGI-2 over 2.5 Pro.", + "website": "https://blog.google/products/gemini/gemini-3/", + + "trust_vector": { + "performance_reliability": { + "overall_score": 95, + "criteria": { + "task_accuracy_code": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "SWE-bench Verified", + "url": "https://blog.google/products/gemini/gemini-3/", + "date": "2025-11-18", + "value": "76.2% on SWE-bench Verified" + }, + { + "source": "WebDev Arena", + "url": "https://www.vellum.ai/blog/google-gemini-3-benchmarks", + "date": "2025-11-18", + "value": "1487 Elo on WebDev Arena" + } + ], + "methodology": "Industry-standard coding benchmarks", + "last_verified": "2026-01-14" + }, + "task_accuracy_reasoning": { + "score": 97, + "confidence": "high", + "evidence": [ + { + "source": "GPQA Diamond", + "url": "https://blog.google/products/gemini/gemini-3/", + "date": "2025-11-18", + "value": "93.8% with Deep Think (91.9% standard)" + }, + { + "source": "ARC-AGI-2", + "url": "https://www.vellum.ai/blog/google-gemini-3-benchmarks", + "date": "2025-11-18", + "value": "45.1% Deep Think / 31.1% standard (~6x improvement over 2.5 Pro)" + }, + { + "source": "AIME 2025", + "url": "https://blog.google/products/gemini/gemini-3/", + "date": "2025-11-18", + "value": "95% (no tools) / 100% (with tools)" + }, + { + "source": "Humanity's Last Exam", + "url": "https://blog.google/products/gemini/gemini-3/", + "date": "2025-11-18", + "value": "41% Deep Think / 37.5% standard (world-leading)" + } + ], + "methodology": "PhD-level and world-leading reasoning benchmarks", + "last_verified": "2026-01-14" + }, + "task_accuracy_general": { + "score": 96, + "confidence": "high", + "evidence": [ + { + "source": "LMArena Elo", + "url": "https://blog.google/products/gemini/gemini-3/", + "date": "2025-11-18", + "value": "1501 Elo (first model to exceed 1500)" + }, + { + "source": "MMLU", + "url": "https://llm-stats.com/models/gemini-3-pro-preview", + "date": "2025-11-18", + "value": "90% on cross-discipline knowledge" + }, + { + "source": "MMMU-Pro", + "url": "https://blog.google/products/gemini/gemini-3/", + "date": "2025-11-18", + "value": "81% multimodal understanding" + } + ], + "methodology": "Crowdsourced and comprehensive testing", + "last_verified": "2026-01-14" + }, + "output_consistency": { + "score": 93, + "confidence": "medium", + "evidence": [ + { + "source": "Google AI Documentation", + "url": "https://ai.google.dev/gemini-api/docs/gemini-3", + "date": "2025-11-18", + "value": "7x better token efficiency than 2.5 Pro" + } + ], + "methodology": "Consistency and efficiency testing", + "last_verified": "2026-01-14" + }, + "latency_p50": { + "value": "1.5s", + "confidence": "medium", + "evidence": [ + { + "source": "Community benchmarking", + "url": "https://artificialanalysis.ai/", + "date": "2025-12-01", + "value": "Typical response time ~1.5s" + } + ], + "methodology": "Median latency measurements", + "last_verified": "2026-01-14" + }, + "latency_p95": { + "value": "4.0s", + "confidence": "medium", + "evidence": [ + { + "source": "Community benchmarking", + "url": "https://artificialanalysis.ai/", + "date": "2025-12-01", + "value": "p95 latency ~4.0s" + } + ], + "methodology": "95th percentile measurements", + "last_verified": "2026-01-14" + }, + "context_window": { + "value": "1,000,000 tokens", + "confidence": "high", + "evidence": [ + { + "source": "Google AI Documentation", + "url": "https://ai.google.dev/gemini-api/docs/gemini-3", + "date": "2025-11-18", + "value": "1M token context window" + } + ], + "methodology": "Official specification", + "last_verified": "2026-01-14" + }, + "uptime": { + "score": 98, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Status", + "url": "https://status.cloud.google.com/", + "date": "2026-01-01", + "value": "99.9% uptime (last 90 days)" + } + ], + "methodology": "Historical uptime data", + "last_verified": "2026-01-14" + } + }, + "notes": "First model to exceed 1500 LMArena Elo. 1M context enables unprecedented document processing. 6x improvement on ARC-AGI-2 over 2.5 Pro." + }, + + "security": { + "overall_score": 87, + "criteria": { + "prompt_injection_resistance": { + "score": 86, + "confidence": "medium", + "evidence": [ + { + "source": "Google AI Safety", + "url": "https://ai.google/responsibility/", + "date": "2025-11-18", + "value": "Enhanced prompt injection defenses" + } + ], + "methodology": "OWASP LLM security testing", + "last_verified": "2026-01-14" + }, + "jailbreak_resistance": { + "score": 88, + "confidence": "medium", + "evidence": [ + { + "source": "Google Safety Testing", + "url": "https://ai.google.dev/gemini-api/docs/safety-settings", + "date": "2025-11-18", + "value": "Improved jailbreak resistance" + } + ], + "methodology": "Adversarial prompt testing", + "last_verified": "2026-01-14" + }, + "data_leakage_prevention": { + "score": 84, + "confidence": "medium", + "evidence": [ + { + "source": "Google Privacy Policy", + "url": "https://policies.google.com/privacy", + "date": "2025-11-18", + "value": "API data not used for training" + } + ], + "methodology": "Privacy policy review", + "last_verified": "2026-01-14" + }, + "output_safety": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Google Safety Filters", + "url": "https://ai.google.dev/gemini-api/docs/safety-settings", + "date": "2025-11-18", + "value": "Configurable multi-category safety filters" + } + ], + "methodology": "Safety testing", + "last_verified": "2026-01-14" + }, + "api_security": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Security", + "url": "https://cloud.google.com/security", + "date": "2025-11-18", + "value": "Google Cloud security standards" + } + ], + "methodology": "API security review", + "last_verified": "2026-01-14" + } + }, + "notes": "Strong security with Google Cloud infrastructure. Configurable safety filters provide flexibility." + }, + + "privacy_compliance": { + "overall_score": 86, + "criteria": { + "data_residency": { + "value": "Global (Google Cloud regions)", + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Regions", + "url": "https://cloud.google.com/about/locations", + "date": "2025-11-18", + "value": "Multiple region options" + } + ], + "methodology": "Cloud infrastructure review", + "last_verified": "2026-01-14" + }, + "training_data_optout": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Gemini API Terms", + "url": "https://ai.google.dev/gemini-api/terms", + "date": "2025-11-18", + "value": "API data not used for training" + } + ], + "methodology": "Terms review", + "last_verified": "2026-01-14" + }, + "data_retention": { + "value": "Varies by tier", + "confidence": "medium", + "evidence": [ + { + "source": "Google Cloud Terms", + "url": "https://cloud.google.com/terms/service-terms", + "date": "2025-11-18", + "value": "Enterprise zero retention available" + } + ], + "methodology": "Data retention policy review", + "last_verified": "2026-01-14" + }, + "pii_handling": { + "score": 83, + "confidence": "medium", + "evidence": [ + { + "source": "Google AI Safety", + "url": "https://ai.google.dev/gemini-api/docs/safety-settings", + "date": "2025-11-18", + "value": "Customer responsible for PII" + } + ], + "methodology": "Data protection review", + "last_verified": "2026-01-14" + }, + "compliance_certifications": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Compliance", + "url": "https://cloud.google.com/security/compliance", + "date": "2025-11-18", + "value": "SOC 2, ISO 27001, GDPR, HIPAA (via Google Cloud)" + } + ], + "methodology": "Certification verification", + "last_verified": "2026-01-14" + }, + "zero_data_retention": { + "score": 84, + "confidence": "medium", + "evidence": [ + { + "source": "Enterprise Options", + "url": "https://cloud.google.com/", + "date": "2025-11-18", + "value": "Available for enterprise" + } + ], + "methodology": "Enterprise feature review", + "last_verified": "2026-01-14" + } + }, + "notes": "Good privacy with Google Cloud. HIPAA compliance available through Google Cloud Healthcare API." + }, + + "trust_transparency": { + "overall_score": 90, + "criteria": { + "explainability": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "Deep Think Mode", + "url": "https://blog.google/products/gemini/gemini-3/", + "date": "2025-11-18", + "value": "Deep Think exposes detailed reasoning process" + } + ], + "methodology": "Reasoning transparency evaluation", + "last_verified": "2026-01-14" + }, + "hallucination_rate": { + "score": 88, + "confidence": "medium", + "evidence": [ + { + "source": "Google AI Testing", + "url": "https://blog.google/products/gemini/gemini-3/", + "date": "2025-11-18", + "value": "Improved factual accuracy over 2.5 Pro" + } + ], + "methodology": "Factual QA testing", + "last_verified": "2026-01-14" + }, + "bias_fairness": { + "score": 85, + "confidence": "medium", + "evidence": [ + { + "source": "Google AI Principles", + "url": "https://ai.google/responsibility/principles/", + "date": "2025-11-18", + "value": "Regular bias testing and mitigation" + } + ], + "methodology": "Bias benchmark evaluation", + "last_verified": "2026-01-14" + }, + "uncertainty_quantification": { + "score": 87, + "confidence": "medium", + "evidence": [ + { + "source": "Model Behavior", + "url": "https://ai.google.dev/gemini-api/docs/gemini-3", + "date": "2025-11-18", + "value": "Expresses uncertainty appropriately" + } + ], + "methodology": "Qualitative assessment", + "last_verified": "2026-01-14" + }, + "model_card_quality": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Gemini 3 Documentation", + "url": "https://ai.google.dev/gemini-api/docs/gemini-3", + "date": "2025-11-18", + "value": "Comprehensive documentation" + } + ], + "methodology": "Documentation review", + "last_verified": "2026-01-14" + }, + "training_data_transparency": { + "score": 83, + "confidence": "medium", + "evidence": [ + { + "source": "Google AI Blog", + "url": "https://blog.google/technology/ai/", + "date": "2025-11-18", + "value": "General training description" + } + ], + "methodology": "Public disclosure review", + "last_verified": "2026-01-14" + }, + "guardrails": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "Safety Settings", + "url": "https://ai.google.dev/gemini-api/docs/safety-settings", + "date": "2025-11-18", + "value": "Configurable multi-category safety" + } + ], + "methodology": "Safety mechanism review", + "last_verified": "2026-01-14" + } + }, + "notes": "Strong transparency with Deep Think mode. Comprehensive documentation and configurable guardrails." + }, + + "operational_excellence": { + "overall_score": 93, + "criteria": { + "api_design_quality": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "Gemini API", + "url": "https://ai.google.dev/gemini-api/docs/gemini-3", + "date": "2025-11-18", + "value": "RESTful API with streaming, function calling, multimodal" + } + ], + "methodology": "API design review", + "last_verified": "2026-01-14" + }, + "sdk_quality": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "Google AI SDKs", + "url": "https://github.com/google-gemini", + "date": "2025-11-18", + "value": "SDKs for Python, Node.js, Go, Swift, Kotlin, Dart" + } + ], + "methodology": "SDK quality assessment", + "last_verified": "2026-01-14" + }, + "versioning_policy": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Versioning", + "url": "https://cloud.google.com/apis/design/versioning", + "date": "2025-11-18", + "value": "Clear versioning with migration guides" + } + ], + "methodology": "Versioning policy review", + "last_verified": "2026-01-14" + }, + "monitoring_observability": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Console", + "url": "https://console.cloud.google.com/", + "date": "2025-11-18", + "value": "Comprehensive Cloud Console monitoring" + } + ], + "methodology": "Observability tools review", + "last_verified": "2026-01-14" + }, + "support_quality": { + "score": 93, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Support", + "url": "https://cloud.google.com/support", + "date": "2025-11-18", + "value": "Enterprise support with SLAs" + } + ], + "methodology": "Support assessment", + "last_verified": "2026-01-14" + }, + "ecosystem_maturity": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Google AI Ecosystem", + "url": "https://ai.google.dev/", + "date": "2025-11-18", + "value": "Day-one launch across Gemini app, AI Studio, Vertex AI" + } + ], + "methodology": "Ecosystem analysis", + "last_verified": "2026-01-14" + }, + "license_terms": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "Google Cloud Terms", + "url": "https://cloud.google.com/terms", + "date": "2025-11-18", + "value": "Standard commercial terms" + } + ], + "methodology": "License review", + "last_verified": "2026-01-14" + } + }, + "notes": "Excellent operational maturity with Google Cloud. First same-day launch across all Google AI platforms." + } + }, + + "use_case_ratings": { + "code-generation": { + "overall": 91, + "notes": "76.2% SWE-bench, 1487 WebDev Arena. 1M context enables full codebase analysis.", + "alternatives": ["claude-opus-4-5", "gpt-5-2-codex"] + }, + "customer-support": { + "overall": 90, + "notes": "Native multimodal enables image/video support. Strong conversational abilities.", + "alternatives": ["gpt-5-2", "claude-sonnet-4-5"] + }, + "content-creation": { + "overall": 93, + "notes": "Excellent for content with multimodal capabilities and long context.", + "alternatives": ["gpt-5-2", "claude-opus-4-5"] + }, + "data-analysis": { + "overall": 97, + "notes": "1M context enables analysis of massive datasets. Strong analytical reasoning.", + "alternatives": ["claude-opus-4-5", "gpt-5-2"] + }, + "research-assistant": { + "overall": 98, + "notes": "Best for research: 1M context processes entire books/papers. Deep Think for complex analysis.", + "alternatives": ["claude-opus-4-5"] + }, + "legal-compliance": { + "overall": 89, + "notes": "1M context for full contract analysis. HIPAA via Google Cloud Healthcare.", + "alternatives": ["claude-opus-4-5"] + }, + "healthcare": { + "overall": 87, + "notes": "HIPAA via Google Cloud. Good for processing medical records with long context.", + "alternatives": ["claude-opus-4-5", "claude-sonnet-4-5"] + }, + "financial-analysis": { + "overall": 94, + "notes": "Strong quantitative reasoning. 1M context for large financial document sets.", + "alternatives": ["gpt-5-2", "claude-opus-4-5"] + }, + "education": { + "overall": 95, + "notes": "95-100% AIME. Excellent for teaching with multimodal explanations.", + "alternatives": ["gpt-5-2", "claude-opus-4-5"] + }, + "creative-writing": { + "overall": 91, + "notes": "Good creative capabilities with strong narrative flow.", + "alternatives": ["gpt-5-2", "claude-opus-4-5"] + } + }, + + "strengths": [ + "First model to exceed 1500 LMArena Elo (1501)", + "1M token context window (5x GPT-5.2, 5x Claude Opus 4.5)", + "93.8% GPQA Diamond with Deep Think", + "45.1% ARC-AGI-2 Deep Think (6x improvement over 2.5 Pro)", + "Native multimodal (text, image, video, audio)", + "Competitive pricing ($2/$12 per 1M tokens)", + "7x better token efficiency than 2.5 Pro" + ], + + "limitations": [ + "Preview status (not yet GA)", + "Slightly behind on SWE-bench (76.2% vs Claude's 80.9%)", + "Deep Think increases latency significantly", + "Data retention policies less clear than Anthropic", + "Newer model with less community testing" + ], + + "best_for": [ + "Long-context applications (books, codebases, datasets)", + "Research requiring massive document processing", + "Multimodal applications (vision, video, audio)", + "Organizations using Google Cloud infrastructure", + "Cost-sensitive projects needing frontier performance" + ], + + "not_recommended_for": [ + "Applications requiring lowest possible latency", + "Projects needing GA/stable model status", + "Highly specialized coding (prefer Codex/Claude Opus)" + ], + + "metadata": { + "pricing": { + "input": "$2.00 per 1M tokens (<200K), $4.00 per 1M tokens (>200K)", + "output": "$12.00 per 1M tokens (<200K), $18.00 per 1M tokens (>200K)", + "consumer": "$19.99/month (Google AI Pro), $124.99/month (Gemini 3 Ultra)", + "notes": "Tiered pricing based on context length", + "last_verified": "2026-01-14" + }, + "context_window": 1000000, + "max_output": 64000, + "languages": [ + "English", + "100+ languages" + ], + "modalities": ["text", "vision", "audio", "video"], + "api_endpoint": "https://generativelanguage.googleapis.com/v1beta/models", + "open_source": false, + "architecture": "Multimodal transformer with Deep Think reasoning", + "parameters": "Not disclosed", + "knowledge_cutoff": "January 2025" + }, + + "related_entities": ["gemini-3-flash", "gemini-2-5-pro", "claude-opus-4-5", "gpt-5-2"], + + "tags": [ + "long-context", + "1m-tokens", + "deep-think", + "multimodal", + "lmarena-leader", + "google-cloud", + "flagship" + ] +} diff --git a/data/models/gpt-5-2-codex.json b/data/models/gpt-5-2-codex.json new file mode 100644 index 0000000..94d86fa --- /dev/null +++ b/data/models/gpt-5-2-codex.json @@ -0,0 +1,654 @@ +{ + "id": "gpt-5-2-codex", + "type": "model", + "name": "GPT-5.2 Codex", + "provider": "OpenAI", + "version": "gpt-5-2-codex-2025-12-11", + "last_evaluated": "2026-01-14", + "evaluated_by": "TrustVector Team", + "description": "OpenAI's specialized coding model built on GPT-5.2 with 56.4% SWE-bench Pro (state-of-the-art), 64% Terminal-bench 2.0, native code compaction, and enhanced cybersecurity capabilities.", + "website": "https://openai.com/index/introducing-gpt-5-2-codex/", + + "trust_vector": { + "performance_reliability": { + "overall_score": 96, + "criteria": { + "task_accuracy_code": { + "score": 98, + "confidence": "high", + "evidence": [ + { + "source": "SWE-bench Pro", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "56.4% (state-of-the-art on professional coding)" + }, + { + "source": "SWE-bench Verified", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "82.1% (exceeds Claude Opus 4.5's 80.9%)" + }, + { + "source": "Terminal-bench 2.0", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "64.0% (industry-leading command-line tasks)" + } + ], + "methodology": "Professional and enterprise coding benchmarks", + "last_verified": "2026-01-14" + }, + "task_accuracy_reasoning": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Inherited from GPT-5.2", + "url": "https://openai.com/index/introducing-gpt-5-2/", + "date": "2025-12-11", + "value": "Strong reasoning inherited from GPT-5.2 base" + } + ], + "methodology": "Reasoning benchmarks optimized for code-related tasks", + "last_verified": "2026-01-14" + }, + "task_accuracy_general": { + "score": 88, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI Documentation", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "Specialized for coding, general capabilities reduced" + } + ], + "methodology": "General knowledge testing", + "last_verified": "2026-01-14", + "notes": "Optimized for coding tasks; general performance slightly reduced" + }, + "output_consistency": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Testing", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "Native code compaction ensures consistent output format" + } + ], + "methodology": "Code consistency and format testing", + "last_verified": "2026-01-14" + }, + "latency_p50": { + "value": "1.0s", + "confidence": "medium", + "evidence": [ + { + "source": "Community benchmarking", + "url": "https://artificialanalysis.ai/", + "date": "2025-12-15", + "value": "Optimized for coding tasks" + } + ], + "methodology": "Median latency for code generation", + "last_verified": "2026-01-14" + }, + "latency_p95": { + "value": "3.0s", + "confidence": "medium", + "evidence": [ + { + "source": "Community benchmarking", + "url": "https://artificialanalysis.ai/", + "date": "2025-12-15", + "value": "p95 latency for complex code tasks" + } + ], + "methodology": "95th percentile response time", + "last_verified": "2026-01-14" + }, + "context_window": { + "value": "400,000 tokens", + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Documentation", + "url": "https://platform.openai.com/docs/models/gpt-5-2-codex", + "date": "2025-12-11", + "value": "400K context for full codebase analysis" + } + ], + "methodology": "Official specification", + "last_verified": "2026-01-14" + }, + "uptime": { + "score": 99, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Status", + "url": "https://status.openai.com/", + "date": "2026-01-01", + "value": "99.9% uptime" + } + ], + "methodology": "Historical uptime data", + "last_verified": "2026-01-14" + } + }, + "notes": "State-of-the-art coding model: 56.4% SWE-bench Pro, 82.1% SWE-bench Verified, 64% Terminal-bench 2.0. Native code compaction for clean outputs." + }, + + "security": { + "overall_score": 89, + "criteria": { + "prompt_injection_resistance": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Codex Security", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "Enhanced cybersecurity capabilities" + } + ], + "methodology": "Testing against code-focused injection attacks", + "last_verified": "2026-01-14" + }, + "jailbreak_resistance": { + "score": 90, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI Safety", + "url": "https://openai.com/safety", + "date": "2025-12-11", + "value": "Inherited GPT-5.2 safety features" + } + ], + "methodology": "Adversarial prompt testing", + "last_verified": "2026-01-14" + }, + "data_leakage_prevention": { + "score": 86, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI Privacy", + "url": "https://openai.com/policies/privacy-policy", + "date": "2025-12-11", + "value": "No training on API data by default" + } + ], + "methodology": "Code-specific data handling review", + "last_verified": "2026-01-14" + }, + "output_safety": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Codex Security Features", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "Enhanced for secure code generation" + } + ], + "methodology": "Security-focused code output testing", + "last_verified": "2026-01-14" + }, + "api_security": { + "score": 86, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Platform", + "url": "https://platform.openai.com/docs/api-reference", + "date": "2025-12-11", + "value": "Standard OpenAI API security" + } + ], + "methodology": "API security review", + "last_verified": "2026-01-14" + } + }, + "notes": "Enhanced cybersecurity capabilities for secure code generation. Specialized for identifying and avoiding code vulnerabilities." + }, + + "privacy_compliance": { + "overall_score": 85, + "criteria": { + "data_residency": { + "value": "US, EU", + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Enterprise", + "url": "https://openai.com/enterprise", + "date": "2025-12-11", + "value": "Enterprise data residency options" + } + ], + "methodology": "Enterprise documentation review", + "last_verified": "2026-01-14" + }, + "training_data_optout": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Data Controls", + "url": "https://openai.com/policies/usage-policies", + "date": "2025-12-11", + "value": "API data not used for training" + } + ], + "methodology": "Policy review", + "last_verified": "2026-01-14" + }, + "data_retention": { + "value": "30 days", + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Terms", + "url": "https://openai.com/policies/terms-of-use", + "date": "2025-12-11", + "value": "Standard 30-day retention, zero for enterprise" + } + ], + "methodology": "Terms review", + "last_verified": "2026-01-14" + }, + "pii_handling": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI Safety", + "url": "https://platform.openai.com/docs/guides/safety", + "date": "2025-12-11", + "value": "Customer responsible for code PII" + } + ], + "methodology": "Data protection review", + "last_verified": "2026-01-14" + }, + "compliance_certifications": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Trust Center", + "url": "https://trust.openai.com/", + "date": "2025-12-11", + "value": "SOC 2 Type II, ISO 27001, GDPR" + } + ], + "methodology": "Certification verification", + "last_verified": "2026-01-14" + }, + "zero_data_retention": { + "score": 86, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Enterprise", + "url": "https://openai.com/enterprise", + "date": "2025-12-11", + "value": "Zero retention for enterprise" + } + ], + "methodology": "Enterprise feature review", + "last_verified": "2026-01-14" + } + }, + "notes": "Standard OpenAI privacy. Important for code: ensure proprietary code handling policies are understood." + }, + + "trust_transparency": { + "overall_score": 88, + "criteria": { + "explainability": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Codex Documentation", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "Code explanations and comments generation" + } + ], + "methodology": "Code explainability assessment", + "last_verified": "2026-01-14" + }, + "hallucination_rate": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "SWE-bench Testing", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "High accuracy on real-world code tasks" + } + ], + "methodology": "Code accuracy and compilation testing", + "last_verified": "2026-01-14" + }, + "bias_fairness": { + "score": 83, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI Testing", + "url": "https://openai.com/safety", + "date": "2025-12-11", + "value": "Code-focused bias testing" + } + ], + "methodology": "Code generation bias assessment", + "last_verified": "2026-01-14" + }, + "uncertainty_quantification": { + "score": 86, + "confidence": "medium", + "evidence": [ + { + "source": "Model Behavior", + "url": "https://platform.openai.com/docs/models/gpt-5-2-codex", + "date": "2025-12-11", + "value": "Expresses uncertainty in code suggestions" + } + ], + "methodology": "Code confidence expression", + "last_verified": "2026-01-14" + }, + "model_card_quality": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "Codex Documentation", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "Comprehensive coding benchmarks and capabilities" + } + ], + "methodology": "Documentation review", + "last_verified": "2026-01-14" + }, + "training_data_transparency": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI Blog", + "url": "https://openai.com/blog", + "date": "2025-12-11", + "value": "General description of code training data" + } + ], + "methodology": "Training data disclosure review", + "last_verified": "2026-01-14" + }, + "guardrails": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Codex Safety", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "Enhanced guardrails for secure code generation" + } + ], + "methodology": "Code safety mechanism review", + "last_verified": "2026-01-14" + } + }, + "notes": "Strong code explainability with native documentation generation. Enhanced for secure code practices." + }, + + "operational_excellence": { + "overall_score": 94, + "criteria": { + "api_design_quality": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Codex API", + "url": "https://platform.openai.com/docs/api-reference", + "date": "2025-12-11", + "value": "Code-optimized API with native compaction" + } + ], + "methodology": "API design review", + "last_verified": "2026-01-14" + }, + "sdk_quality": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI SDKs", + "url": "https://github.com/openai", + "date": "2025-12-11", + "value": "Full SDK support with code-specific features" + } + ], + "methodology": "SDK review", + "last_verified": "2026-01-14" + }, + "versioning_policy": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Versioning", + "url": "https://platform.openai.com/docs/api-reference/models", + "date": "2025-12-11", + "value": "Clear versioning policy" + } + ], + "methodology": "Versioning review", + "last_verified": "2026-01-14" + }, + "monitoring_observability": { + "score": 93, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Dashboard", + "url": "https://platform.openai.com/usage", + "date": "2025-12-11", + "value": "Detailed usage metrics for code tasks" + } + ], + "methodology": "Observability review", + "last_verified": "2026-01-14" + }, + "support_quality": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Support", + "url": "https://help.openai.com/", + "date": "2025-12-11", + "value": "Developer-focused support" + } + ], + "methodology": "Support assessment", + "last_verified": "2026-01-14" + }, + "ecosystem_maturity": { + "score": 96, + "confidence": "high", + "evidence": [ + { + "source": "Developer Tools", + "url": "https://platform.openai.com/docs", + "date": "2025-12-11", + "value": "IDE integrations, GitHub Copilot compatibility" + } + ], + "methodology": "Ecosystem analysis", + "last_verified": "2026-01-14" + }, + "license_terms": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Terms", + "url": "https://openai.com/policies/terms-of-use", + "date": "2025-12-11", + "value": "Standard commercial terms" + } + ], + "methodology": "License review", + "last_verified": "2026-01-14" + } + }, + "notes": "Excellent developer experience with native code compaction and IDE integrations. Industry-leading code tooling." + } + }, + + "use_case_ratings": { + "code-generation": { + "overall": 99, + "notes": "State-of-the-art: 56.4% SWE-bench Pro, 82.1% SWE-bench Verified. Native compaction for clean code.", + "alternatives": ["claude-opus-4-5", "gpt-5-2"] + }, + "customer-support": { + "overall": 75, + "notes": "Specialized for coding, not optimized for general customer support.", + "alternatives": ["gpt-5-2", "claude-sonnet-4-5"] + }, + "content-creation": { + "overall": 78, + "notes": "Good for technical documentation, not optimized for general content.", + "alternatives": ["gpt-5-2", "claude-opus-4-5"] + }, + "data-analysis": { + "overall": 88, + "notes": "Strong for code-based data analysis and scripting.", + "alternatives": ["gpt-5-2", "gemini-3-pro"] + }, + "research-assistant": { + "overall": 82, + "notes": "Excellent for code research, limited for general research.", + "alternatives": ["gpt-5-2", "claude-opus-4-5"] + }, + "legal-compliance": { + "overall": 70, + "notes": "Not designed for legal work. Use general-purpose models.", + "alternatives": ["claude-opus-4-5"] + }, + "healthcare": { + "overall": 65, + "notes": "Not suitable for healthcare applications.", + "alternatives": ["claude-opus-4-5"] + }, + "financial-analysis": { + "overall": 80, + "notes": "Good for quantitative coding, limited for general finance.", + "alternatives": ["gpt-5-2", "claude-opus-4-5"] + }, + "education": { + "overall": 92, + "notes": "Excellent for teaching programming and code review.", + "alternatives": ["claude-opus-4-5", "gpt-5-2"] + }, + "creative-writing": { + "overall": 70, + "notes": "Specialized for code, not creative writing.", + "alternatives": ["gpt-5-2", "claude-opus-4-5"] + } + }, + + "strengths": [ + "State-of-the-art coding: 56.4% SWE-bench Pro (best available)", + "82.1% SWE-bench Verified (exceeds Claude Opus 4.5)", + "64% Terminal-bench 2.0 (industry-leading CLI)", + "Native code compaction for clean, formatted output", + "Enhanced cybersecurity for secure code generation", + "400K context for full codebase analysis", + "IDE integrations and developer tooling" + ], + + "limitations": [ + "Specialized for coding - reduced general capabilities", + "Not suitable for non-code tasks", + "Same pricing as GPT-5.2", + "Not HIPAA eligible", + "30-day data retention" + ], + + "best_for": [ + "Professional software development", + "Code review and refactoring", + "Security-focused code generation", + "Terminal and CLI automation", + "Teaching programming", + "Full codebase analysis and modification" + ], + + "not_recommended_for": [ + "General conversation and chat", + "Creative writing", + "Healthcare applications", + "Legal document analysis", + "Non-technical customer support" + ], + + "metadata": { + "pricing": { + "input": "$1.75 per 1M tokens", + "output": "$14.00 per 1M tokens", + "notes": "Same as GPT-5.2. Optimized for coding efficiency.", + "last_verified": "2026-01-14" + }, + "context_window": 400000, + "max_output": 128000, + "languages": [ + "Python", + "JavaScript", + "TypeScript", + "Java", + "C++", + "C#", + "Go", + "Rust", + "Ruby", + "PHP", + "Swift", + "Kotlin", + "100+ programming languages" + ], + "modalities": ["text", "code"], + "api_endpoint": "https://api.openai.com/v1/chat/completions", + "open_source": false, + "architecture": "GPT-5.2 based with code-specialized training", + "parameters": "Not disclosed" + }, + + "related_entities": ["gpt-5-2", "claude-opus-4-5", "claude-sonnet-4-5"], + + "tags": [ + "coding", + "specialized", + "swe-bench-leader", + "terminal", + "cybersecurity", + "code-compaction", + "developer-tools" + ] +} diff --git a/data/models/gpt-5-2.json b/data/models/gpt-5-2.json new file mode 100644 index 0000000..0328567 --- /dev/null +++ b/data/models/gpt-5-2.json @@ -0,0 +1,684 @@ +{ + "id": "gpt-5-2", + "type": "model", + "name": "GPT-5.2", + "provider": "OpenAI", + "version": "gpt-5-2-2025-12-11", + "last_evaluated": "2026-01-14", + "evaluated_by": "TrustVector Team", + "description": "OpenAI's latest flagship with 400K context window, 100% AIME 2025 score, and 52.9% ARC-AGI-2. Three variants: Instant (speed), Thinking (reasoning), Pro (accuracy). Industry-leading abstract reasoning.", + "website": "https://openai.com/index/introducing-gpt-5-2/", + + "trust_vector": { + "performance_reliability": { + "overall_score": 97, + "criteria": { + "task_accuracy_code": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "SWE-bench Verified", + "url": "https://openai.com/index/introducing-gpt-5-2/", + "date": "2025-12-11", + "value": "80% on SWE-bench Verified" + }, + { + "source": "SWE-bench Pro", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "56.4% on SWE-bench Pro (Codex variant)" + }, + { + "source": "Terminal-bench 2.0", + "url": "https://openai.com/index/introducing-gpt-5-2-codex/", + "date": "2025-12-11", + "value": "64.0% (industry-leading command-line tasks)" + } + ], + "methodology": "Industry-standard coding benchmarks", + "last_verified": "2026-01-14" + }, + "task_accuracy_reasoning": { + "score": 98, + "confidence": "high", + "evidence": [ + { + "source": "AIME 2025", + "url": "https://openai.com/index/introducing-gpt-5-2/", + "date": "2025-12-11", + "value": "100% (perfect score, no tools)" + }, + { + "source": "GPQA Diamond", + "url": "https://www.vellum.ai/blog/gpt-5-2-benchmarks", + "date": "2025-12-11", + "value": "93.2% Pro / 92.4% Thinking (near state-of-the-art)" + }, + { + "source": "ARC-AGI-2", + "url": "https://openai.com/index/introducing-gpt-5-2/", + "date": "2025-12-11", + "value": "52.9% (massive lead, 3x GPT-5.1)" + }, + { + "source": "ARC-AGI-1", + "url": "https://openai.com/index/introducing-gpt-5-2/", + "date": "2025-12-11", + "value": "90.5% (first model above 90%)" + }, + { + "source": "FrontierMath Tier 1-3", + "url": "https://www.vellum.ai/blog/gpt-5-2-benchmarks", + "date": "2025-12-11", + "value": "40.3% (10% improvement over GPT-5.1)" + } + ], + "methodology": "PhD-level and Olympiad-level reasoning benchmarks", + "last_verified": "2026-01-14" + }, + "task_accuracy_general": { + "score": 97, + "confidence": "high", + "evidence": [ + { + "source": "LMSYS Chatbot Arena", + "url": "https://lmsys.org/", + "date": "2025-12-15", + "value": "Top tier ELO rating" + }, + { + "source": "GDPval", + "url": "https://openai.com/index/introducing-gpt-5-2/", + "date": "2025-12-11", + "value": "70.9% (beats human experts at 11x speed, <1% cost)" + } + ], + "methodology": "Crowdsourced and expert-level comparisons", + "last_verified": "2026-01-14" + }, + "output_consistency": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Documentation", + "url": "https://platform.openai.com/docs/models/gpt-5-2", + "date": "2025-12-11", + "value": "~30% fewer errors/hallucinations vs GPT-5.1" + } + ], + "methodology": "Internal testing across model variants", + "last_verified": "2026-01-14" + }, + "latency_p50": { + "value": "0.5s (Instant) / 1.2s (Thinking)", + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Performance Data", + "url": "https://openai.com/index/introducing-gpt-5-2/", + "date": "2025-12-11", + "value": "Instant variant optimized for low latency" + } + ], + "methodology": "Platform-wide performance metrics", + "last_verified": "2026-01-14" + }, + "latency_p95": { + "value": "2.5s (standard)", + "confidence": "medium", + "evidence": [ + { + "source": "Community benchmarking", + "url": "https://artificialanalysis.ai/", + "date": "2025-12-15", + "value": "p95 latency varies by variant" + } + ], + "methodology": "95th percentile response time", + "last_verified": "2026-01-14" + }, + "context_window": { + "value": "400,000 tokens", + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Documentation", + "url": "https://platform.openai.com/docs/models/gpt-5-2", + "date": "2025-12-11", + "value": "400K token context window (industry-leading for non-Google)" + } + ], + "methodology": "Official specification", + "last_verified": "2026-01-14" + }, + "uptime": { + "score": 99, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Status", + "url": "https://status.openai.com/", + "date": "2026-01-01", + "value": "99.9% uptime (last 90 days)" + } + ], + "methodology": "Historical uptime data", + "last_verified": "2026-01-14" + } + }, + "notes": "Industry-leading reasoning with 100% AIME and 52.9% ARC-AGI-2. 400K context enables full codebase processing. ~30% fewer hallucinations than GPT-5.1." + }, + + "security": { + "overall_score": 87, + "criteria": { + "prompt_injection_resistance": { + "score": 89, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI Safety Research", + "url": "https://openai.com/safety", + "date": "2025-12-11", + "value": "Enhanced prompt injection defenses" + } + ], + "methodology": "Testing against OWASP LLM01 attacks", + "last_verified": "2026-01-14" + }, + "jailbreak_resistance": { + "score": 90, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI System Card", + "url": "https://openai.com/research/gpt-5-2-system-card", + "date": "2025-12-11", + "value": "Improved resistance over GPT-5.1" + } + ], + "methodology": "Adversarial prompt testing", + "last_verified": "2026-01-14" + }, + "data_leakage_prevention": { + "score": 84, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI Privacy Policy", + "url": "https://openai.com/policies/privacy-policy", + "date": "2025-12-11", + "value": "No training on API data by default" + } + ], + "methodology": "Policy review and data handling practices", + "last_verified": "2026-01-14" + }, + "output_safety": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Safety Evals", + "url": "https://openai.com/safety/gpt-5-2", + "date": "2025-12-11", + "value": "Multi-layer safety with improved refusal accuracy" + } + ], + "methodology": "Safety testing across harmful content categories", + "last_verified": "2026-01-14" + }, + "api_security": { + "score": 86, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Platform Docs", + "url": "https://platform.openai.com/docs/api-reference", + "date": "2025-12-11", + "value": "API key + OAuth2, HTTPS, rate limiting" + } + ], + "methodology": "Review of API security features", + "last_verified": "2026-01-14" + } + }, + "notes": "Strong security with multi-layer safety systems. 30% fewer hallucinations improves output safety." + }, + + "privacy_compliance": { + "overall_score": 85, + "criteria": { + "data_residency": { + "value": "US, EU", + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Enterprise", + "url": "https://openai.com/enterprise", + "date": "2025-12-11", + "value": "Data residency options for enterprise" + } + ], + "methodology": "Review of enterprise documentation", + "last_verified": "2026-01-14" + }, + "training_data_optout": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Data Controls", + "url": "https://openai.com/policies/usage-policies", + "date": "2025-12-11", + "value": "API data not used for training by default" + } + ], + "methodology": "Policy review", + "last_verified": "2026-01-14" + }, + "data_retention": { + "value": "30 days", + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Terms", + "url": "https://openai.com/policies/terms-of-use", + "date": "2025-12-11", + "value": "API logs retained for 30 days (zero retention for enterprise)" + } + ], + "methodology": "Terms of service review", + "last_verified": "2026-01-14" + }, + "pii_handling": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI Safety Tools", + "url": "https://platform.openai.com/docs/guides/safety", + "date": "2025-12-11", + "value": "Customer responsible for PII, moderation API available" + } + ], + "methodology": "Review of data protection capabilities", + "last_verified": "2026-01-14" + }, + "compliance_certifications": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Trust Center", + "url": "https://trust.openai.com/", + "date": "2025-12-11", + "value": "SOC 2 Type II, ISO 27001, GDPR compliant" + } + ], + "methodology": "Verification of certifications", + "last_verified": "2026-01-14", + "notes": "Not HIPAA eligible" + }, + "zero_data_retention": { + "score": 86, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Enterprise", + "url": "https://openai.com/enterprise", + "date": "2025-12-11", + "value": "Zero retention available for enterprise tier" + } + ], + "methodology": "Enterprise feature review", + "last_verified": "2026-01-14" + } + }, + "notes": "Good privacy with 30-day default retention. Zero retention for enterprise. Not HIPAA eligible." + }, + + "trust_transparency": { + "overall_score": 91, + "criteria": { + "explainability": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "GPT-5.2 Thinking Variant", + "url": "https://openai.com/index/introducing-gpt-5-2/", + "date": "2025-12-11", + "value": "Thinking variant exposes reasoning process" + } + ], + "methodology": "Evaluation of reasoning transparency", + "last_verified": "2026-01-14" + }, + "hallucination_rate": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Testing", + "url": "https://openai.com/index/introducing-gpt-5-2/", + "date": "2025-12-11", + "value": "~30% fewer errors/hallucinations than GPT-5.1" + } + ], + "methodology": "Factual accuracy testing", + "last_verified": "2026-01-14" + }, + "bias_fairness": { + "score": 85, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI System Card", + "url": "https://openai.com/research/gpt-5-2-system-card", + "date": "2025-12-11", + "value": "Regular bias testing and red-teaming" + } + ], + "methodology": "Bias benchmarks and demographic testing", + "last_verified": "2026-01-14" + }, + "uncertainty_quantification": { + "score": 89, + "confidence": "medium", + "evidence": [ + { + "source": "GPT-5.2 Capabilities", + "url": "https://platform.openai.com/docs/models/gpt-5-2", + "date": "2025-12-11", + "value": "Better uncertainty expression with lower hallucination rate" + } + ], + "methodology": "Qualitative confidence expression", + "last_verified": "2026-01-14" + }, + "model_card_quality": { + "score": 93, + "confidence": "high", + "evidence": [ + { + "source": "GPT-5.2 System Card", + "url": "https://openai.com/research/gpt-5-2-system-card", + "date": "2025-12-11", + "value": "Comprehensive system card with detailed evaluations" + } + ], + "methodology": "Documentation completeness review", + "last_verified": "2026-01-14" + }, + "training_data_transparency": { + "score": 80, + "confidence": "medium", + "evidence": [ + { + "source": "OpenAI Blog", + "url": "https://openai.com/blog", + "date": "2025-12-11", + "value": "General description, specific sources not disclosed" + } + ], + "methodology": "Public disclosure review", + "last_verified": "2026-01-14" + }, + "guardrails": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Safety Systems", + "url": "https://openai.com/safety", + "date": "2025-12-11", + "value": "Multi-layer safety with improved accuracy" + } + ], + "methodology": "Safety mechanism analysis", + "last_verified": "2026-01-14" + } + }, + "notes": "Excellent transparency with 30% fewer hallucinations. Thinking variant provides reasoning insight. Comprehensive system card." + }, + + "operational_excellence": { + "overall_score": 95, + "criteria": { + "api_design_quality": { + "score": 96, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI API", + "url": "https://platform.openai.com/docs/api-reference", + "date": "2025-12-11", + "value": "RESTful API with streaming, function calling, vision, audio" + } + ], + "methodology": "API design and feature review", + "last_verified": "2026-01-14" + }, + "sdk_quality": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI SDKs", + "url": "https://github.com/openai", + "date": "2025-12-11", + "value": "Official SDKs for Python, Node.js, Go, .NET, Swift" + } + ], + "methodology": "SDK quality and maintenance review", + "last_verified": "2026-01-14" + }, + "versioning_policy": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Versioning", + "url": "https://platform.openai.com/docs/api-reference/models", + "date": "2025-12-11", + "value": "Clear versioning with deprecation notices" + } + ], + "methodology": "Versioning policy review", + "last_verified": "2026-01-14" + }, + "monitoring_observability": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Dashboard", + "url": "https://platform.openai.com/usage", + "date": "2025-12-11", + "value": "Detailed usage dashboard with costs, tokens, rate limits" + } + ], + "methodology": "Observability tools review", + "last_verified": "2026-01-14" + }, + "support_quality": { + "score": 94, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Support", + "url": "https://help.openai.com/", + "date": "2025-12-11", + "value": "24/7 support, comprehensive docs, active community" + } + ], + "methodology": "Support and documentation assessment", + "last_verified": "2026-01-14" + }, + "ecosystem_maturity": { + "score": 97, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Ecosystem", + "url": "https://platform.openai.com/docs", + "date": "2025-12-11", + "value": "Largest ecosystem with Assistants API, plugins, GPTs, Codex" + } + ], + "methodology": "Ecosystem breadth and depth analysis", + "last_verified": "2026-01-14" + }, + "license_terms": { + "score": 91, + "confidence": "high", + "evidence": [ + { + "source": "OpenAI Terms", + "url": "https://openai.com/policies/terms-of-use", + "date": "2025-12-11", + "value": "Standard commercial terms with usage policies" + } + ], + "methodology": "License terms review", + "last_verified": "2026-01-14" + } + }, + "notes": "Industry-leading operational maturity with largest ecosystem. Three model variants for different use cases. Excellent tooling." + } + }, + + "use_case_ratings": { + "code-generation": { + "overall": 95, + "notes": "80% SWE-bench with Codex variant reaching 56.4% SWE-bench Pro. 400K context enables full codebase analysis.", + "alternatives": ["claude-opus-4-5", "gpt-5-2-codex"] + }, + "customer-support": { + "overall": 94, + "notes": "Instant variant provides low latency. 30% fewer hallucinations improves response accuracy.", + "alternatives": ["claude-sonnet-4-5"] + }, + "content-creation": { + "overall": 95, + "notes": "Excellent creative capabilities with natural writing style. Multiple variants for different needs.", + "alternatives": ["claude-opus-4-5"] + }, + "data-analysis": { + "overall": 94, + "notes": "Strong analytical capabilities. 400K context enables massive dataset analysis.", + "alternatives": ["gemini-3-pro", "claude-opus-4-5"] + }, + "research-assistant": { + "overall": 95, + "notes": "Thinking variant excels at deep analysis. 400K context for comprehensive research.", + "alternatives": ["gemini-3-pro", "claude-opus-4-5"] + }, + "legal-compliance": { + "overall": 86, + "notes": "Good capabilities but not HIPAA eligible. 30-day default retention may be concern.", + "alternatives": ["claude-opus-4-5", "claude-sonnet-4-5"] + }, + "healthcare": { + "overall": 82, + "notes": "Not HIPAA eligible. Good clinical understanding but privacy controls less strict.", + "alternatives": ["claude-opus-4-5", "claude-sonnet-4-5"] + }, + "financial-analysis": { + "overall": 94, + "notes": "Excellent quantitative reasoning with 100% AIME. Strong for financial modeling.", + "alternatives": ["claude-opus-4-5", "gemini-3-pro"] + }, + "education": { + "overall": 96, + "notes": "Exceptional math (100% AIME). Patient explanations with reduced hallucinations.", + "alternatives": ["claude-opus-4-5", "gemini-3-pro"] + }, + "creative-writing": { + "overall": 94, + "notes": "Strong creative capabilities with good narrative flow and character development.", + "alternatives": ["claude-opus-4-5"] + } + }, + + "strengths": [ + "Industry-leading reasoning: 100% AIME, 52.9% ARC-AGI-2, 93.2% GPQA Diamond", + "400K context window (largest non-Google model)", + "~30% fewer hallucinations than GPT-5.1", + "Three variants: Instant (speed), Thinking (reasoning), Pro (accuracy)", + "90.5% ARC-AGI-1 (first model above 90%)", + "~390x efficiency improvement on ARC-AGI-1 vs o3 (High) from year prior", + "Largest AI ecosystem with best tooling" + ], + + "limitations": [ + "Not HIPAA eligible (unlike Claude models)", + "30-day data retention vs Anthropic's 0-day", + "1.4x price increase over GPT-5.1 ($1.75/$14)", + "Slightly behind Claude Opus 4.5 on SWE-bench (80% vs 80.9%)", + "Smaller context than Gemini 3 (400K vs 1M)" + ], + + "best_for": [ + "Math-heavy applications (100% AIME)", + "Abstract reasoning tasks (52.9% ARC-AGI-2)", + "Low-latency applications (Instant variant)", + "Organizations in OpenAI ecosystem", + "Long-context applications up to 400K tokens" + ], + + "not_recommended_for": [ + "HIPAA-compliant healthcare applications", + "Applications requiring zero data retention", + "Ultra-long documents (>400K tokens)", + "Cost-sensitive high-volume (1.4x price increase)" + ], + + "metadata": { + "pricing": { + "input": "$1.75 per 1M tokens", + "output": "$14.00 per 1M tokens", + "notes": "1.4x price increase from GPT-5.1, reflecting enhanced capabilities", + "last_verified": "2026-01-14" + }, + "context_window": 400000, + "max_output": 128000, + "languages": [ + "English", + "Spanish", + "French", + "German", + "Italian", + "Portuguese", + "Japanese", + "Korean", + "Chinese", + "Russian", + "Arabic", + "Hindi", + "50+ languages" + ], + "modalities": ["text", "vision", "audio (input/output)"], + "api_endpoint": "https://api.openai.com/v1/chat/completions", + "open_source": false, + "architecture": "Transformer-based with unified thinking system", + "parameters": "Not disclosed", + "knowledge_cutoff": "August 31, 2025" + }, + + "related_entities": ["gpt-5-1", "gpt-5-2-codex", "claude-opus-4-5", "gemini-3-pro"], + + "tags": [ + "reasoning", + "multimodal", + "400k-context", + "ecosystem-leader", + "math-expert", + "three-variants", + "low-latency", + "flagship" + ] +} From ae9072623d35d23ed9a31197cdb0a4f56cde0688 Mon Sep 17 00:00:00 2001 From: JBAhire Date: Fri, 16 Jan 2026 13:57:14 +0530 Subject: [PATCH 2/4] feat: Add agent and MCP server evaluations Add TrustVector evaluations for AI agents: - Glean AI - Kore AI - Relevance AI - Sierra AI Add evaluations for MCP servers: - GitLab MCP Server - Perplexity MCP Server - Supabase MCP Server - Tavily MCP Server --- data/agents/glean-ai.json | 436 ++++++++++++++++++++++++++ data/agents/kore-ai.json | 436 ++++++++++++++++++++++++++ data/agents/relevance-ai.json | 407 +++++++++++++++++++++++++ data/agents/sierra-ai.json | 394 ++++++++++++++++++++++++ data/mcps/mcp-server-gitlab.json | 438 ++++++++++++++++++++++++++ data/mcps/mcp-server-perplexity.json | 410 +++++++++++++++++++++++++ data/mcps/mcp-server-supabase.json | 439 +++++++++++++++++++++++++++ data/mcps/mcp-server-tavily.json | 410 +++++++++++++++++++++++++ 8 files changed, 3370 insertions(+) create mode 100644 data/agents/glean-ai.json create mode 100644 data/agents/kore-ai.json create mode 100644 data/agents/relevance-ai.json create mode 100644 data/agents/sierra-ai.json create mode 100644 data/mcps/mcp-server-gitlab.json create mode 100644 data/mcps/mcp-server-perplexity.json create mode 100644 data/mcps/mcp-server-supabase.json create mode 100644 data/mcps/mcp-server-tavily.json diff --git a/data/agents/glean-ai.json b/data/agents/glean-ai.json new file mode 100644 index 0000000..fb86ff9 --- /dev/null +++ b/data/agents/glean-ai.json @@ -0,0 +1,436 @@ +{ + "id": "glean-ai", + "type": "agent", + "name": "Glean AI", + "provider": "Glean Technologies Inc.", + "version": "2025.1", + "last_evaluated": "2025-01-14", + "evaluated_by": "TrustVector Team", + "description": "Enterprise AI platform for work that unifies information across business tools and applications. Provides intelligent search, knowledge discovery, and AI assistants that understand organizational context for improved productivity.", + "website": "https://www.glean.com/", + "trust_vector": { + "performance_reliability": { + "overall_score": 88, + "criteria": { + "search_accuracy": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Glean Search", + "url": "https://www.glean.com/product/search", + "date": "2025-01-10", + "value": "AI-powered semantic search with deep understanding of enterprise content" + } + ], + "methodology": "Search quality testing", + "last_verified": "2025-01-14" + }, + "knowledge_synthesis": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Glean AI Assistant", + "url": "https://www.glean.com/product/assistant", + "date": "2025-01-10", + "value": "Synthesizes information from multiple sources with citations" + } + ], + "methodology": "Knowledge synthesis testing", + "last_verified": "2025-01-14" + }, + "integration_coverage": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Glean Integrations", + "url": "https://www.glean.com/connectors", + "date": "2025-01-10", + "value": "100+ connectors for enterprise applications" + } + ], + "methodology": "Integration coverage review", + "last_verified": "2025-01-14" + }, + "response_quality": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Glean Assistant", + "url": "https://www.glean.com/product/assistant", + "date": "2025-01-10", + "value": "High-quality responses grounded in organizational knowledge" + } + ], + "methodology": "Response quality assessment", + "last_verified": "2025-01-14" + }, + "personalization": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Glean Personalization", + "url": "https://www.glean.com/", + "date": "2025-01-10", + "value": "Learns user preferences and organizational context" + } + ], + "methodology": "Personalization testing", + "last_verified": "2025-01-14" + } + } + }, + "security": { + "overall_score": 91, + "criteria": { + "enterprise_security": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "Glean Security", + "url": "https://www.glean.com/security", + "date": "2025-01-10", + "value": "SOC 2 Type II, ISO 27001, GDPR compliant" + } + ], + "methodology": "Security certification review", + "last_verified": "2025-01-14" + }, + "permission_inheritance": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "Glean Permissions", + "url": "https://www.glean.com/security", + "date": "2025-01-10", + "value": "Respects source system permissions - users only see what they have access to" + } + ], + "methodology": "Permission model review", + "last_verified": "2025-01-14" + }, + "data_encryption": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Glean Data Security", + "url": "https://www.glean.com/security", + "date": "2025-01-10", + "value": "Encryption at rest and in transit with customer-managed keys option" + } + ], + "methodology": "Encryption review", + "last_verified": "2025-01-14" + }, + "sso_integration": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Glean SSO", + "url": "https://www.glean.com/security", + "date": "2025-01-10", + "value": "SAML 2.0 and OIDC SSO integration" + } + ], + "methodology": "SSO integration review", + "last_verified": "2025-01-14" + }, + "zero_trust_architecture": { + "score": 88, + "confidence": "medium", + "evidence": [ + { + "source": "Glean Architecture", + "url": "https://www.glean.com/security", + "date": "2025-01-10", + "value": "Zero-trust security model with continuous verification" + } + ], + "methodology": "Architecture review", + "last_verified": "2025-01-14" + } + } + }, + "privacy_compliance": { + "overall_score": 90, + "criteria": { + "gdpr_compliance": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Glean GDPR", + "url": "https://www.glean.com/security", + "date": "2025-01-10", + "value": "Full GDPR compliance with data processing agreements" + } + ], + "methodology": "GDPR compliance review", + "last_verified": "2025-01-14" + }, + "data_isolation": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Glean Data Architecture", + "url": "https://www.glean.com/security", + "date": "2025-01-10", + "value": "Customer data isolated with no cross-tenant access" + } + ], + "methodology": "Data isolation review", + "last_verified": "2025-01-14" + }, + "data_residency": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Glean Regions", + "url": "https://www.glean.com/security", + "date": "2025-01-10", + "value": "Regional data residency options available" + } + ], + "methodology": "Data residency review", + "last_verified": "2025-01-14" + }, + "no_training_on_data": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Glean Privacy", + "url": "https://www.glean.com/security", + "date": "2025-01-10", + "value": "Customer data not used for model training" + } + ], + "methodology": "Privacy policy review", + "last_verified": "2025-01-14" + } + } + }, + "trust_transparency": { + "overall_score": 85, + "criteria": { + "documentation_quality": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Glean Docs", + "url": "https://help.glean.com/", + "date": "2025-01-10", + "value": "Good documentation for administrators and users" + } + ], + "methodology": "Documentation review", + "last_verified": "2025-01-14" + }, + "source_attribution": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Glean Citations", + "url": "https://www.glean.com/product/assistant", + "date": "2025-01-10", + "value": "AI responses include source citations and links" + } + ], + "methodology": "Attribution testing", + "last_verified": "2025-01-14" + }, + "activity_logging": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Glean Admin", + "url": "https://help.glean.com/", + "date": "2025-01-10", + "value": "Comprehensive admin dashboards and audit logs" + } + ], + "methodology": "Logging capability review", + "last_verified": "2025-01-14" + }, + "model_transparency": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Glean AI", + "url": "https://www.glean.com/", + "date": "2025-01-10", + "value": "Uses multiple LLMs but limited technical disclosure" + } + ], + "methodology": "Model transparency review", + "last_verified": "2025-01-14" + } + } + }, + "operational_excellence": { + "overall_score": 87, + "criteria": { + "ease_of_deployment": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Glean Setup", + "url": "https://help.glean.com/", + "date": "2025-01-10", + "value": "Quick deployment with pre-built connectors" + } + ], + "methodology": "Deployment assessment", + "last_verified": "2025-01-14" + }, + "user_adoption": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Glean UX", + "url": "https://www.glean.com/", + "date": "2025-01-10", + "value": "Intuitive interface driving high user adoption" + } + ], + "methodology": "User experience review", + "last_verified": "2025-01-14" + }, + "scalability": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Glean Enterprise", + "url": "https://www.glean.com/", + "date": "2025-01-10", + "value": "Scales to large enterprise deployments" + } + ], + "methodology": "Scalability assessment", + "last_verified": "2025-01-14" + }, + "support_quality": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Glean Support", + "url": "https://www.glean.com/", + "date": "2025-01-10", + "value": "Enterprise support with dedicated customer success" + } + ], + "methodology": "Support quality review", + "last_verified": "2025-01-14" + }, + "api_extensibility": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Glean API", + "url": "https://developers.glean.com/", + "date": "2025-01-10", + "value": "API available for custom integrations" + } + ], + "methodology": "API capability review", + "last_verified": "2025-01-14" + } + } + } + }, + "use_case_ratings": { + "customer-support": { + "overall": 82, + "notes": "Good for internal support knowledge access" + }, + "code-generation": { + "overall": 70, + "notes": "Can search code but not primary focus" + }, + "research-assistant": { + "overall": 95, + "notes": "Excellent for internal knowledge research" + }, + "data-analysis": { + "overall": 78, + "notes": "Can surface data insights from connected sources" + }, + "content-creation": { + "overall": 80, + "notes": "Good for finding reference content" + }, + "education": { + "overall": 82, + "notes": "Great for employee onboarding and training" + }, + "healthcare": { + "overall": 85, + "notes": "Good for healthcare knowledge management" + }, + "financial-analysis": { + "overall": 82, + "notes": "Useful for financial knowledge discovery" + }, + "legal-compliance": { + "overall": 85, + "notes": "Strong for policy and compliance document search" + }, + "creative-writing": { + "overall": 65, + "notes": "Not designed for creative use cases" + } + }, + "best_for": [ + "Enterprise knowledge management", + "Employee productivity and onboarding", + "Organizations with many disconnected tools", + "Teams needing unified search across systems" + ], + "strengths": [ + "Excellent semantic search across enterprise tools", + "Respects existing permission models", + "100+ pre-built connectors", + "AI responses grounded in organizational knowledge", + "Strong enterprise security (SOC 2, ISO 27001)", + "No customer data used for training" + ], + "limitations": [ + "Enterprise pricing may be high for smaller organizations", + "Quality depends on connected source quality", + "Requires connector setup for each tool", + "Limited customization of AI behavior", + "Proprietary platform with vendor lock-in", + "Best for knowledge work, not operational automation" + ], + "metadata": { + "license": "Proprietary", + "supported_platforms": ["Cloud"], + "deployment_type": "SaaS", + "connectors": "100+", + "pricing": "Enterprise pricing - contact sales", + "certifications": ["SOC 2 Type II", "ISO 27001", "GDPR"], + "founded": "2019", + "headquarters": "Palo Alto, CA", + "funding": "Series D ($200M at $2.2B valuation)" + }, + "tags": ["enterprise", "knowledge-management", "search", "productivity"] +} diff --git a/data/agents/kore-ai.json b/data/agents/kore-ai.json new file mode 100644 index 0000000..2de6aa1 --- /dev/null +++ b/data/agents/kore-ai.json @@ -0,0 +1,436 @@ +{ + "id": "kore-ai", + "type": "agent", + "name": "Kore.ai", + "provider": "Kore.ai Inc.", + "version": "11.0", + "last_evaluated": "2025-01-14", + "evaluated_by": "TrustVector Team", + "description": "Enterprise-grade agentic AI platform for designing, deploying, managing, and scaling AI agents across business operations. Offers no-code builders, pre-built industry solutions, and comprehensive orchestration capabilities for complex enterprise workflows.", + "website": "https://kore.ai/", + "trust_vector": { + "performance_reliability": { + "overall_score": 87, + "criteria": { + "task_completion_accuracy": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Documentation", + "url": "https://developer.kore.ai/", + "date": "2025-01-10", + "value": "High accuracy in enterprise conversation and task completion" + } + ], + "methodology": "Enterprise deployment analysis", + "last_verified": "2025-01-14" + }, + "natural_language_understanding": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai NLU Engine", + "url": "https://kore.ai/platform/", + "date": "2025-01-10", + "value": "Advanced NLU with multi-engine approach for high accuracy" + } + ], + "methodology": "NLU capability testing", + "last_verified": "2025-01-14" + }, + "multi_channel_support": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Channels", + "url": "https://kore.ai/platform/", + "date": "2025-01-10", + "value": "35+ channels including web, mobile, voice, and messaging platforms" + } + ], + "methodology": "Channel integration testing", + "last_verified": "2025-01-14" + }, + "workflow_orchestration": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Orchestration", + "url": "https://developer.kore.ai/", + "date": "2025-01-10", + "value": "Sophisticated workflow orchestration with dialog management" + } + ], + "methodology": "Orchestration capability review", + "last_verified": "2025-01-14" + }, + "scalability": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Enterprise", + "url": "https://kore.ai/", + "date": "2025-01-10", + "value": "Enterprise-scale deployments handling millions of conversations" + } + ], + "methodology": "Scalability assessment", + "last_verified": "2025-01-14" + } + } + }, + "security": { + "overall_score": 90, + "criteria": { + "enterprise_security": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Security", + "url": "https://kore.ai/security/", + "date": "2025-01-10", + "value": "SOC 2 Type II, ISO 27001, GDPR compliant" + } + ], + "methodology": "Security certification review", + "last_verified": "2025-01-14" + }, + "data_encryption": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Data Security", + "url": "https://kore.ai/security/", + "date": "2025-01-10", + "value": "End-to-end encryption at rest and in transit" + } + ], + "methodology": "Encryption review", + "last_verified": "2025-01-14" + }, + "access_control": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai RBAC", + "url": "https://developer.kore.ai/", + "date": "2025-01-10", + "value": "Role-based access control with SSO integration" + } + ], + "methodology": "Access control assessment", + "last_verified": "2025-01-14" + }, + "audit_logging": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Compliance", + "url": "https://kore.ai/security/", + "date": "2025-01-10", + "value": "Comprehensive audit trails for compliance" + } + ], + "methodology": "Audit capability review", + "last_verified": "2025-01-14" + }, + "pii_handling": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai PII", + "url": "https://developer.kore.ai/", + "date": "2025-01-10", + "value": "PII redaction and masking capabilities" + } + ], + "methodology": "PII handling assessment", + "last_verified": "2025-01-14" + } + } + }, + "privacy_compliance": { + "overall_score": 88, + "criteria": { + "gdpr_compliance": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai GDPR", + "url": "https://kore.ai/security/", + "date": "2025-01-10", + "value": "Full GDPR compliance with data subject rights" + } + ], + "methodology": "GDPR compliance review", + "last_verified": "2025-01-14" + }, + "hipaa_compliance": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai HIPAA", + "url": "https://kore.ai/security/", + "date": "2025-01-10", + "value": "HIPAA compliant for healthcare deployments" + } + ], + "methodology": "HIPAA compliance review", + "last_verified": "2025-01-14" + }, + "data_residency": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Data Centers", + "url": "https://kore.ai/security/", + "date": "2025-01-10", + "value": "Multiple regions with data residency options" + } + ], + "methodology": "Data residency review", + "last_verified": "2025-01-14" + }, + "data_retention": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Policies", + "url": "https://kore.ai/privacy/", + "date": "2025-01-10", + "value": "Configurable retention policies per enterprise needs" + } + ], + "methodology": "Retention policy review", + "last_verified": "2025-01-14" + } + } + }, + "trust_transparency": { + "overall_score": 84, + "criteria": { + "documentation_quality": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Developer Docs", + "url": "https://developer.kore.ai/", + "date": "2025-01-10", + "value": "Comprehensive documentation with tutorials and API reference" + } + ], + "methodology": "Documentation review", + "last_verified": "2025-01-14" + }, + "conversation_history": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Analytics", + "url": "https://kore.ai/platform/", + "date": "2025-01-10", + "value": "Full conversation logs with analytics dashboard" + } + ], + "methodology": "Logging capability assessment", + "last_verified": "2025-01-14" + }, + "model_transparency": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Kore.ai Platform", + "url": "https://kore.ai/platform/", + "date": "2025-01-10", + "value": "Proprietary models with limited technical disclosure" + } + ], + "methodology": "Model transparency review", + "last_verified": "2025-01-14" + }, + "performance_metrics": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Analytics", + "url": "https://kore.ai/platform/", + "date": "2025-01-10", + "value": "Real-time metrics and KPI dashboards" + } + ], + "methodology": "Analytics review", + "last_verified": "2025-01-14" + } + } + }, + "operational_excellence": { + "overall_score": 86, + "criteria": { + "ease_of_deployment": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai No-Code", + "url": "https://kore.ai/platform/", + "date": "2025-01-10", + "value": "No-code builder for rapid deployment" + } + ], + "methodology": "Deployment complexity assessment", + "last_verified": "2025-01-14" + }, + "integration_ecosystem": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Integrations", + "url": "https://kore.ai/integrations/", + "date": "2025-01-10", + "value": "200+ pre-built integrations with enterprise systems" + } + ], + "methodology": "Integration ecosystem review", + "last_verified": "2025-01-14" + }, + "support_quality": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Support", + "url": "https://kore.ai/", + "date": "2025-01-10", + "value": "24/7 enterprise support with dedicated success managers" + } + ], + "methodology": "Support quality assessment", + "last_verified": "2025-01-14" + }, + "customization": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Customization", + "url": "https://developer.kore.ai/", + "date": "2025-01-10", + "value": "Extensive customization through SDK and APIs" + } + ], + "methodology": "Customization capability review", + "last_verified": "2025-01-14" + }, + "industry_solutions": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Kore.ai Industries", + "url": "https://kore.ai/industries/", + "date": "2025-01-10", + "value": "Pre-built solutions for banking, healthcare, retail, and more" + } + ], + "methodology": "Industry solution review", + "last_verified": "2025-01-14" + } + } + } + }, + "use_case_ratings": { + "customer-support": { + "overall": 95, + "notes": "Outstanding for enterprise customer service automation" + }, + "code-generation": { + "overall": 65, + "notes": "Not designed for code generation use cases" + }, + "research-assistant": { + "overall": 72, + "notes": "Can support internal knowledge retrieval" + }, + "data-analysis": { + "overall": 75, + "notes": "Good analytics but not primary focus" + }, + "content-creation": { + "overall": 68, + "notes": "Limited content generation capabilities" + }, + "education": { + "overall": 78, + "notes": "Good for educational institution support bots" + }, + "healthcare": { + "overall": 92, + "notes": "HIPAA compliant with healthcare-specific solutions" + }, + "financial-analysis": { + "overall": 88, + "notes": "Strong financial services solutions with compliance" + }, + "legal-compliance": { + "overall": 85, + "notes": "Good compliance features for regulated industries" + }, + "creative-writing": { + "overall": 55, + "notes": "Not designed for creative applications" + } + }, + "best_for": [ + "Enterprise customer service automation", + "Banks and financial institutions", + "Healthcare organizations needing HIPAA compliance", + "Large enterprises with multi-channel support needs" + ], + "strengths": [ + "Enterprise-grade security and compliance (SOC 2, HIPAA, GDPR)", + "No-code builder for rapid deployment", + "200+ pre-built integrations", + "35+ channel support", + "Industry-specific pre-built solutions", + "Scalable for millions of conversations" + ], + "limitations": [ + "Enterprise pricing may be prohibitive for smaller organizations", + "Complex setup for advanced customizations", + "Proprietary platform with vendor lock-in concerns", + "Limited open-source components", + "Steep learning curve for advanced features", + "Best suited for conversational AI, not general agents" + ], + "metadata": { + "license": "Proprietary", + "supported_platforms": ["Cloud", "On-premise"], + "programming_languages": ["JavaScript", "Python"], + "deployment_type": "SaaS, On-premise, Hybrid", + "pricing": "Enterprise pricing - contact sales", + "certifications": ["SOC 2 Type II", "ISO 27001", "HIPAA", "GDPR"], + "founded": "2014", + "headquarters": "Orlando, FL", + "customers": "Fortune 500 companies" + }, + "tags": ["enterprise", "conversational-ai", "customer-support", "no-code"] +} diff --git a/data/agents/relevance-ai.json b/data/agents/relevance-ai.json new file mode 100644 index 0000000..9dade83 --- /dev/null +++ b/data/agents/relevance-ai.json @@ -0,0 +1,407 @@ +{ + "id": "relevance-ai", + "type": "agent", + "name": "Relevance AI", + "provider": "Relevance AI Pty Ltd", + "version": "2025.1", + "last_evaluated": "2025-01-14", + "evaluated_by": "TrustVector Team", + "description": "No-code AI agent platform that enables teams to build, customize, and deploy AI workforce agents. Features visual workflow builders, tool integrations, and the ability to create specialized AI employees for various business functions including sales, support, and research.", + "website": "https://relevanceai.com/", + "trust_vector": { + "performance_reliability": { + "overall_score": 82, + "criteria": { + "task_completion": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Relevance AI Platform", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Agents complete complex multi-step tasks with tool usage" + } + ], + "methodology": "Task completion testing", + "last_verified": "2025-01-14" + }, + "tool_integration": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Relevance AI Tools", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Integrates with popular tools: Gmail, Slack, HubSpot, etc." + } + ], + "methodology": "Tool integration testing", + "last_verified": "2025-01-14" + }, + "workflow_reliability": { + "score": 80, + "confidence": "medium", + "evidence": [ + { + "source": "Relevance AI Workflows", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Visual workflow builder for reliable agent behavior" + } + ], + "methodology": "Workflow reliability testing", + "last_verified": "2025-01-14" + }, + "model_flexibility": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Relevance AI Models", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Supports multiple LLM providers (OpenAI, Anthropic, etc.)" + } + ], + "methodology": "Model flexibility review", + "last_verified": "2025-01-14" + }, + "error_handling": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Relevance AI Platform", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Error handling with retry logic and fallbacks" + } + ], + "methodology": "Error handling testing", + "last_verified": "2025-01-14" + } + } + }, + "security": { + "overall_score": 78, + "criteria": { + "data_security": { + "score": 80, + "confidence": "medium", + "evidence": [ + { + "source": "Relevance AI Security", + "url": "https://relevanceai.com/security", + "date": "2025-01-10", + "value": "SOC 2 Type II compliant infrastructure" + } + ], + "methodology": "Security certification review", + "last_verified": "2025-01-14" + }, + "api_key_management": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Relevance AI Platform", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Secure storage of third-party API keys" + } + ], + "methodology": "Key management review", + "last_verified": "2025-01-14" + }, + "action_permissions": { + "score": 75, + "confidence": "medium", + "evidence": [ + { + "source": "Relevance AI Agents", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Agents execute actions with configured permissions" + } + ], + "methodology": "Permission model review", + "last_verified": "2025-01-14" + }, + "audit_logging": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Relevance AI Logs", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Activity logging for agent actions" + } + ], + "methodology": "Audit capability review", + "last_verified": "2025-01-14" + } + } + }, + "privacy_compliance": { + "overall_score": 76, + "criteria": { + "data_handling": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Relevance AI Privacy", + "url": "https://relevanceai.com/privacy", + "date": "2025-01-10", + "value": "Data handling policies for platform usage" + } + ], + "methodology": "Privacy policy review", + "last_verified": "2025-01-14" + }, + "third_party_llm_exposure": { + "score": 72, + "confidence": "high", + "evidence": [ + { + "source": "Relevance AI Architecture", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Data sent to configured LLM providers" + } + ], + "methodology": "Data flow analysis", + "last_verified": "2025-01-14" + }, + "data_retention": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Relevance AI Terms", + "url": "https://relevanceai.com/terms", + "date": "2025-01-10", + "value": "Standard data retention policies" + } + ], + "methodology": "Retention policy review", + "last_verified": "2025-01-14" + } + } + }, + "trust_transparency": { + "overall_score": 82, + "criteria": { + "documentation_quality": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Relevance AI Docs", + "url": "https://docs.relevanceai.com/", + "date": "2025-01-10", + "value": "Good documentation with tutorials and examples" + } + ], + "methodology": "Documentation review", + "last_verified": "2025-01-14" + }, + "agent_visibility": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Relevance AI Platform", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Clear visibility into agent reasoning and actions" + } + ], + "methodology": "Visibility assessment", + "last_verified": "2025-01-14" + }, + "pricing_transparency": { + "score": 82, + "confidence": "high", + "evidence": [ + { + "source": "Relevance AI Pricing", + "url": "https://relevanceai.com/pricing", + "date": "2025-01-10", + "value": "Clear pricing tiers with credit-based system" + } + ], + "methodology": "Pricing review", + "last_verified": "2025-01-14" + }, + "community_engagement": { + "score": 80, + "confidence": "medium", + "evidence": [ + { + "source": "Relevance AI Community", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Active community and template marketplace" + } + ], + "methodology": "Community engagement review", + "last_verified": "2025-01-14" + } + } + }, + "operational_excellence": { + "overall_score": 84, + "criteria": { + "ease_of_use": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Relevance AI No-Code", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "No-code builder accessible to non-technical users" + } + ], + "methodology": "Usability assessment", + "last_verified": "2025-01-14" + }, + "template_library": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Relevance AI Templates", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Pre-built agent templates for common use cases" + } + ], + "methodology": "Template library review", + "last_verified": "2025-01-14" + }, + "deployment_speed": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Relevance AI Platform", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Deploy agents quickly without infrastructure management" + } + ], + "methodology": "Deployment speed testing", + "last_verified": "2025-01-14" + }, + "cost_efficiency": { + "score": 80, + "confidence": "high", + "evidence": [ + { + "source": "Relevance AI Pricing", + "url": "https://relevanceai.com/pricing", + "date": "2025-01-10", + "value": "Credit-based pricing with free tier available" + } + ], + "methodology": "Cost analysis", + "last_verified": "2025-01-14" + }, + "customization": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Relevance AI Builder", + "url": "https://relevanceai.com/", + "date": "2025-01-10", + "value": "Flexible customization through visual builder" + } + ], + "methodology": "Customization review", + "last_verified": "2025-01-14" + } + } + } + }, + "use_case_ratings": { + "customer-support": { + "overall": 85, + "notes": "Good templates for support automation" + }, + "code-generation": { + "overall": 70, + "notes": "Can build coding assistants but not primary focus" + }, + "research-assistant": { + "overall": 88, + "notes": "Strong for research agents with web search" + }, + "data-analysis": { + "overall": 80, + "notes": "Can build data analysis workflows" + }, + "content-creation": { + "overall": 88, + "notes": "Good for content generation workflows" + }, + "education": { + "overall": 80, + "notes": "Can create educational assistants" + }, + "healthcare": { + "overall": 68, + "notes": "Limited healthcare-specific features" + }, + "financial-analysis": { + "overall": 72, + "notes": "Can build financial research agents" + }, + "legal-compliance": { + "overall": 70, + "notes": "SOC 2 compliant but limited legal features" + }, + "creative-writing": { + "overall": 85, + "notes": "Good for creative content workflows" + } + }, + "best_for": [ + "Teams wanting no-code agent building", + "Sales and marketing automation", + "Research and content generation", + "Small to medium businesses" + ], + "strengths": [ + "No-code visual builder for non-technical users", + "Multiple LLM provider support", + "Pre-built templates for quick start", + "Good tool integrations (email, CRM, etc.)", + "Credit-based pricing with free tier", + "Active community and marketplace" + ], + "limitations": [ + "Data exposure to third-party LLM providers", + "Less suitable for complex enterprise needs", + "Newer platform with evolving features", + "Credit costs can accumulate with heavy usage", + "Limited advanced customization options", + "Fewer enterprise security features than competitors" + ], + "metadata": { + "license": "Proprietary", + "supported_platforms": ["Cloud"], + "deployment_type": "SaaS", + "pricing": "Free tier, Pro from $19/month, Team from $199/month", + "certifications": ["SOC 2 Type II"], + "founded": "2020", + "headquarters": "Sydney, Australia", + "supported_llms": ["OpenAI", "Anthropic", "Google", "Cohere"] + }, + "tags": ["no-code", "workflow-automation", "sales", "marketing", "research"] +} diff --git a/data/agents/sierra-ai.json b/data/agents/sierra-ai.json new file mode 100644 index 0000000..b5d1fe0 --- /dev/null +++ b/data/agents/sierra-ai.json @@ -0,0 +1,394 @@ +{ + "id": "sierra-ai", + "type": "agent", + "name": "Sierra", + "provider": "Sierra Technologies Inc.", + "version": "2025.1", + "last_evaluated": "2025-01-14", + "evaluated_by": "TrustVector Team", + "description": "Conversational AI platform specialized in autonomous customer experience agents. Founded by former Salesforce co-CEO Bret Taylor and ex-Google executive Clay Bavor, Sierra focuses on transactional CX workflows with agents that can take real actions on behalf of customers.", + "website": "https://sierra.ai/", + "trust_vector": { + "performance_reliability": { + "overall_score": 86, + "criteria": { + "conversation_quality": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Sierra Platform", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Natural, empathetic conversations with brand voice customization" + } + ], + "methodology": "Conversation quality testing", + "last_verified": "2025-01-14" + }, + "action_execution": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Sierra Actions", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Agents can take real actions: process returns, update orders, etc." + } + ], + "methodology": "Action capability testing", + "last_verified": "2025-01-14" + }, + "resolution_rate": { + "score": 85, + "confidence": "medium", + "evidence": [ + { + "source": "Sierra Customers", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "High resolution rates reported by enterprise customers" + } + ], + "methodology": "Resolution rate analysis", + "last_verified": "2025-01-14" + }, + "brand_alignment": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Sierra Customization", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Deep brand voice and tone customization" + } + ], + "methodology": "Brand alignment testing", + "last_verified": "2025-01-14" + }, + "escalation_handling": { + "score": 85, + "confidence": "medium", + "evidence": [ + { + "source": "Sierra Handoff", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Smart escalation to human agents when needed" + } + ], + "methodology": "Escalation flow testing", + "last_verified": "2025-01-14" + } + } + }, + "security": { + "overall_score": 85, + "criteria": { + "enterprise_security": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Sierra Security", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Enterprise-grade security for Fortune 500 customers" + } + ], + "methodology": "Security assessment", + "last_verified": "2025-01-14" + }, + "action_guardrails": { + "score": 85, + "confidence": "medium", + "evidence": [ + { + "source": "Sierra Platform", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Guardrails and policies to control agent actions" + } + ], + "methodology": "Guardrails review", + "last_verified": "2025-01-14" + }, + "data_protection": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Sierra Privacy", + "url": "https://sierra.ai/privacy", + "date": "2025-01-10", + "value": "Data protection measures for customer information" + } + ], + "methodology": "Data protection review", + "last_verified": "2025-01-14" + }, + "access_control": { + "score": 85, + "confidence": "medium", + "evidence": [ + { + "source": "Sierra Admin", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Role-based access control for administrators" + } + ], + "methodology": "Access control review", + "last_verified": "2025-01-14" + } + } + }, + "privacy_compliance": { + "overall_score": 82, + "criteria": { + "customer_data_handling": { + "score": 85, + "confidence": "medium", + "evidence": [ + { + "source": "Sierra Privacy", + "url": "https://sierra.ai/privacy", + "date": "2025-01-10", + "value": "Customer data handling policies for enterprise use" + } + ], + "methodology": "Privacy policy review", + "last_verified": "2025-01-14" + }, + "compliance_support": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Sierra Enterprise", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Supports enterprise compliance requirements" + } + ], + "methodology": "Compliance review", + "last_verified": "2025-01-14" + }, + "data_minimization": { + "score": 80, + "confidence": "medium", + "evidence": [ + { + "source": "Sierra Data Practices", + "url": "https://sierra.ai/privacy", + "date": "2025-01-10", + "value": "Collects data necessary for service delivery" + } + ], + "methodology": "Data practices review", + "last_verified": "2025-01-14" + } + } + }, + "trust_transparency": { + "overall_score": 80, + "criteria": { + "conversation_visibility": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Sierra Analytics", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Full conversation logs and analytics" + } + ], + "methodology": "Visibility assessment", + "last_verified": "2025-01-14" + }, + "action_transparency": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Sierra Platform", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Actions taken by agents are logged and reviewable" + } + ], + "methodology": "Action logging review", + "last_verified": "2025-01-14" + }, + "model_disclosure": { + "score": 72, + "confidence": "low", + "evidence": [ + { + "source": "Sierra Technology", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Proprietary technology with limited disclosure" + } + ], + "methodology": "Technology transparency review", + "last_verified": "2025-01-14" + }, + "company_transparency": { + "score": 82, + "confidence": "high", + "evidence": [ + { + "source": "Sierra Leadership", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Well-known founders with public profiles" + } + ], + "methodology": "Company transparency review", + "last_verified": "2025-01-14" + } + } + }, + "operational_excellence": { + "overall_score": 84, + "criteria": { + "implementation_support": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Sierra Onboarding", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "White-glove implementation for enterprise customers" + } + ], + "methodology": "Implementation review", + "last_verified": "2025-01-14" + }, + "system_integration": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Sierra Integrations", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Integrates with CRM, order management, and support systems" + } + ], + "methodology": "Integration review", + "last_verified": "2025-01-14" + }, + "analytics": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Sierra Analytics", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Rich analytics for conversation and business insights" + } + ], + "methodology": "Analytics capability review", + "last_verified": "2025-01-14" + }, + "continuous_improvement": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Sierra Platform", + "url": "https://sierra.ai/", + "date": "2025-01-10", + "value": "Continuous learning and improvement capabilities" + } + ], + "methodology": "Improvement process review", + "last_verified": "2025-01-14" + } + } + } + }, + "use_case_ratings": { + "customer-support": { + "overall": 96, + "notes": "Purpose-built for autonomous customer service" + }, + "code-generation": { + "overall": 40, + "notes": "Not designed for code generation" + }, + "research-assistant": { + "overall": 55, + "notes": "Not designed for research tasks" + }, + "data-analysis": { + "overall": 60, + "notes": "Limited to customer service analytics" + }, + "content-creation": { + "overall": 50, + "notes": "Not designed for content creation" + }, + "education": { + "overall": 65, + "notes": "Could support educational institution support" + }, + "healthcare": { + "overall": 70, + "notes": "Could support patient service inquiries" + }, + "financial-analysis": { + "overall": 55, + "notes": "Not designed for financial analysis" + }, + "legal-compliance": { + "overall": 60, + "notes": "Limited compliance-specific features" + }, + "creative-writing": { + "overall": 40, + "notes": "Not designed for creative applications" + } + }, + "best_for": [ + "E-commerce customer service automation", + "Retail brands needing 24/7 support", + "Companies wanting agents that take actions", + "Brands prioritizing authentic customer experience" + ], + "strengths": [ + "Agents can take real transactional actions", + "Strong brand voice customization", + "Founded by proven tech leaders (Bret Taylor, Clay Bavor)", + "High-quality natural conversations", + "Enterprise-grade reliability", + "Smart escalation to human agents" + ], + "limitations": [ + "Focused solely on customer service use cases", + "Enterprise pricing - not for small businesses", + "Newer company (founded 2023)", + "Limited public documentation", + "Proprietary technology with limited disclosure", + "Requires system integrations for full capability" + ], + "metadata": { + "license": "Proprietary", + "supported_platforms": ["Cloud"], + "deployment_type": "SaaS", + "pricing": "Enterprise pricing - contact sales", + "founded": "2023", + "founders": "Bret Taylor (ex-Salesforce co-CEO), Clay Bavor (ex-Google)", + "headquarters": "San Francisco, CA", + "funding": "$285M Series C at $4.5B valuation (Dec 2024)", + "customers": "WeightWatchers, SiriusXM, ADT, OluKai" + }, + "tags": ["customer-support", "conversational-ai", "autonomous-agents", "e-commerce"] +} diff --git a/data/mcps/mcp-server-gitlab.json b/data/mcps/mcp-server-gitlab.json new file mode 100644 index 0000000..67b6439 --- /dev/null +++ b/data/mcps/mcp-server-gitlab.json @@ -0,0 +1,438 @@ +{ + "id": "mcp-server-gitlab", + "type": "mcp", + "name": "MCP GitLab Server", + "provider": "GitLab Community", + "version": "2025.3.2", + "last_evaluated": "2025-01-14", + "evaluated_by": "TrustVector Team", + "description": "MCP server providing AI models with comprehensive GitLab integration capabilities. Enables merge request management, CI/CD pipeline inspection, issue tracking, and code review workflows for enterprise teams using GitLab.", + "website": "https://gitlab.com/gitlab-org/gitlab-mcp-server", + "trust_vector": { + "performance_reliability": { + "overall_score": 84, + "criteria": { + "api_reliability": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "GitLab API Documentation", + "url": "https://docs.gitlab.com/ee/api/", + "date": "2025-01-10", + "value": "Built on GitLab's REST and GraphQL APIs with 99.95% uptime SLA" + } + ], + "methodology": "API stability and uptime analysis", + "last_verified": "2025-01-14" + }, + "operation_success_rate": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "MCP GitLab Server", + "url": "https://gitlab.com/gitlab-org/gitlab-mcp-server", + "date": "2025-01-10", + "value": "High success rate for MR operations, CI/CD inspection, and issue management" + } + ], + "methodology": "Operation success testing", + "last_verified": "2025-01-14" + }, + "rate_limit_handling": { + "score": 80, + "confidence": "medium", + "evidence": [ + { + "source": "GitLab Rate Limits", + "url": "https://docs.gitlab.com/ee/security/rate_limits.html", + "date": "2025-01-10", + "value": "Respects GitLab rate limits with configurable throttling" + } + ], + "methodology": "Rate limiting behavior testing", + "last_verified": "2025-01-14" + }, + "ci_cd_integration": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "GitLab CI/CD API", + "url": "https://docs.gitlab.com/ee/api/pipelines.html", + "date": "2025-01-10", + "value": "Full access to pipeline status, jobs, and artifacts" + } + ], + "methodology": "CI/CD integration testing", + "last_verified": "2025-01-14" + }, + "error_recovery": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "MCP Implementation", + "url": "https://gitlab.com/gitlab-org/gitlab-mcp-server", + "date": "2025-01-10", + "value": "Handles API errors with retry logic and graceful degradation" + } + ], + "methodology": "Error handling testing", + "last_verified": "2025-01-14" + } + } + }, + "security": { + "overall_score": 80, + "criteria": { + "authentication_security": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "GitLab Personal Access Tokens", + "url": "https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html", + "date": "2025-01-10", + "value": "Uses GitLab PAT or OAuth with fine-grained scopes" + } + ], + "methodology": "Authentication mechanism review", + "last_verified": "2025-01-14" + }, + "token_exposure_risk": { + "score": 72, + "confidence": "high", + "evidence": [ + { + "source": "MCP Security Model", + "url": "https://modelcontextprotocol.io/docs/security", + "date": "2025-01-10", + "value": "Token stored locally; AI can perform actions within token scope" + } + ], + "methodology": "Token security analysis", + "last_verified": "2025-01-14" + }, + "scope_limitation": { + "score": 82, + "confidence": "high", + "evidence": [ + { + "source": "GitLab Token Scopes", + "url": "https://docs.gitlab.com/ee/user/profile/personal_access_tokens.html#personal-access-token-scopes", + "date": "2025-01-10", + "value": "Supports granular scopes: read_api, write_repository, api, etc." + } + ], + "methodology": "Permission scope testing", + "last_verified": "2025-01-14" + }, + "action_auditability": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "GitLab Audit Events", + "url": "https://docs.gitlab.com/ee/administration/audit_events.html", + "date": "2025-01-10", + "value": "All actions logged in GitLab's audit system (Premium/Ultimate)" + } + ], + "methodology": "Audit logging review", + "last_verified": "2025-01-14" + }, + "self_hosted_option": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "GitLab Self-Managed", + "url": "https://docs.gitlab.com/ee/install/", + "date": "2025-01-10", + "value": "Full support for self-managed GitLab instances" + } + ], + "methodology": "Deployment options review", + "last_verified": "2025-01-14" + } + } + }, + "privacy_compliance": { + "overall_score": 78, + "criteria": { + "code_exposure": { + "score": 72, + "confidence": "high", + "evidence": [ + { + "source": "MCP Data Flow", + "url": "https://modelcontextprotocol.io/docs/architecture", + "date": "2025-01-10", + "value": "Repository code and metadata sent to LLM provider for analysis" + } + ], + "methodology": "Data flow analysis", + "last_verified": "2025-01-14" + }, + "sensitive_data_protection": { + "score": 70, + "confidence": "medium", + "evidence": [ + { + "source": "MCP Security Guidelines", + "url": "https://modelcontextprotocol.io/docs/security", + "date": "2025-01-10", + "value": "No built-in secret detection; CI/CD variables may be exposed" + } + ], + "methodology": "Privacy controls assessment", + "last_verified": "2025-01-14" + }, + "data_residency": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "GitLab Data Residency", + "url": "https://docs.gitlab.com/ee/user/project/settings/data_residency.html", + "date": "2025-01-10", + "value": "Self-hosted option provides full data residency control" + } + ], + "methodology": "Data residency review", + "last_verified": "2025-01-14" + }, + "third_party_data_sharing": { + "score": 75, + "confidence": "high", + "evidence": [ + { + "source": "LLM Provider Policies", + "url": "https://modelcontextprotocol.io/docs", + "date": "2025-01-10", + "value": "Repository data shared with configured LLM provider" + } + ], + "methodology": "Data sharing analysis", + "last_verified": "2025-01-14" + } + } + }, + "trust_transparency": { + "overall_score": 85, + "criteria": { + "documentation_quality": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "GitLab MCP Docs", + "url": "https://gitlab.com/gitlab-org/gitlab-mcp-server/-/blob/main/README.md", + "date": "2025-01-10", + "value": "Good documentation with setup guides and operation examples" + } + ], + "methodology": "Documentation completeness review", + "last_verified": "2025-01-14" + }, + "operation_visibility": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "MCP Protocol", + "url": "https://modelcontextprotocol.io/docs/protocol", + "date": "2025-01-10", + "value": "Operations visible in MCP logs and GitLab audit trail" + } + ], + "methodology": "Logging and traceability assessment", + "last_verified": "2025-01-14" + }, + "open_source_transparency": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "GitLab Repository", + "url": "https://gitlab.com/gitlab-org/gitlab-mcp-server", + "date": "2025-01-10", + "value": "Open source implementation with MIT license" + } + ], + "methodology": "Source code review", + "last_verified": "2025-01-14" + }, + "api_coverage_clarity": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "MCP Server Documentation", + "url": "https://gitlab.com/gitlab-org/gitlab-mcp-server", + "date": "2025-01-10", + "value": "Clear documentation of supported GitLab API operations" + } + ], + "methodology": "API documentation review", + "last_verified": "2025-01-14" + } + } + }, + "operational_excellence": { + "overall_score": 83, + "criteria": { + "ease_of_setup": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "MCP Setup Guide", + "url": "https://gitlab.com/gitlab-org/gitlab-mcp-server/-/blob/main/README.md", + "date": "2025-01-10", + "value": "Simple setup requiring GitLab PAT and instance URL" + } + ], + "methodology": "Setup complexity assessment", + "last_verified": "2025-01-14" + }, + "api_performance": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "GitLab API Performance", + "url": "https://status.gitlab.com/", + "date": "2025-01-10", + "value": "Response times typically 100-400ms depending on operation" + } + ], + "methodology": "Performance benchmarking", + "last_verified": "2025-01-14" + }, + "reliability": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "GitLab Status", + "url": "https://status.gitlab.com/", + "date": "2025-01-10", + "value": "GitLab.com uptime historically >99.95%" + } + ], + "methodology": "Uptime analysis", + "last_verified": "2025-01-14" + }, + "feature_coverage": { + "score": 84, + "confidence": "high", + "evidence": [ + { + "source": "MCP GitLab Server", + "url": "https://gitlab.com/gitlab-org/gitlab-mcp-server", + "date": "2025-01-10", + "value": "Covers MRs, issues, pipelines, projects, and file operations" + } + ], + "methodology": "Feature completeness assessment", + "last_verified": "2025-01-14" + }, + "enterprise_features": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "GitLab Enterprise", + "url": "https://about.gitlab.com/enterprise/", + "date": "2025-01-10", + "value": "Full support for GitLab Premium/Ultimate enterprise features" + } + ], + "methodology": "Enterprise capabilities assessment", + "last_verified": "2025-01-14" + } + } + } + }, + "strengths": [ + "Comprehensive GitLab API coverage (MRs, pipelines, issues)", + "Full CI/CD integration for pipeline management", + "Excellent for enterprise DevOps workflows", + "Supports self-managed GitLab instances for data control", + "Strong audit logging capabilities (Premium/Ultimate)", + "Fine-grained token scopes for security" + ], + "limitations": [ + "Repository code exposed to LLM provider APIs", + "CI/CD variables and secrets may be inadvertently exposed", + "Some features require GitLab Premium/Ultimate", + "Subject to GitLab API rate limits", + "No built-in secret detection in code", + "Newer than GitHub MCP, smaller community" + ], + "metadata": { + "license": "MIT", + "supported_platforms": ["All platforms with Node.js/Python"], + "programming_languages": ["TypeScript", "Python"], + "mcp_version": "1.0", + "github_repo": "https://gitlab.com/gitlab-org/gitlab-mcp-server", + "api_dependency": "GitLab REST API v4 / GraphQL", + "authentication": "GitLab Personal Access Token or OAuth", + "first_release": "2025-02", + "maintained_by": "GitLab Community", + "transport_types": ["stdio"], + "installation_methods": ["npm", "pip"] + }, + "use_case_ratings": { + "code-generation": { + "overall": 94, + "notes": "Excellent for AI-assisted development, MR creation, and code review" + }, + "customer-support": { + "overall": 70, + "notes": "Useful for creating issues and tracking feature requests" + }, + "content-creation": { + "overall": 68, + "notes": "Good for managing wiki and documentation in GitLab" + }, + "data-analysis": { + "overall": 80, + "notes": "Useful for analyzing repository metrics and CI/CD data" + }, + "research-assistant": { + "overall": 82, + "notes": "Good for researching codebases and tracking issues" + }, + "legal-compliance": { + "overall": 68, + "notes": "Self-hosted option helps with compliance requirements" + }, + "healthcare": { + "overall": 62, + "notes": "Self-hosted deployment recommended for healthcare use" + }, + "financial-analysis": { + "overall": 70, + "notes": "Self-hosted option suitable with proper access controls" + }, + "education": { + "overall": 85, + "notes": "Great for teaching DevOps and code review practices" + }, + "creative-writing": { + "overall": 65, + "notes": "Limited applicability for creative writing tasks" + } + }, + "best_for": [ + "Enterprise teams using GitLab for DevOps", + "Organizations requiring self-hosted source control", + "Teams wanting AI-assisted CI/CD management", + "Developers integrating AI with GitLab workflows" + ], + "tags": ["git", "gitlab", "devops", "ci-cd", "mcp", "model-context-protocol"] +} diff --git a/data/mcps/mcp-server-perplexity.json b/data/mcps/mcp-server-perplexity.json new file mode 100644 index 0000000..6a38a3a --- /dev/null +++ b/data/mcps/mcp-server-perplexity.json @@ -0,0 +1,410 @@ +{ + "id": "mcp-server-perplexity", + "type": "mcp", + "name": "MCP Perplexity Server", + "provider": "Perplexity AI", + "version": "2025.1.0", + "last_evaluated": "2025-01-14", + "evaluated_by": "TrustVector Team", + "description": "MCP server enabling AI models to leverage Perplexity's advanced search capabilities. Provides multi-source research with automatic citations, recency filtering, and domain-specific search modes for comprehensive information retrieval.", + "website": "https://www.perplexity.ai/", + "trust_vector": { + "performance_reliability": { + "overall_score": 88, + "criteria": { + "search_accuracy": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity API", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Advanced semantic search with multi-source aggregation" + } + ], + "methodology": "Search quality testing", + "last_verified": "2025-01-14" + }, + "citation_quality": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Citations", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Automatic inline citations with source verification" + } + ], + "methodology": "Citation accuracy testing", + "last_verified": "2025-01-14" + }, + "response_quality": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Responses", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Synthesized answers from multiple sources with coherent narratives" + } + ], + "methodology": "Response quality assessment", + "last_verified": "2025-01-14" + }, + "recency_filtering": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Features", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Configurable time filters for recent information" + } + ], + "methodology": "Recency testing", + "last_verified": "2025-01-14" + }, + "api_reliability": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Status", + "url": "https://status.perplexity.ai/", + "date": "2025-01-10", + "value": "High availability with enterprise-grade infrastructure" + } + ], + "methodology": "Reliability testing", + "last_verified": "2025-01-14" + } + } + }, + "security": { + "overall_score": 80, + "criteria": { + "api_key_security": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Auth", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Bearer token authentication with key rotation support" + } + ], + "methodology": "Authentication review", + "last_verified": "2025-01-14" + }, + "data_handling": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Perplexity Privacy", + "url": "https://www.perplexity.ai/privacy", + "date": "2025-01-10", + "value": "Queries processed through Perplexity infrastructure" + } + ], + "methodology": "Data handling review", + "last_verified": "2025-01-14" + }, + "content_safety": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Perplexity Safety", + "url": "https://www.perplexity.ai/", + "date": "2025-01-10", + "value": "Content moderation and safe search options" + } + ], + "methodology": "Content safety assessment", + "last_verified": "2025-01-14" + }, + "enterprise_security": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Enterprise", + "url": "https://www.perplexity.ai/enterprise", + "date": "2025-01-10", + "value": "SOC 2 compliance and enterprise security features" + } + ], + "methodology": "Enterprise security review", + "last_verified": "2025-01-14" + } + } + }, + "privacy_compliance": { + "overall_score": 78, + "criteria": { + "query_privacy": { + "score": 75, + "confidence": "medium", + "evidence": [ + { + "source": "Perplexity Privacy Policy", + "url": "https://www.perplexity.ai/privacy", + "date": "2025-01-10", + "value": "Query data used for service improvement and model training" + } + ], + "methodology": "Privacy policy review", + "last_verified": "2025-01-14" + }, + "enterprise_privacy": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Enterprise", + "url": "https://www.perplexity.ai/enterprise", + "date": "2025-01-10", + "value": "Enterprise tier offers data isolation and no training on queries" + } + ], + "methodology": "Enterprise privacy review", + "last_verified": "2025-01-14" + }, + "data_retention": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Perplexity Terms", + "url": "https://www.perplexity.ai/terms", + "date": "2025-01-10", + "value": "Standard retention policies with deletion options" + } + ], + "methodology": "Retention policy review", + "last_verified": "2025-01-14" + } + } + }, + "trust_transparency": { + "overall_score": 88, + "criteria": { + "documentation_quality": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Docs", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Comprehensive API documentation with examples" + } + ], + "methodology": "Documentation review", + "last_verified": "2025-01-14" + }, + "source_attribution": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Citations", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Excellent source attribution with inline citations" + } + ], + "methodology": "Attribution testing", + "last_verified": "2025-01-14" + }, + "model_transparency": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Perplexity Models", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Model options documented with capability descriptions" + } + ], + "methodology": "Model transparency review", + "last_verified": "2025-01-14" + }, + "pricing_clarity": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Pricing", + "url": "https://www.perplexity.ai/pricing", + "date": "2025-01-10", + "value": "Clear pricing with defined API quotas" + } + ], + "methodology": "Pricing review", + "last_verified": "2025-01-14" + } + } + }, + "operational_excellence": { + "overall_score": 86, + "criteria": { + "ease_of_setup": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Quickstart", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Simple API key setup with immediate access" + } + ], + "methodology": "Setup assessment", + "last_verified": "2025-01-14" + }, + "response_speed": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Performance", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Fast response times with streaming support" + } + ], + "methodology": "Performance testing", + "last_verified": "2025-01-14" + }, + "model_selection": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity Models", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Multiple model tiers for different use cases" + } + ], + "methodology": "Model options review", + "last_verified": "2025-01-14" + }, + "cost_efficiency": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Perplexity Pricing", + "url": "https://www.perplexity.ai/pricing", + "date": "2025-01-10", + "value": "Competitive pricing; can be cost-effective vs. multiple API calls" + } + ], + "methodology": "Cost analysis", + "last_verified": "2025-01-14" + }, + "integration_quality": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Perplexity SDK", + "url": "https://docs.perplexity.ai/", + "date": "2025-01-10", + "value": "Good SDK support with MCP integration" + } + ], + "methodology": "Integration testing", + "last_verified": "2025-01-14" + } + } + } + }, + "strengths": [ + "Excellent citation and source attribution", + "Multi-source aggregation for comprehensive answers", + "Advanced semantic search capabilities", + "Recency filtering for current information", + "Enterprise tier with enhanced privacy", + "High-quality synthesized responses" + ], + "limitations": [ + "Queries processed through Perplexity servers", + "Consumer tier data may be used for training", + "No self-hosted option available", + "Costs can accumulate with heavy usage", + "Rate limits based on pricing tier", + "Dependent on Perplexity's infrastructure" + ], + "metadata": { + "license": "Proprietary (API Service)", + "supported_platforms": ["All platforms with HTTP"], + "programming_languages": ["Python", "JavaScript", "TypeScript"], + "mcp_version": "1.0", + "website": "https://www.perplexity.ai/", + "api_dependency": "Perplexity API", + "authentication": "Bearer Token", + "first_release": "2024", + "maintained_by": "Perplexity AI", + "transport_types": ["stdio"], + "installation_methods": ["npm", "pip"] + }, + "use_case_ratings": { + "code-generation": { + "overall": 82, + "notes": "Good for finding documentation and coding solutions" + }, + "customer-support": { + "overall": 80, + "notes": "Useful for researching product information" + }, + "content-creation": { + "overall": 92, + "notes": "Excellent for research with automatic citations" + }, + "data-analysis": { + "overall": 78, + "notes": "Helpful for gathering market and trend data" + }, + "research-assistant": { + "overall": 96, + "notes": "Outstanding for academic and professional research" + }, + "legal-compliance": { + "overall": 75, + "notes": "Good for researching regulations; verify with primary sources" + }, + "healthcare": { + "overall": 70, + "notes": "Can find medical information; not for clinical decisions" + }, + "financial-analysis": { + "overall": 80, + "notes": "Good for market research and financial news" + }, + "education": { + "overall": 92, + "notes": "Excellent for educational research with citations" + }, + "creative-writing": { + "overall": 85, + "notes": "Great for research and fact-checking" + } + }, + "best_for": [ + "Research-intensive AI applications", + "Applications requiring source citations", + "Content creation with fact-checking needs", + "Enterprise knowledge management" + ], + "tags": ["search", "research", "citations", "mcp", "model-context-protocol", "perplexity"] +} diff --git a/data/mcps/mcp-server-supabase.json b/data/mcps/mcp-server-supabase.json new file mode 100644 index 0000000..e042e6c --- /dev/null +++ b/data/mcps/mcp-server-supabase.json @@ -0,0 +1,439 @@ +{ + "id": "mcp-server-supabase", + "type": "mcp", + "name": "MCP Supabase Server", + "provider": "Supabase", + "version": "2025.1.0", + "last_evaluated": "2025-01-14", + "evaluated_by": "TrustVector Team", + "description": "MCP server enabling AI models to interact with Supabase backend services. Provides schema design, database migrations, SQL query execution, TypeScript type generation, and real-time subscription management for building full-stack applications.", + "website": "https://supabase.com/docs/guides/getting-started/mcp", + "trust_vector": { + "performance_reliability": { + "overall_score": 85, + "criteria": { + "api_reliability": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Status", + "url": "https://status.supabase.com/", + "date": "2025-01-10", + "value": "99.9% uptime SLA on Pro plan with PostgreSQL reliability" + } + ], + "methodology": "API stability and uptime analysis", + "last_verified": "2025-01-14" + }, + "query_execution": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Supabase PostgreSQL", + "url": "https://supabase.com/docs/guides/database", + "date": "2025-01-10", + "value": "Full PostgreSQL query support with optimized connection pooling" + } + ], + "methodology": "Query execution testing", + "last_verified": "2025-01-14" + }, + "schema_management": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Migrations", + "url": "https://supabase.com/docs/guides/cli/managing-environments", + "date": "2025-01-10", + "value": "Schema design and migration support through CLI integration" + } + ], + "methodology": "Schema management testing", + "last_verified": "2025-01-14" + }, + "type_generation": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Supabase TypeScript", + "url": "https://supabase.com/docs/guides/api/generating-types", + "date": "2025-01-10", + "value": "Automatic TypeScript type generation from database schema" + } + ], + "methodology": "Type generation testing", + "last_verified": "2025-01-14" + }, + "realtime_support": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Supabase Realtime", + "url": "https://supabase.com/docs/guides/realtime", + "date": "2025-01-10", + "value": "Real-time subscriptions through PostgreSQL logical replication" + } + ], + "methodology": "Real-time functionality testing", + "last_verified": "2025-01-14" + } + } + }, + "security": { + "overall_score": 82, + "criteria": { + "authentication_security": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Auth", + "url": "https://supabase.com/docs/guides/auth", + "date": "2025-01-10", + "value": "Service role key with full database access, or anon key with RLS" + } + ], + "methodology": "Authentication mechanism review", + "last_verified": "2025-01-14" + }, + "row_level_security": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Supabase RLS", + "url": "https://supabase.com/docs/guides/auth/row-level-security", + "date": "2025-01-10", + "value": "PostgreSQL RLS policies for fine-grained access control" + } + ], + "methodology": "RLS implementation review", + "last_verified": "2025-01-14" + }, + "sql_injection_protection": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "MCP SQL Execution", + "url": "https://supabase.com/docs/guides/getting-started/mcp", + "date": "2025-01-10", + "value": "AI can execute arbitrary SQL; requires careful prompt engineering" + } + ], + "methodology": "SQL injection testing", + "last_verified": "2025-01-14" + }, + "data_encryption": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Security", + "url": "https://supabase.com/docs/guides/platform/going-into-prod", + "date": "2025-01-10", + "value": "Encryption at rest and in transit, SSL/TLS connections" + } + ], + "methodology": "Encryption review", + "last_verified": "2025-01-14" + }, + "key_management": { + "score": 75, + "confidence": "medium", + "evidence": [ + { + "source": "Supabase Keys", + "url": "https://supabase.com/docs/guides/api/api-keys", + "date": "2025-01-10", + "value": "Service role key has full access; key rotation available" + } + ], + "methodology": "Key management review", + "last_verified": "2025-01-14" + } + } + }, + "privacy_compliance": { + "overall_score": 80, + "criteria": { + "data_residency": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Regions", + "url": "https://supabase.com/docs/guides/platform/regions", + "date": "2025-01-10", + "value": "Multiple regions available; self-hosted option for full control" + } + ], + "methodology": "Data residency review", + "last_verified": "2025-01-14" + }, + "gdpr_compliance": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Supabase GDPR", + "url": "https://supabase.com/privacy", + "date": "2025-01-10", + "value": "GDPR compliant with data processing agreements available" + } + ], + "methodology": "GDPR compliance review", + "last_verified": "2025-01-14" + }, + "data_exposure_to_llm": { + "score": 70, + "confidence": "high", + "evidence": [ + { + "source": "MCP Data Flow", + "url": "https://modelcontextprotocol.io/docs/architecture", + "date": "2025-01-10", + "value": "Query results and schema information sent to LLM provider" + } + ], + "methodology": "Data flow analysis", + "last_verified": "2025-01-14" + }, + "self_hosted_option": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Self-Hosting", + "url": "https://supabase.com/docs/guides/self-hosting", + "date": "2025-01-10", + "value": "Full self-hosting support with Docker for complete data control" + } + ], + "methodology": "Self-hosting options review", + "last_verified": "2025-01-14" + } + } + }, + "trust_transparency": { + "overall_score": 88, + "criteria": { + "documentation_quality": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Docs", + "url": "https://supabase.com/docs", + "date": "2025-01-10", + "value": "Excellent documentation with tutorials, guides, and API reference" + } + ], + "methodology": "Documentation completeness review", + "last_verified": "2025-01-14" + }, + "open_source_transparency": { + "score": 95, + "confidence": "high", + "evidence": [ + { + "source": "Supabase GitHub", + "url": "https://github.com/supabase/supabase", + "date": "2025-01-10", + "value": "Fully open source under Apache 2.0 license, 75k+ stars" + } + ], + "methodology": "Source code review", + "last_verified": "2025-01-14" + }, + "query_logging": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Logging", + "url": "https://supabase.com/docs/guides/platform/logs", + "date": "2025-01-10", + "value": "Query logging and monitoring available in dashboard" + } + ], + "methodology": "Logging capabilities assessment", + "last_verified": "2025-01-14" + }, + "community_activity": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Community", + "url": "https://github.com/supabase/supabase/discussions", + "date": "2025-01-10", + "value": "Very active community with frequent releases and updates" + } + ], + "methodology": "Community engagement analysis", + "last_verified": "2025-01-14" + } + } + }, + "operational_excellence": { + "overall_score": 86, + "criteria": { + "ease_of_setup": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Supabase MCP Setup", + "url": "https://supabase.com/docs/guides/getting-started/mcp", + "date": "2025-01-10", + "value": "Simple setup with project URL and service key" + } + ], + "methodology": "Setup complexity assessment", + "last_verified": "2025-01-14" + }, + "developer_experience": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Supabase DX", + "url": "https://supabase.com/docs/guides/getting-started", + "date": "2025-01-10", + "value": "Excellent developer experience with CLI, dashboard, and SDKs" + } + ], + "methodology": "Developer experience assessment", + "last_verified": "2025-01-14" + }, + "scalability": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Scaling", + "url": "https://supabase.com/docs/guides/platform/going-into-prod", + "date": "2025-01-10", + "value": "Scales with PostgreSQL; connection pooling for high concurrency" + } + ], + "methodology": "Scalability testing", + "last_verified": "2025-01-14" + }, + "cost_efficiency": { + "score": 82, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Pricing", + "url": "https://supabase.com/pricing", + "date": "2025-01-10", + "value": "Generous free tier; predictable pricing on paid plans" + } + ], + "methodology": "Cost analysis", + "last_verified": "2025-01-14" + }, + "integration_ecosystem": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Supabase Integrations", + "url": "https://supabase.com/docs/guides/integrations", + "date": "2025-01-10", + "value": "Rich ecosystem with framework integrations and extensions" + } + ], + "methodology": "Integration ecosystem review", + "last_verified": "2025-01-14" + } + } + } + }, + "strengths": [ + "Full PostgreSQL power with AI-assisted query building", + "Automatic TypeScript type generation from schema", + "Excellent row-level security for fine-grained access", + "Self-hosted option for complete data sovereignty", + "Outstanding developer experience and documentation", + "Fully open source with active community" + ], + "limitations": [ + "Service role key grants full database access", + "Query results and schema exposed to LLM provider", + "AI can execute potentially destructive SQL", + "Requires careful prompt engineering for safety", + "Real-time features add complexity", + "Connection pooling limits on free tier" + ], + "metadata": { + "license": "Apache 2.0", + "supported_platforms": ["All platforms with Node.js"], + "programming_languages": ["TypeScript"], + "mcp_version": "1.0", + "github_repo": "https://github.com/supabase/supabase", + "github_stars": 78000, + "api_dependency": "Supabase REST API / PostgreSQL", + "authentication": "Service Role Key or Anon Key", + "first_release": "2025-01", + "maintained_by": "Supabase", + "transport_types": ["stdio"], + "installation_methods": ["npm"] + }, + "use_case_ratings": { + "code-generation": { + "overall": 95, + "notes": "Excellent for full-stack development with auto-generated types" + }, + "customer-support": { + "overall": 78, + "notes": "Good for building support ticket systems and user management" + }, + "content-creation": { + "overall": 82, + "notes": "Great for CMS backends and content management" + }, + "data-analysis": { + "overall": 90, + "notes": "Full SQL power for complex data analysis queries" + }, + "research-assistant": { + "overall": 85, + "notes": "Good for building research databases and knowledge bases" + }, + "legal-compliance": { + "overall": 75, + "notes": "RLS and audit logging support compliance requirements" + }, + "healthcare": { + "overall": 72, + "notes": "Self-hosted option needed; requires careful RLS configuration" + }, + "financial-analysis": { + "overall": 80, + "notes": "Strong for financial data storage with proper access controls" + }, + "education": { + "overall": 88, + "notes": "Excellent for learning SQL and building educational apps" + }, + "creative-writing": { + "overall": 70, + "notes": "Good for storing and organizing creative content" + } + }, + "best_for": [ + "Full-stack developers building AI-powered applications", + "Teams needing AI-assisted database management", + "Startups wanting rapid backend development", + "Projects requiring PostgreSQL with modern DX" + ], + "tags": ["database", "postgresql", "backend", "mcp", "model-context-protocol", "supabase"] +} diff --git a/data/mcps/mcp-server-tavily.json b/data/mcps/mcp-server-tavily.json new file mode 100644 index 0000000..1a53858 --- /dev/null +++ b/data/mcps/mcp-server-tavily.json @@ -0,0 +1,410 @@ +{ + "id": "mcp-server-tavily", + "type": "mcp", + "name": "MCP Tavily Server", + "provider": "Tavily", + "version": "2025.2.0", + "last_evaluated": "2025-01-14", + "evaluated_by": "TrustVector Team", + "description": "MCP server enabling AI models to perform real-time web search, content extraction, and web crawling. Designed specifically for AI agents with optimized search results, automatic content summarization, and source verification capabilities.", + "website": "https://tavily.com/", + "trust_vector": { + "performance_reliability": { + "overall_score": 86, + "criteria": { + "search_accuracy": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Tavily Documentation", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "AI-optimized search with semantic understanding and relevance ranking" + } + ], + "methodology": "Search quality testing", + "last_verified": "2025-01-14" + }, + "response_latency": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Tavily Performance", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "Typical response time 1-3 seconds for comprehensive results" + } + ], + "methodology": "Latency benchmarking", + "last_verified": "2025-01-14" + }, + "content_extraction": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Tavily Extract API", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "Reliable content extraction with main content identification" + } + ], + "methodology": "Content extraction testing", + "last_verified": "2025-01-14" + }, + "result_freshness": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Tavily Real-time Search", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "Real-time search results with configurable time filtering" + } + ], + "methodology": "Freshness testing", + "last_verified": "2025-01-14" + }, + "rate_limit_handling": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Tavily Rate Limits", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "Rate limits based on plan tier with clear error handling" + } + ], + "methodology": "Rate limiting behavior testing", + "last_verified": "2025-01-14" + } + } + }, + "security": { + "overall_score": 78, + "criteria": { + "api_key_security": { + "score": 82, + "confidence": "high", + "evidence": [ + { + "source": "Tavily Authentication", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "API key authentication with standard security practices" + } + ], + "methodology": "Authentication mechanism review", + "last_verified": "2025-01-14" + }, + "data_handling": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Tavily Privacy", + "url": "https://tavily.com/privacy", + "date": "2025-01-10", + "value": "Search queries processed through Tavily servers" + } + ], + "methodology": "Data handling review", + "last_verified": "2025-01-14" + }, + "content_filtering": { + "score": 75, + "confidence": "medium", + "evidence": [ + { + "source": "Tavily Safe Search", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "Safe search options available but web content varies" + } + ], + "methodology": "Content filtering assessment", + "last_verified": "2025-01-14" + }, + "source_verification": { + "score": 80, + "confidence": "medium", + "evidence": [ + { + "source": "Tavily Sources", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "Returns source URLs for verification; no fake content generation" + } + ], + "methodology": "Source verification testing", + "last_verified": "2025-01-14" + } + } + }, + "privacy_compliance": { + "overall_score": 75, + "criteria": { + "query_privacy": { + "score": 72, + "confidence": "medium", + "evidence": [ + { + "source": "Tavily Privacy Policy", + "url": "https://tavily.com/privacy", + "date": "2025-01-10", + "value": "Search queries stored for service improvement" + } + ], + "methodology": "Privacy policy review", + "last_verified": "2025-01-14" + }, + "data_retention": { + "score": 75, + "confidence": "medium", + "evidence": [ + { + "source": "Tavily Privacy", + "url": "https://tavily.com/privacy", + "date": "2025-01-10", + "value": "Standard data retention policies for API services" + } + ], + "methodology": "Data retention review", + "last_verified": "2025-01-14" + }, + "third_party_sharing": { + "score": 78, + "confidence": "medium", + "evidence": [ + { + "source": "Tavily Terms", + "url": "https://tavily.com/terms", + "date": "2025-01-10", + "value": "Query data not sold; used for service improvement" + } + ], + "methodology": "Third-party sharing review", + "last_verified": "2025-01-14" + } + } + }, + "trust_transparency": { + "overall_score": 82, + "criteria": { + "documentation_quality": { + "score": 88, + "confidence": "high", + "evidence": [ + { + "source": "Tavily Docs", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "Clear API documentation with examples and use cases" + } + ], + "methodology": "Documentation completeness review", + "last_verified": "2025-01-14" + }, + "result_attribution": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Tavily Results", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "All results include source URLs for verification" + } + ], + "methodology": "Attribution testing", + "last_verified": "2025-01-14" + }, + "api_transparency": { + "score": 82, + "confidence": "medium", + "evidence": [ + { + "source": "Tavily API", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "Clear API behavior documentation and error codes" + } + ], + "methodology": "API transparency review", + "last_verified": "2025-01-14" + }, + "pricing_transparency": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Tavily Pricing", + "url": "https://tavily.com/pricing", + "date": "2025-01-10", + "value": "Clear pricing tiers with defined quotas" + } + ], + "methodology": "Pricing review", + "last_verified": "2025-01-14" + } + } + }, + "operational_excellence": { + "overall_score": 85, + "criteria": { + "ease_of_setup": { + "score": 92, + "confidence": "high", + "evidence": [ + { + "source": "Tavily Quickstart", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "Simple API key setup with immediate access" + } + ], + "methodology": "Setup complexity assessment", + "last_verified": "2025-01-14" + }, + "api_reliability": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Tavily Status", + "url": "https://status.tavily.com/", + "date": "2025-01-10", + "value": "High availability with 99.9% uptime target" + } + ], + "methodology": "Reliability assessment", + "last_verified": "2025-01-14" + }, + "cost_efficiency": { + "score": 82, + "confidence": "high", + "evidence": [ + { + "source": "Tavily Pricing", + "url": "https://tavily.com/pricing", + "date": "2025-01-10", + "value": "Free tier available; reasonable pricing for production" + } + ], + "methodology": "Cost analysis", + "last_verified": "2025-01-14" + }, + "ai_optimization": { + "score": 90, + "confidence": "high", + "evidence": [ + { + "source": "Tavily for AI", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "Purpose-built for AI agents with optimized response format" + } + ], + "methodology": "AI integration testing", + "last_verified": "2025-01-14" + }, + "sdk_support": { + "score": 85, + "confidence": "high", + "evidence": [ + { + "source": "Tavily SDKs", + "url": "https://docs.tavily.com/", + "date": "2025-01-10", + "value": "Python and JavaScript SDKs with MCP integration" + } + ], + "methodology": "SDK quality assessment", + "last_verified": "2025-01-14" + } + } + } + }, + "strengths": [ + "Purpose-built for AI agents with optimized responses", + "Real-time search with configurable time filtering", + "Automatic content extraction and summarization", + "Source URLs provided for all results", + "Easy integration with MCP protocol", + "Good documentation and SDK support" + ], + "limitations": [ + "Search queries processed through third-party servers", + "Rate limits based on pricing tier", + "Web content quality varies by source", + "No self-hosted option available", + "Query privacy depends on Tavily's policies", + "Costs can increase with heavy usage" + ], + "metadata": { + "license": "Proprietary (API Service)", + "supported_platforms": ["All platforms with HTTP"], + "programming_languages": ["Python", "JavaScript", "TypeScript"], + "mcp_version": "1.0", + "website": "https://tavily.com/", + "api_dependency": "Tavily Search API", + "authentication": "API Key", + "first_release": "2024", + "maintained_by": "Tavily", + "transport_types": ["stdio"], + "installation_methods": ["npm", "pip"] + }, + "use_case_ratings": { + "code-generation": { + "overall": 80, + "notes": "Useful for researching documentation and finding code examples" + }, + "customer-support": { + "overall": 78, + "notes": "Good for finding product information and support resources" + }, + "content-creation": { + "overall": 88, + "notes": "Excellent for research and fact-checking content" + }, + "data-analysis": { + "overall": 75, + "notes": "Helpful for gathering external data and market research" + }, + "research-assistant": { + "overall": 95, + "notes": "Outstanding for autonomous research and information gathering" + }, + "legal-compliance": { + "overall": 72, + "notes": "Useful for researching regulations; verify sources independently" + }, + "healthcare": { + "overall": 68, + "notes": "Can find medical information; not suitable for clinical decisions" + }, + "financial-analysis": { + "overall": 78, + "notes": "Good for market research; verify financial data from primary sources" + }, + "education": { + "overall": 90, + "notes": "Excellent for educational research and learning assistance" + }, + "creative-writing": { + "overall": 85, + "notes": "Great for research and finding inspiration" + } + }, + "best_for": [ + "AI agents needing real-time web search", + "Research assistants and RAG applications", + "Content creators needing fact-checking", + "Applications requiring current information" + ], + "tags": ["search", "web", "research", "mcp", "model-context-protocol", "tavily"] +} From 510f52b059fdb52e195e33372a71fd3363cc65ad Mon Sep 17 00:00:00 2001 From: JBAhire Date: Fri, 16 Jan 2026 13:57:35 +0530 Subject: [PATCH 3/4] feat: Add PDF export and contribute page - Add PDF export functionality for evaluation reports - Add contribute page for community submissions - Add html2pdf type definitions - Update dependencies --- app/contribute/page.tsx | 386 +++++++++++++++++++++++ components/export-pdf-button.tsx | 505 +++++++++++++++++++++++++++++++ package-lock.json | 222 ++++++++++++++ package.json | 19 +- types/html2pdf.d.ts | 39 +++ 5 files changed, 1162 insertions(+), 9 deletions(-) create mode 100644 app/contribute/page.tsx create mode 100644 components/export-pdf-button.tsx create mode 100644 types/html2pdf.d.ts diff --git a/app/contribute/page.tsx b/app/contribute/page.tsx new file mode 100644 index 0000000..8696fe8 --- /dev/null +++ b/app/contribute/page.tsx @@ -0,0 +1,386 @@ +import { GitBranch, FileJson, CheckCircle, AlertTriangle, BookOpen, Code, Users, ExternalLink, Database, Bot, Brain } from 'lucide-react'; +import Link from 'next/link'; + +export default function ContributePage() { + return ( +
+ {/* Hero Section */} +
+
+ + Community-Driven +
+ +

+ How to Contribute +

+ +

+ TrustVector is an open-source project that relies on community contributions to evaluate AI systems. + Help us build the most comprehensive and transparent AI trust database. +

+
+ + {/* What You Can Contribute */} +
+

What You Can Contribute

+ +
+
+
+ +
+

AI Models

+

+ Add evaluations for new LLMs, multimodal models, and specialized AI systems from any provider. +

+
+ +
+
+ +
+

AI Agents

+

+ Evaluate agent frameworks like CrewAI, AutoGPT, LangGraph, and enterprise agent platforms. +

+
+ +
+
+ +
+

MCP Servers

+

+ Add trust reports for Model Context Protocol servers that extend AI capabilities. +

+
+
+
+ + {/* Quick Start */} +
+

Quick Start Guide

+ +
+
+
+
+ 1 +
+
+

Fork the Repository

+

+ Start by forking the TrustVector repository to your GitHub account. +

+ + git clone https://github.com/YOUR_USERNAME/trust-vector.git + +
+
+
+ +
+
+
+ 2 +
+
+

Choose What to Evaluate

+

+ Create a new JSON file in the appropriate directory: +

+
+
+ + data/models/ + - For AI models +
+
+ + data/agents/ + - For AI agents +
+
+ + data/mcps/ + - For MCP servers +
+
+
+
+
+ +
+
+
+ 3 +
+
+

Follow the Schema

+

+ Use existing files as templates. Every evaluation must include: +

+
    +
  • Five trust dimensions with scored criteria
  • +
  • Evidence with sources, URLs, and dates
  • +
  • Confidence levels (high, medium, low)
  • +
  • Use case ratings for different scenarios
  • +
  • Strengths and limitations
  • +
+
+
+
+ +
+
+
+ 4 +
+
+

Submit a Pull Request

+

+ Open a PR with a clear description of what you've evaluated and why. +

+ + git checkout -b add-evaluation-[name] && git push origin HEAD + +
+
+
+
+
+ + {/* Data Schema */} +
+

Data Schema Overview

+ +
+
+
+ + example-evaluation.json +
+
+
+            {`{
+  "id": "unique-identifier",
+  "type": "model" | "agent" | "mcp",
+  "name": "Display Name",
+  "provider": "Provider Name",
+  "version": "1.0.0",
+  "last_evaluated": "2025-01-14",
+  "description": "Brief description...",
+  "trust_vector": {
+    "performance_reliability": {
+      "overall_score": 85,
+      "criteria": {
+        "criterion_name": {
+          "score": 85,
+          "confidence": "high" | "medium" | "low",
+          "evidence": [{
+            "source": "Source Name",
+            "url": "https://...",
+            "date": "2025-01-14",
+            "value": "Key finding..."
+          }]
+        }
+      }
+    },
+    "security": { ... },
+    "privacy_compliance": { ... },
+    "trust_transparency": { ... },
+    "operational_excellence": { ... }
+  },
+  "use_case_ratings": {
+    "code-generation": { "overall": 90, "notes": "..." }
+  },
+  "strengths": ["..."],
+  "limitations": ["..."]
+}`}
+          
+
+
+ + {/* Evidence Guidelines */} +
+

Evidence Guidelines

+ +
+
+
+ +

Accepted Sources

+
+
    +
  • + + Official documentation and technical papers +
  • +
  • + + Peer-reviewed research and benchmarks +
  • +
  • + + Security audits and compliance certifications +
  • +
  • + + Official GitHub repositories +
  • +
  • + + Reputable security research publications +
  • +
+
+ +
+
+ +

Use With Caution

+
+
    +
  • + ! + Marketing materials (may be biased) +
  • +
  • + ! + Unverified community reports +
  • +
  • + ! + Outdated documentation (>6 months) +
  • +
  • + ! + Self-reported benchmarks without validation +
  • +
  • + ! + Anonymous or unattributed sources +
  • +
+
+
+
+ + {/* Confidence Levels */} +
+

Confidence Levels

+ +
+
+
+ + High + +
+

Multiple authoritative sources

+

+ Official documentation, peer-reviewed research, recent data (within 3 months) +

+
+
+ +
+ + Medium + +
+

Some authoritative sources

+

+ Partial documentation, community feedback, data within 6 months +

+
+
+ +
+ + Low + +
+

Limited sources available

+

+ Older data, inferred from general practices, or single-source information +

+
+
+
+
+
+ + {/* Needed Evaluations */} +
+

Currently Needed

+ +
+
+

+ + MCP Servers +

+
    +
  • • Supabase MCP Server
  • +
  • • GitLab MCP Server
  • +
  • • Perplexity MCP Server
  • +
  • • Tavily MCP Server
  • +
  • • Exa MCP Server
  • +
  • • Context7 MCP Server
  • +
  • • Google Maps MCP Server
  • +
  • • ClickHouse MCP Server
  • +
+
+ +
+

+ + AI Agents & Platforms +

+
    +
  • • Kore.ai Enterprise Agents
  • +
  • • Glean AI Platform
  • +
  • • Sierra Customer Service
  • +
  • • Moveworks Enterprise Assistant
  • +
  • • Decagon Support AI
  • +
  • • Aisera Service Automation
  • +
  • • Cognigy Contact Center AI
  • +
  • • Relevance AI Agents
  • +
+
+
+
+ + {/* CTA */} +
+
+ +

Ready to Contribute?

+

+ Join our community of contributors helping build transparency in AI systems. +

+
+ + + View on GitHub + + + + Read Methodology + +
+
+
+
+ ); +} diff --git a/components/export-pdf-button.tsx b/components/export-pdf-button.tsx new file mode 100644 index 0000000..24da403 --- /dev/null +++ b/components/export-pdf-button.tsx @@ -0,0 +1,505 @@ +'use client'; + +import { useState } from 'react'; +import type { + TrustVectorEntity, + DimensionScore, + CriterionScore, +} from '@/framework/schema/types'; +import { calculateOverallScore, interpretScore, getScoreColor } from '@/framework/schema/types'; + +interface ExportPDFButtonProps { + entity: TrustVectorEntity; +} + +export function ExportPDFButton({ entity }: ExportPDFButtonProps) { + const [isExporting, setIsExporting] = useState(false); + + const handleExport = async () => { + setIsExporting(true); + + try { + const { jsPDF } = await import('jspdf'); + + const doc = new jsPDF({ + orientation: 'portrait', + unit: 'mm', + format: 'a4', + }); + + const pageWidth = doc.internal.pageSize.getWidth(); + const pageHeight = doc.internal.pageSize.getHeight(); + const margin = 15; + const contentWidth = pageWidth - margin * 2; + let y = margin; + + // Colors + const colors = { + background: [10, 10, 10] as [number, number, number], + green: [134, 239, 172] as [number, number, number], + cyan: [34, 211, 238] as [number, number, number], + yellow: [250, 204, 21] as [number, number, number], + white: [255, 255, 255] as [number, number, number], + gray: [156, 163, 175] as [number, number, number], + darkGray: [31, 41, 55] as [number, number, number], + }; + + // Helper to add a new page if needed + const checkNewPage = (neededSpace: number) => { + if (y + neededSpace > pageHeight - margin) { + doc.addPage(); + // Draw background on new page + doc.setFillColor(...colors.background); + doc.rect(0, 0, pageWidth, pageHeight, 'F'); + y = margin; + return true; + } + return false; + }; + + // Draw background + doc.setFillColor(...colors.background); + doc.rect(0, 0, pageWidth, pageHeight, 'F'); + + // === HEADER SECTION === + // Title + doc.setFont('helvetica', 'bold'); + doc.setFontSize(24); + doc.setTextColor(...colors.green); + doc.text(entity.name.toUpperCase(), margin, y + 8); + y += 12; + + // Provider + doc.setFontSize(14); + doc.setTextColor(...colors.cyan); + doc.text(`[${entity.provider.toUpperCase()}]`, margin, y + 4); + y += 10; + + // Overall Score Badge + const overallScore = calculateOverallScore(entity); + const interpretation = interpretScore(overallScore); + const scoreColor = hexToRgb(getScoreColor(overallScore)); + + doc.setFillColor(...scoreColor); + doc.roundedRect(margin, y, 50, 12, 2, 2, 'F'); + doc.setFont('helvetica', 'bold'); + doc.setFontSize(12); + doc.setTextColor(...colors.background); + doc.text(`${overallScore} - ${interpretation.charAt(0).toUpperCase() + interpretation.slice(1)}`, margin + 25, y + 8, { align: 'center' }); + y += 18; + + // Description + doc.setFont('helvetica', 'normal'); + doc.setFontSize(10); + doc.setTextColor(...colors.gray); + const descLines = doc.splitTextToSize(entity.description, contentWidth); + doc.text(descLines, margin, y); + y += descLines.length * 5 + 5; + + // Tags + if (entity.tags && entity.tags.length > 0) { + doc.setFontSize(8); + doc.setTextColor(...colors.green); + const tagsText = entity.tags.map((t) => `#${t.toUpperCase()}`).join(' '); + const tagLines = doc.splitTextToSize(tagsText, contentWidth); + doc.text(tagLines, margin, y); + y += tagLines.length * 4 + 3; + } + + // Version & Last Evaluated + doc.setFontSize(9); + doc.setTextColor(...colors.gray); + doc.text(`Version: ${entity.version} | Last Evaluated: ${formatDate(entity.last_evaluated)}`, margin, y); + y += 10; + + // Divider + drawDivider(doc, margin, y, contentWidth, colors.green); + y += 8; + + // === TRUST VECTOR SUMMARY === + doc.setFont('helvetica', 'bold'); + doc.setFontSize(14); + doc.setTextColor(...colors.green); + doc.text('TRUST VECTOR SUMMARY', margin, y); + y += 8; + + const dimensions = [ + { key: 'performance_reliability', name: 'Performance & Reliability', data: entity.trust_vector.performance_reliability }, + { key: 'security', name: 'Security', data: entity.trust_vector.security }, + { key: 'privacy_compliance', name: 'Privacy & Compliance', data: entity.trust_vector.privacy_compliance }, + { key: 'trust_transparency', name: 'Trust & Transparency', data: entity.trust_vector.trust_transparency }, + { key: 'operational_excellence', name: 'Operational Excellence', data: entity.trust_vector.operational_excellence }, + ]; + + // Draw dimension scores as bars + for (const dim of dimensions) { + checkNewPage(12); + drawScoreBar(doc, margin, y, contentWidth, dim.name, dim.data.overall_score, colors); + y += 10; + } + y += 5; + + // === STRENGTHS & LIMITATIONS === + checkNewPage(40); + drawDivider(doc, margin, y, contentWidth, colors.green); + y += 8; + + // Two columns for strengths and limitations + const colWidth = (contentWidth - 10) / 2; + + // Strengths + doc.setFont('helvetica', 'bold'); + doc.setFontSize(12); + doc.setTextColor(...colors.green); + doc.text('STRENGTHS', margin, y); + + // Limitations + doc.setTextColor(...colors.yellow); + doc.text('LIMITATIONS', margin + colWidth + 10, y); + y += 6; + + doc.setFont('helvetica', 'normal'); + doc.setFontSize(9); + + const maxItems = Math.max(entity.strengths.length, entity.limitations.length); + for (let i = 0; i < maxItems; i++) { + checkNewPage(8); + + if (entity.strengths[i]) { + doc.setTextColor(...colors.green); + doc.text('+', margin, y); + doc.setTextColor(...colors.white); + const sLines = doc.splitTextToSize(entity.strengths[i], colWidth - 8); + doc.text(sLines, margin + 5, y); + } + + if (entity.limitations[i]) { + doc.setTextColor(...colors.yellow); + doc.text('!', margin + colWidth + 10, y); + doc.setTextColor(...colors.white); + const lLines = doc.splitTextToSize(entity.limitations[i], colWidth - 8); + doc.text(lLines, margin + colWidth + 15, y); + } + + y += 8; + } + y += 5; + + // === DETAILED DIMENSION SCORES === + for (const dim of dimensions) { + checkNewPage(30); + drawDivider(doc, margin, y, contentWidth, colors.green); + y += 8; + + // Dimension header + doc.setFont('helvetica', 'bold'); + doc.setFontSize(12); + doc.setTextColor(...colors.green); + doc.text(dim.name.toUpperCase(), margin, y); + + // Dimension score badge + const dimScoreColor = hexToRgb(getScoreColor(dim.data.overall_score)); + doc.setFillColor(...dimScoreColor); + doc.roundedRect(pageWidth - margin - 20, y - 5, 20, 8, 1, 1, 'F'); + doc.setFontSize(10); + doc.setTextColor(...colors.background); + doc.text(String(dim.data.overall_score), pageWidth - margin - 10, y, { align: 'center' }); + y += 8; + + // Dimension notes + if (dim.data.notes) { + doc.setFont('helvetica', 'normal'); + doc.setFontSize(9); + doc.setTextColor(...colors.gray); + const noteLines = doc.splitTextToSize(dim.data.notes, contentWidth); + doc.text(noteLines, margin, y); + y += noteLines.length * 4 + 4; + } + + // Criteria + for (const [criterionKey, criterion] of Object.entries(dim.data.criteria)) { + checkNewPage(25); + drawCriterion(doc, margin, y, contentWidth, criterionKey, criterion, colors); + y += 20; + } + } + + // === USE CASE RATINGS === + if (entity.use_case_ratings && Object.keys(entity.use_case_ratings).length > 0) { + checkNewPage(30); + drawDivider(doc, margin, y, contentWidth, colors.green); + y += 8; + + doc.setFont('helvetica', 'bold'); + doc.setFontSize(12); + doc.setTextColor(...colors.green); + doc.text('USE CASE RATINGS', margin, y); + y += 8; + + for (const [useCase, rating] of Object.entries(entity.use_case_ratings)) { + checkNewPage(15); + + doc.setFont('helvetica', 'bold'); + doc.setFontSize(10); + doc.setTextColor(...colors.white); + doc.text(formatUseCaseName(useCase), margin, y); + + // Score badge + const ucScoreColor = hexToRgb(getScoreColor(rating.overall)); + doc.setFillColor(...ucScoreColor); + doc.roundedRect(margin + 60, y - 4, 15, 6, 1, 1, 'F'); + doc.setFontSize(8); + doc.setTextColor(...colors.background); + doc.text(String(rating.overall), margin + 67.5, y, { align: 'center' }); + y += 5; + + doc.setFont('helvetica', 'normal'); + doc.setFontSize(8); + doc.setTextColor(...colors.gray); + const notesLines = doc.splitTextToSize(rating.notes, contentWidth); + doc.text(notesLines, margin, y); + y += notesLines.length * 3.5 + 4; + } + } + + // === METADATA === + if (entity.metadata && Object.keys(entity.metadata).length > 0) { + checkNewPage(30); + drawDivider(doc, margin, y, contentWidth, colors.cyan); + y += 8; + + doc.setFont('helvetica', 'bold'); + doc.setFontSize(12); + doc.setTextColor(...colors.cyan); + doc.text('METADATA', margin, y); + y += 8; + + doc.setFont('helvetica', 'normal'); + doc.setFontSize(9); + + for (const [key, value] of Object.entries(entity.metadata)) { + if (value === undefined || value === null) continue; + checkNewPage(10); + + doc.setTextColor(...colors.cyan); + doc.text(`${formatKey(key)}:`, margin, y); + + doc.setTextColor(...colors.white); + const valueStr = formatMetadataValue(value); + const valueLines = doc.splitTextToSize(valueStr, contentWidth - 50); + doc.text(valueLines, margin + 45, y); + y += Math.max(valueLines.length * 4, 5); + } + } + + // === FOOTER === + const totalPages = doc.getNumberOfPages(); + for (let i = 1; i <= totalPages; i++) { + doc.setPage(i); + doc.setFontSize(8); + doc.setTextColor(...colors.gray); + doc.text( + `TrustVector Report - ${entity.name} - Page ${i} of ${totalPages}`, + pageWidth / 2, + pageHeight - 8, + { align: 'center' } + ); + doc.text( + `Generated: ${new Date().toISOString().split('T')[0]}`, + pageWidth - margin, + pageHeight - 8, + { align: 'right' } + ); + } + + // Save + doc.save(`${entity.name} Trust Report.pdf`); + } catch (error) { + console.error('PDF export failed:', error); + alert('PDF export failed. Please try again.'); + } finally { + setIsExporting(false); + } + }; + + return ( + + ); +} + +// Helper functions + +function hexToRgb(hex: string): [number, number, number] { + const result = /^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex); + return result + ? [parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16)] + : [134, 239, 172]; +} + +function formatDate(dateStr: string): string { + const date = new Date(dateStr); + return date.toLocaleDateString('en-US', { year: 'numeric', month: 'long', day: 'numeric' }); +} + +function formatKey(key: string): string { + return key + .replace(/_/g, ' ') + .replace(/\b\w/g, (l) => l.toUpperCase()); +} + +function formatUseCaseName(name: string): string { + return name + .replace(/-/g, ' ') + .replace(/\b\w/g, (l) => l.toUpperCase()); +} + +function formatMetadataValue(value: unknown): string { + if (typeof value === 'object' && value !== null) { + if (Array.isArray(value)) { + return value.join(', '); + } + return Object.entries(value) + .map(([k, v]) => `${formatKey(k)}: ${v}`) + .join(', '); + } + return String(value); +} + +function drawDivider( + doc: InstanceType, + x: number, + y: number, + width: number, + color: [number, number, number] +) { + doc.setDrawColor(...color); + doc.setLineWidth(0.5); + doc.line(x, y, x + width, y); +} + +function drawScoreBar( + doc: InstanceType, + x: number, + y: number, + width: number, + label: string, + score: number, + colors: Record +) { + const barWidth = width - 80; + const barHeight = 5; + + // Label + doc.setFont('helvetica', 'normal'); + doc.setFontSize(9); + doc.setTextColor(...colors.white); + doc.text(label, x, y + 4); + + // Background bar + doc.setFillColor(...colors.darkGray); + doc.roundedRect(x + 65, y, barWidth, barHeight, 1, 1, 'F'); + + // Score bar + const scoreColor = hexToRgb(getScoreColor(score)); + const scoreWidth = (score / 100) * barWidth; + doc.setFillColor(...scoreColor); + doc.roundedRect(x + 65, y, scoreWidth, barHeight, 1, 1, 'F'); + + // Score text + doc.setFontSize(9); + doc.setTextColor(...scoreColor); + doc.text(String(score), x + 70 + barWidth, y + 4); +} + +function drawCriterion( + doc: InstanceType, + x: number, + y: number, + width: number, + key: string, + criterion: CriterionScore, + colors: Record +) { + const name = formatKey(key); + + // Name + doc.setFont('helvetica', 'bold'); + doc.setFontSize(9); + doc.setTextColor(...colors.white); + doc.text(name, x, y); + + // Score or value + if (criterion.score !== undefined) { + const scoreColor = hexToRgb(getScoreColor(criterion.score)); + doc.setFillColor(...scoreColor); + doc.roundedRect(x + width - 20, y - 4, 18, 6, 1, 1, 'F'); + doc.setFontSize(8); + doc.setTextColor(...colors.background); + doc.text(String(criterion.score), x + width - 11, y, { align: 'center' }); + } else if (criterion.value !== undefined) { + doc.setFontSize(8); + doc.setTextColor(...colors.cyan); + doc.text(`Value: ${criterion.value}`, x + width - 40, y, { align: 'right' }); + } + + y += 5; + + // Methodology + doc.setFont('helvetica', 'normal'); + doc.setFontSize(8); + doc.setTextColor(...colors.gray); + const methodLines = doc.splitTextToSize(criterion.methodology, width - 25); + doc.text(methodLines.slice(0, 2), x, y); + y += methodLines.slice(0, 2).length * 3.5; + + // Confidence badge + const confColor = + criterion.confidence === 'high' + ? colors.green + : criterion.confidence === 'medium' + ? colors.yellow + : [239, 68, 68] as [number, number, number]; + doc.setFontSize(7); + doc.setTextColor(...confColor); + doc.text(`[${criterion.confidence.toUpperCase()}]`, x, y + 3); + + // Last verified + doc.setTextColor(...colors.gray); + doc.text(`Last verified: ${criterion.last_verified}`, x + 25, y + 3); +} diff --git a/package-lock.json b/package-lock.json index d8f2911..961d263 100644 --- a/package-lock.json +++ b/package-lock.json @@ -13,6 +13,7 @@ "clsx": "^2.1.0", "date-fns": "^3.3.0", "flexsearch": "^0.7.43", + "html2pdf.js": "^0.14.0", "lucide-react": "^0.344.0", "next": "^14.2.0", "react": "^18.3.0", @@ -1413,6 +1414,12 @@ "undici-types": "~6.21.0" } }, + "node_modules/@types/pako": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/pako/-/pako-2.0.4.tgz", + "integrity": "sha512-VWDCbrLeVXJM9fihYodcLiIv0ku+AlOa/TQ1SvYOaBuyrSKgEcro95LJyIsJ4vSo6BXIxOKxiJAat04CmST9Fw==", + "license": "MIT" + }, "node_modules/@types/prop-types": { "version": "15.7.15", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.15.tgz", @@ -1420,6 +1427,13 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/raf": { + "version": "3.4.3", + "resolved": "https://registry.npmjs.org/@types/raf/-/raf-3.4.3.tgz", + "integrity": "sha512-c4YAvMedbPZ5tEyxzQdMoOhhJ4RD3rngZIdwC2/qDN3d7JpEhB6fiBRKVY1lg5B7Wk+uPBjn5f39j1/2MY1oOw==", + "license": "MIT", + "optional": true + }, "node_modules/@types/react": { "version": "18.3.26", "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.26.tgz", @@ -1442,6 +1456,13 @@ "@types/react": "^18.0.0" } }, + "node_modules/@types/trusted-types": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", + "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==", + "license": "MIT", + "optional": true + }, "node_modules/@typescript-eslint/eslint-plugin": { "version": "8.46.4", "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.46.4.tgz", @@ -2486,6 +2507,15 @@ "dev": true, "license": "MIT" }, + "node_modules/base64-arraybuffer": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz", + "integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ==", + "license": "MIT", + "engines": { + "node": ">= 0.6.0" + } + }, "node_modules/baseline-browser-mapping": { "version": "2.8.28", "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.8.28.tgz", @@ -2679,6 +2709,26 @@ ], "license": "CC-BY-4.0" }, + "node_modules/canvg": { + "version": "3.0.11", + "resolved": "https://registry.npmjs.org/canvg/-/canvg-3.0.11.tgz", + "integrity": "sha512-5ON+q7jCTgMp9cjpu4Jo6XbvfYwSB2Ow3kzHKfIyJfaCAOHLbdKPQqGKgfED/R5B+3TFFfe8pegYA+b423SRyA==", + "license": "MIT", + "optional": true, + "dependencies": { + "@babel/runtime": "^7.12.5", + "@types/raf": "^3.4.0", + "core-js": "^3.8.3", + "raf": "^3.4.1", + "regenerator-runtime": "^0.13.7", + "rgbcolor": "^1.0.1", + "stackblur-canvas": "^2.0.0", + "svg-pathdata": "^6.0.3" + }, + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/chai": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/chai/-/chai-4.5.0.tgz", @@ -2837,6 +2887,18 @@ "dev": true, "license": "MIT" }, + "node_modules/core-js": { + "version": "3.47.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.47.0.tgz", + "integrity": "sha512-c3Q2VVkGAUyupsjRnaNX6u8Dq2vAdzm9iuPj5FW0fRxzlxgq9Q39MDq10IvmQSpLgHQNyQzQmOo6bgGHmH3NNg==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", @@ -2852,6 +2914,15 @@ "node": ">= 8" } }, + "node_modules/css-line-break": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz", + "integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==", + "license": "MIT", + "dependencies": { + "utrie": "^1.0.2" + } + }, "node_modules/cssesc": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", @@ -3190,6 +3261,15 @@ "csstype": "^3.0.2" } }, + "node_modules/dompurify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-3.3.1.tgz", + "integrity": "sha512-qkdCKzLNtrgPFP1Vo+98FRzJnBRGe4ffyCea9IwHB1fyxPOeNTHpLKYGd4Uk9xvNoH0ZoOjwZxNptyMwqrId1Q==", + "license": "(MPL-2.0 OR Apache-2.0)", + "optionalDependencies": { + "@types/trusted-types": "^2.0.7" + } + }, "node_modules/dunder-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", @@ -4018,6 +4098,17 @@ "dev": true, "license": "MIT" }, + "node_modules/fast-png": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/fast-png/-/fast-png-6.4.0.tgz", + "integrity": "sha512-kAqZq1TlgBjZcLr5mcN6NP5Rv4V2f22z00c3g8vRrwkcqjerx7BEhPbOnWCPqaHUl2XWQBJQvOT/FQhdMT7X/Q==", + "license": "MIT", + "dependencies": { + "@types/pako": "^2.0.3", + "iobuffer": "^5.3.2", + "pako": "^2.1.0" + } + }, "node_modules/fastq": { "version": "1.19.1", "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.19.1.tgz", @@ -4028,6 +4119,12 @@ "reusify": "^1.0.4" } }, + "node_modules/fflate": { + "version": "0.8.2", + "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz", + "integrity": "sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==", + "license": "MIT" + }, "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", @@ -4527,6 +4624,30 @@ "node": ">= 0.4" } }, + "node_modules/html2canvas": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz", + "integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==", + "license": "MIT", + "dependencies": { + "css-line-break": "^2.1.0", + "text-segmentation": "^1.0.3" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/html2pdf.js": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/html2pdf.js/-/html2pdf.js-0.14.0.tgz", + "integrity": "sha512-yvNJgE/8yru2UeGflkPdjW8YEY+nDH5X7/2WG4uiuSCwYiCp8PZ8EKNiTAa6HxJ1NjC51fZSIEq6xld5CADKBQ==", + "license": "MIT", + "dependencies": { + "dompurify": "^3.3.1", + "html2canvas": "^1.0.0", + "jspdf": "^4.0.0" + } + }, "node_modules/human-signals": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-5.0.0.tgz", @@ -4617,6 +4738,12 @@ "node": ">=12" } }, + "node_modules/iobuffer": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/iobuffer/-/iobuffer-5.4.0.tgz", + "integrity": "sha512-DRebOWuqDvxunfkNJAlc3IzWIPD5xVxwUNbHr7xKB8E6aLJxIPfNX3CoMJghcFjpv6RWQsrcJbghtEwSPoJqMA==", + "license": "MIT" + }, "node_modules/is-array-buffer": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.5.tgz", @@ -5180,6 +5307,23 @@ "json5": "lib/cli.js" } }, + "node_modules/jspdf": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jspdf/-/jspdf-4.0.0.tgz", + "integrity": "sha512-w12U97Z6edKd2tXDn3LzTLg7C7QLJlx0BPfM3ecjK2BckUl9/81vZ+r5gK4/3KQdhAcEZhENUxRhtgYBj75MqQ==", + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.28.4", + "fast-png": "^6.2.0", + "fflate": "^0.8.1" + }, + "optionalDependencies": { + "canvg": "^3.0.11", + "core-js": "^3.6.0", + "dompurify": "^3.2.4", + "html2canvas": "^1.0.0-rc.5" + } + }, "node_modules/jsx-ast-utils": { "version": "3.3.5", "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", @@ -5881,6 +6025,12 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/pako": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pako/-/pako-2.1.0.tgz", + "integrity": "sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==", + "license": "(MIT AND Zlib)" + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -5965,6 +6115,13 @@ "node": "*" } }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==", + "license": "MIT", + "optional": true + }, "node_modules/picocolors": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", @@ -6284,6 +6441,16 @@ ], "license": "MIT" }, + "node_modules/raf": { + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz", + "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==", + "license": "MIT", + "optional": true, + "dependencies": { + "performance-now": "^2.1.0" + } + }, "node_modules/react": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz", @@ -6432,6 +6599,13 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/regenerator-runtime": { + "version": "0.13.11", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", + "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "license": "MIT", + "optional": true + }, "node_modules/regexp.prototype.flags": { "version": "1.5.4", "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.4.tgz", @@ -6505,6 +6679,16 @@ "node": ">=0.10.0" } }, + "node_modules/rgbcolor": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/rgbcolor/-/rgbcolor-1.0.1.tgz", + "integrity": "sha512-9aZLIrhRaD97sgVhtJOW6ckOEh6/GnvQtdVNfdZ6s67+3/XwLS9lBcQYzEEhYVeUowN7pRzMLsyGhK2i/xvWbw==", + "license": "MIT OR SEE LICENSE IN FEEL-FREE.md", + "optional": true, + "engines": { + "node": ">= 0.8.15" + } + }, "node_modules/rimraf": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", @@ -6878,6 +7062,16 @@ "dev": true, "license": "MIT" }, + "node_modules/stackblur-canvas": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/stackblur-canvas/-/stackblur-canvas-2.7.0.tgz", + "integrity": "sha512-yf7OENo23AGJhBriGx0QivY5JP6Y1HbrrDI6WLt6C5auYZXlQrheoY8hD4ibekFKz1HOfE48Ww8kMWMnJD/zcQ==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=0.1.14" + } + }, "node_modules/std-env": { "version": "3.10.0", "resolved": "https://registry.npmjs.org/std-env/-/std-env-3.10.0.tgz", @@ -7245,6 +7439,16 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/svg-pathdata": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", + "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=12.0.0" + } + }, "node_modules/tailwind-merge": { "version": "2.6.0", "resolved": "https://registry.npmjs.org/tailwind-merge/-/tailwind-merge-2.6.0.tgz", @@ -7304,6 +7508,15 @@ "tailwindcss": ">=3.0.0 || insiders" } }, + "node_modules/text-segmentation": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz", + "integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==", + "license": "MIT", + "dependencies": { + "utrie": "^1.0.2" + } + }, "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", @@ -7734,6 +7947,15 @@ "dev": true, "license": "MIT" }, + "node_modules/utrie": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz", + "integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==", + "license": "MIT", + "dependencies": { + "base64-arraybuffer": "^1.0.2" + } + }, "node_modules/victory-vendor": { "version": "36.9.2", "resolved": "https://registry.npmjs.org/victory-vendor/-/victory-vendor-36.9.2.tgz", diff --git a/package.json b/package.json index 60dcda8..fb4ac11 100644 --- a/package.json +++ b/package.json @@ -28,30 +28,31 @@ "type-check": "tsc --noEmit" }, "dependencies": { + "class-variance-authority": "^0.7.0", + "clsx": "^2.1.0", + "date-fns": "^3.3.0", + "flexsearch": "^0.7.43", + "html2pdf.js": "^0.14.0", + "lucide-react": "^0.344.0", "next": "^14.2.0", "react": "^18.3.0", "react-dom": "^18.3.0", "recharts": "^2.12.0", - "lucide-react": "^0.344.0", - "clsx": "^2.1.0", "tailwind-merge": "^2.2.0", - "class-variance-authority": "^0.7.0", - "date-fns": "^3.3.0", - "flexsearch": "^0.7.43", "zod": "^3.22.0" }, "devDependencies": { "@types/node": "^20.11.0", "@types/react": "^18.3.0", "@types/react-dom": "^18.3.0", - "typescript": "^5.4.0", - "tailwindcss": "^3.4.0", - "tailwindcss-animate": "^1.0.7", - "postcss": "^8.4.0", "autoprefixer": "^10.4.0", "eslint": "^8.57.0", "eslint-config-next": "^14.2.0", + "postcss": "^8.4.0", + "tailwindcss": "^3.4.0", + "tailwindcss-animate": "^1.0.7", "tsx": "^4.7.0", + "typescript": "^5.4.0", "vitest": "^1.3.0" }, "engines": { diff --git a/types/html2pdf.d.ts b/types/html2pdf.d.ts new file mode 100644 index 0000000..9e90242 --- /dev/null +++ b/types/html2pdf.d.ts @@ -0,0 +1,39 @@ +declare module 'html2pdf.js' { + interface Html2PdfOptions { + margin?: number | number[]; + filename?: string; + image?: { + type?: string; + quality?: number; + }; + html2canvas?: { + scale?: number; + useCORS?: boolean; + backgroundColor?: string; + logging?: boolean; + }; + jsPDF?: { + unit?: string; + format?: string | number[]; + orientation?: 'portrait' | 'landscape'; + }; + pagebreak?: { + mode?: string[]; + before?: string[]; + after?: string[]; + avoid?: string[]; + }; + } + + interface Html2PdfInstance { + set(options: Html2PdfOptions): Html2PdfInstance; + from(element: HTMLElement | string): Html2PdfInstance; + save(): Promise; + output(type?: string): Promise; + toPdf(): Html2PdfInstance; + get(type: string): Promise; + } + + function html2pdf(): Html2PdfInstance; + export default html2pdf; +} From 79cc7cba170aac2f656699724080ca8e6a93eeb8 Mon Sep 17 00:00:00 2001 From: JBAhire Date: Fri, 16 Jan 2026 13:58:58 +0530 Subject: [PATCH 4/4] fix: UI improvements and component updates - Update detail pages with improved layout and export integration - Fix logo and score badge styling - Improve entity card and trust vector chart components - Update framework types and data utilities - Add new CSS styles and tailwind configuration --- app/agents/[id]/page.tsx | 212 ++++++++++++++--------------- app/globals.css | 94 +++++++++++++ app/layout.tsx | 15 +- app/mcps/[id]/page.tsx | 213 ++++++++++++++--------------- app/models/[id]/page.tsx | 218 ++++++++++++++---------------- app/page.tsx | 34 +---- components/entity-card.tsx | 19 +-- components/logo.tsx | 15 +- components/score-badge.tsx | 37 +++-- components/trust-vector-chart.tsx | 26 +++- data/models/gemini-3-flash.json | 6 +- data/models/gpt-5-2-codex.json | 3 +- framework/schema/types.ts | 21 +-- lib/data.ts | 28 ++-- tailwind.config.ts | 12 +- 15 files changed, 523 insertions(+), 430 deletions(-) diff --git a/app/agents/[id]/page.tsx b/app/agents/[id]/page.tsx index 9d89136..46aa967 100644 --- a/app/agents/[id]/page.tsx +++ b/app/agents/[id]/page.tsx @@ -1,32 +1,15 @@ -import { getEntityById, getRelatedEntities } from '@/lib/data'; +import { getEntityById, getRelatedEntities, getEntitiesByType } from '@/lib/data'; import { calculateOverallScore } from '@/framework/schema/types'; import { ScoreBadge, ScoreBar } from '@/components/score-badge'; import { TrustVectorChart } from '@/components/trust-vector-chart'; import { Badge } from '@/components/ui/badge'; import { formatDate } from '@/lib/utils'; import { notFound } from 'next/navigation'; +import { ExportPDFButton } from '@/components/export-pdf-button'; export function generateStaticParams() { - const agents = [ - // Enterprise (5) - 'amazon-lex', 'azure-bot-service', 'google-dialogflow', 'ibm-watson-assistant', 'salesforce-einstein-bots', - - // Cloud Providers (3) - 'openai-assistants-api', 'amazon-bedrock-agents', 'google-agent-builder', - - // Open-Source (8) - 'rasa', 'haystack', 'langflow', 'flowise', 'superagi', 'langgraph-agent', 'llamaindex-agent', 'crewai', - - // Microsoft (2) - 'autogen', 'semantic-kernel-agent', - - // Workflow/Automation (4) - 'n8n-ai-agent', 'make-ai', 'zapier-ai', 'activepieces', - - // Specialized (8) - 'agentgpt', 'e2b-agents', 'pydantic-ai', 'swarm', 'adala', 'memgpt', 'autogpt', 'babyagi', - ]; - return agents.map((id) => ({ id })); + const agents = getEntitiesByType('agent'); + return agents.map((agent) => ({ id: agent.id })); } export default function AgentDetailPage({ params }: { params: { id: string } }) { @@ -65,60 +48,67 @@ export default function AgentDetailPage({ params }: { params: { id: string } }) ]; return ( -
+
{/* Breadcrumb */} -
- +
+ Home - - + + Agents - - {entity.name} + + {entity.name}
{/* Hero Section */} -
-
-
-

{entity.name}

-

{entity.provider}

-
-
- -

Overall Trust Score

-
-
+
+ {/* Scanline effect */} +
-

{entity.description}

+
+
+
+
┌─ AGENT IDENTIFICATION ─────────────────────┐
+

{entity.name}

+

[{entity.provider.toUpperCase()}]

+
+
+ +

Overall Trust Score

+ +
+
-
- {entity.tags?.map((tag) => ( - - {tag} - - ))} -
+

{entity.description}

-
-
- Version: {entity.version} +
+ {entity.tags?.map((tag) => ( + + #{tag.toUpperCase()} + + ))}
-
- Last Evaluated: {formatDate(entity.last_evaluated)} + +
+
+ Version: {entity.version} +
+
+ Last Evaluated: {formatDate(entity.last_evaluated)} +
+ {entity.website && ( + + Official Website → + + )}
- {entity.website && ( - - Official Website → - - )}
@@ -126,30 +116,31 @@ export default function AgentDetailPage({ params }: { params: { id: string } })
{/* Left: Trust Vector Visualization */}
-
-

Trust Vector

+
+
├─ TRUST VECTOR ANALYSIS ────────────────────
+

Trust Vector

{/* Dimension Details */} {dimensions.map((dimension) => ( -
+
-

{dimension.name}

+

{dimension.name}

{dimension.data.notes && ( -

{dimension.data.notes}

+

{dimension.data.notes}

)}
{Object.entries(dimension.data.criteria).map(([key, criterion]) => (
-
+
-
+
{key.replace(/_/g, ' ')}
{criterion.score !== undefined && ( @@ -160,7 +151,7 @@ export default function AgentDetailPage({ params }: { params: { id: string } }) /> )} {criterion.value !== undefined && ( -
+
Value: {criterion.value}
)} @@ -173,16 +164,16 @@ export default function AgentDetailPage({ params }: { params: { id: string } })
-
+
-
Methodology
-
+
Methodology
+
{criterion.methodology}
-
Evidence
+
Evidence
{criterion.evidence.map((evidence, idx) => (
@@ -190,14 +181,14 @@ export default function AgentDetailPage({ params }: { params: { id: string } }) href={evidence.url} target="_blank" rel="noopener noreferrer" - className="text-primary hover:underline font-medium" + className="text-cyan-400 hover:text-cyan-300 hover:underline font-medium" > {evidence.source} -
+
{evidence.value}
-
+
Date: {evidence.date}
@@ -205,14 +196,14 @@ export default function AgentDetailPage({ params }: { params: { id: string } })
-
+
Confidence: {criterion.confidence} @@ -221,7 +212,7 @@ export default function AgentDetailPage({ params }: { params: { id: string } })
{criterion.notes && ( -
+
Note: {criterion.notes}
)} @@ -236,26 +227,28 @@ export default function AgentDetailPage({ params }: { params: { id: string } }) {/* Right Sidebar */}
{/* Strengths */} -
-

✨ Strengths

+
+
├─ STRENGTHS ─────────
+

Strengths

    {entity.strengths.map((strength, idx) => (
  • - - {strength} + + + {strength}
  • ))}
{/* Limitations */} -
-

⚠️ Limitations

+
+
├─ LIMITATIONS ───────
+

Limitations

    {entity.limitations.map((limitation, idx) => (
  • - - {limitation} + ! + {limitation}
  • ))}
@@ -264,20 +257,21 @@ export default function AgentDetailPage({ params }: { params: { id: string } }) {/* Metadata */} {entity.metadata && ( -
-

📊 Metadata

+
+
├─ METADATA ──────────
+

Metadata

{Object.entries(entity.metadata).map(([key, value]) => { if (typeof value === 'object' && value !== null) { return (
-
+
{key.replace(/_/g, ' ')}:
{Object.entries(value).map(([subKey, subValue]) => ( -
- {subKey.replace(/_/g, ' ')}:{' '} +
+ {subKey.replace(/_/g, ' ')}:{' '} {String(subValue)}
))} @@ -286,8 +280,8 @@ export default function AgentDetailPage({ params }: { params: { id: string } }) ); } return ( -
- {key.replace(/_/g, ' ')}:{' '} +
+ {key.replace(/_/g, ' ')}:{' '} {String(value)}
); @@ -300,16 +294,17 @@ export default function AgentDetailPage({ params }: { params: { id: string } }) {/* Use Case Ratings */} {entity.use_case_ratings && Object.keys(entity.use_case_ratings).length > 0 && ( -
-

Use Case Ratings

+
+
├─ USE CASE ANALYSIS ─────────────────────────
+

Use Case Ratings

{Object.entries(entity.use_case_ratings).map(([key, rating]) => ( -
+
-

{key.replace(/-/g, ' ')}

+

{key.replace(/-/g, ' ')}

-

{rating.notes}

+

{rating.notes}

))}
@@ -318,20 +313,21 @@ export default function AgentDetailPage({ params }: { params: { id: string } }) {/* Related Entities */} {relatedEntities.length > 0 && ( -
-

Similar Agents

+
+
├─ SIMILAR ENTITIES ──────────────────────────
+

Similar Agents

diff --git a/app/globals.css b/app/globals.css index 2e8f927..d4c2f08 100644 --- a/app/globals.css +++ b/app/globals.css @@ -633,3 +633,97 @@ pointer-events: none; opacity: 0.05; } + +/* PDF Export Mode - Applied when exporting */ +.pdf-export-mode, +.pdf-export-mode body { + background: #0a0a0a !important; + background-image: none !important; +} + +.pdf-export-mode body::before, +.pdf-export-mode body::after { + display: none !important; +} + +.pdf-export-mode .absolute.pointer-events-none { + display: none !important; +} + +.pdf-export-mode .matrix-bg, +.pdf-export-mode .cyber-grid, +.pdf-export-mode #matrix-canvas { + display: none !important; +} + +.pdf-export-mode header, +.pdf-export-mode footer { + display: none !important; +} + +.pdf-export-mode main { + background: #0a0a0a !important; +} + +.pdf-export-mode * { + animation: none !important; + transition: none !important; +} + +/* Force single column layout in PDF export mode */ +.pdf-export-mode .grid.lg\:grid-cols-3 { + display: block !important; +} + +.pdf-export-mode .lg\:col-span-2 { + width: 100% !important; + margin-bottom: 24px !important; +} + +.pdf-export-mode .space-y-6 > * { + margin-bottom: 24px !important; +} + +/* Print styles */ +@media print { + body { + background: #0a0a0a !important; + background-image: none !important; + -webkit-print-color-adjust: exact; + print-color-adjust: exact; + } + + body::before, + body::after { + display: none !important; + } + + .absolute.pointer-events-none { + display: none !important; + } + + * { + animation: none !important; + transition: none !important; + } + + /* Force single column layout */ + .grid { + display: block !important; + } + + .lg\:grid-cols-3, + .md\:grid-cols-2, + .md\:grid-cols-3 { + display: block !important; + } + + .lg\:col-span-2 { + width: 100% !important; + } + + /* Hide export button */ + [data-export-button] { + display: none !important; + } +} diff --git a/app/layout.tsx b/app/layout.tsx index 4732238..e203129 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -5,7 +5,7 @@ import { Logo } from '@/components/logo'; export const metadata: Metadata = { title: 'TrustVector - AI Assurance Framework', description: - 'Open-source framework for evaluating 98 AI systems (models, MCPs, and agents) across 5 trust dimensions: security, privacy, performance, trust, and operational excellence.', + 'Open-source framework for evaluating 106 AI systems (models, MCPs, and agents) across 5 trust dimensions: security, privacy, performance, trust, and operational excellence.', keywords: [ 'AI', 'LLM', @@ -28,14 +28,14 @@ export const metadata: Metadata = { }, openGraph: { title: 'TrustVector - AI Assurance Framework', - description: 'Evidence-based evaluations of 98 AI systems across 5 trust dimensions', + description: 'Evidence-based evaluations of 106 AI systems across 5 trust dimensions', type: 'website', siteName: 'TrustVector', }, twitter: { card: 'summary_large_image', title: 'TrustVector - AI Assurance Framework', - description: 'Evidence-based evaluations of 98 AI systems across 5 trust dimensions', + description: 'Evidence-based evaluations of 106 AI systems across 5 trust dimensions', }, }; @@ -70,7 +70,7 @@ export default function RootLayout({ SYSTEM ACTIVE | - 98 AI ENTITIES MONITORED + 106 AI ENTITIES MONITORED | 5 TRUST VECTORS
@@ -122,6 +122,13 @@ export default function RootLayout({ # Methodology + + + + Contribute + {/* GitHub button - command line style */} ({ id })); + const mcps = getEntitiesByType('mcp'); + return mcps.map((mcp) => ({ id: mcp.id })); } export default function MCPDetailPage({ params }: { params: { id: string } }) { @@ -66,60 +48,67 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) { ]; return ( -
+
{/* Breadcrumb */} -
- +
+ Home - - + + MCPs - - {entity.name} + + {entity.name}
{/* Hero Section */} -
-
-
-

{entity.name}

-

{entity.provider}

-
-
- -

Overall Trust Score

-
-
+
+ {/* Scanline effect */} +
-

{entity.description}

+
+
+
+
┌─ MCP IDENTIFICATION ─────────────────────┐
+

{entity.name}

+

[{entity.provider.toUpperCase()}]

+
+
+ +

Overall Trust Score

+ +
+
-
- {entity.tags?.map((tag) => ( - - {tag} - - ))} -
+

{entity.description}

-
-
- Version: {entity.version} +
+ {entity.tags?.map((tag) => ( + + #{tag.toUpperCase()} + + ))}
-
- Last Evaluated: {formatDate(entity.last_evaluated)} + +
+
+ Version: {entity.version} +
+
+ Last Evaluated: {formatDate(entity.last_evaluated)} +
+ {entity.website && ( + + Official Website → + + )}
- {entity.website && ( - - Official Website → - - )}
@@ -127,30 +116,31 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) {
{/* Left: Trust Vector Visualization */}
-
-

Trust Vector

+
+
├─ TRUST VECTOR ANALYSIS ────────────────────
+

Trust Vector

{/* Dimension Details */} {dimensions.map((dimension) => ( -
+
-

{dimension.name}

+

{dimension.name}

{dimension.data.notes && ( -

{dimension.data.notes}

+

{dimension.data.notes}

)}
{Object.entries(dimension.data.criteria).map(([key, criterion]) => (
-
+
-
+
{key.replace(/_/g, ' ')}
{criterion.score !== undefined && ( @@ -161,7 +151,7 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) { /> )} {criterion.value !== undefined && ( -
+
Value: {criterion.value}
)} @@ -174,16 +164,16 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) {
-
+
-
Methodology
-
+
Methodology
+
{criterion.methodology}
-
Evidence
+
Evidence
{criterion.evidence.map((evidence, idx) => (
@@ -191,14 +181,14 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) { href={evidence.url} target="_blank" rel="noopener noreferrer" - className="text-primary hover:underline font-medium" + className="text-cyan-400 hover:text-cyan-300 hover:underline font-medium" > {evidence.source} -
+
{evidence.value}
-
+
Date: {evidence.date}
@@ -206,14 +196,14 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) {
-
+
Confidence: {criterion.confidence} @@ -222,7 +212,7 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) {
{criterion.notes && ( -
+
Note: {criterion.notes}
)} @@ -237,26 +227,28 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) { {/* Right Sidebar */}
{/* Strengths */} -
-

✨ Strengths

+
+
├─ STRENGTHS ─────────
+

Strengths

    {entity.strengths.map((strength, idx) => (
  • - - {strength} + + + {strength}
  • ))}
{/* Limitations */} -
-

⚠️ Limitations

+
+
├─ LIMITATIONS ───────
+

Limitations

    {entity.limitations.map((limitation, idx) => (
  • - - {limitation} + ! + {limitation}
  • ))}
@@ -265,20 +257,21 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) { {/* Metadata */} {entity.metadata && ( -
-

📊 Metadata

+
+
├─ METADATA ──────────
+

Metadata

{Object.entries(entity.metadata).map(([key, value]) => { if (typeof value === 'object' && value !== null) { return (
-
+
{key.replace(/_/g, ' ')}:
{Object.entries(value).map(([subKey, subValue]) => ( -
- {subKey.replace(/_/g, ' ')}:{' '} +
+ {subKey.replace(/_/g, ' ')}:{' '} {String(subValue)}
))} @@ -287,8 +280,8 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) { ); } return ( -
- {key.replace(/_/g, ' ')}:{' '} +
+ {key.replace(/_/g, ' ')}:{' '} {String(value)}
); @@ -301,16 +294,17 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) { {/* Use Case Ratings */} {entity.use_case_ratings && Object.keys(entity.use_case_ratings).length > 0 && ( -
-

Use Case Ratings

+
+
├─ USE CASE ANALYSIS ─────────────────────────
+

Use Case Ratings

{Object.entries(entity.use_case_ratings).map(([key, rating]) => ( -
+
-

{key.replace(/-/g, ' ')}

+

{key.replace(/-/g, ' ')}

-

{rating.notes}

+

{rating.notes}

))}
@@ -319,20 +313,21 @@ export default function MCPDetailPage({ params }: { params: { id: string } }) { {/* Related Entities */} {relatedEntities.length > 0 && ( -
-

Similar MCPs

+
+
├─ SIMILAR ENTITIES ──────────────────────────
+

Similar MCPs

diff --git a/app/models/[id]/page.tsx b/app/models/[id]/page.tsx index d612b86..876f405 100644 --- a/app/models/[id]/page.tsx +++ b/app/models/[id]/page.tsx @@ -1,38 +1,15 @@ -import { getEntityById, getRelatedEntities } from '@/lib/data'; +import { getEntityById, getRelatedEntities, getEntitiesByType } from '@/lib/data'; import { calculateOverallScore } from '@/framework/schema/types'; import { ScoreBadge, ScoreBar } from '@/components/score-badge'; import { TrustVectorChart } from '@/components/trust-vector-chart'; import { Badge } from '@/components/ui/badge'; import { formatDate } from '@/lib/utils'; import { notFound } from 'next/navigation'; +import { ExportPDFButton } from '@/components/export-pdf-button'; export function generateStaticParams() { - const models = [ - // Anthropic (8) - 'claude-sonnet-4-5', 'claude-4-sonnet', 'claude-4-opus', 'claude-opus-4-1', - 'claude-3-7-sonnet-r', 'claude-3-7-sonnet', 'claude-haiku-4-5', 'claude-3-5-haiku', - - // OpenAI (14) - 'gpt-5', 'gpt-4-5', 'gpt-4-1', 'gpt-4-1-mini', 'gpt-4-1-nano', - 'gpt-4o', 'gpt-4o-mini', 'openai-o1', 'openai-o1-mini', 'openai-o3', - 'openai-o3-mini', 'openai-o4-mini', 'gpt-oss-20b', 'gpt-oss-120b', - - // Google (4) - 'gemini-2-5-pro', 'gemini-2-5-flash', 'gemini-2-0-flash', 'gemma-3-27b', - - // Meta (5) - 'llama-4-maverick', 'llama-4-behemoth', 'llama-4-scout', 'llama-3-1-405b', 'llama-3-3-70b', - - // xAI (2) - 'grok-4', 'grok-3-beta', - - // DeepSeek (2) - 'deepseek-r1', 'deepseek-v3-0324', - - // Other (3) - 'nemotron-ultra-253b', 'qwen2-5-vl-32b', 'nova-pro', - ]; - return models.map((id) => ({ id })); + const models = getEntitiesByType('model'); + return models.map((model) => ({ id: model.id })); } export default function ModelDetailPage({ params }: { params: { id: string } }) { @@ -71,60 +48,67 @@ export default function ModelDetailPage({ params }: { params: { id: string } }) ]; return ( -
+
{/* Breadcrumb */} -
- +
+ Home - - + + Models - - {entity.name} + + {entity.name}
{/* Hero Section */} -
-
-
-

{entity.name}

-

{entity.provider}

-
-
- -

Overall Trust Score

-
-
+
+ {/* Scanline effect */} +
-

{entity.description}

+
+
+
+
┌─ MODEL IDENTIFICATION ─────────────────────┐
+

{entity.name}

+

[{entity.provider.toUpperCase()}]

+
+
+ +

Overall Trust Score

+ +
+
-
- {entity.tags?.map((tag) => ( - - {tag} - - ))} -
+

{entity.description}

-
-
- Version: {entity.version} +
+ {entity.tags?.map((tag) => ( + + #{tag.toUpperCase()} + + ))}
-
- Last Evaluated: {formatDate(entity.last_evaluated)} + +
+
+ Version: {entity.version} +
+
+ Last Evaluated: {formatDate(entity.last_evaluated)} +
+ {entity.website && ( + + Official Website → + + )}
- {entity.website && ( - - Official Website → - - )}
@@ -132,30 +116,31 @@ export default function ModelDetailPage({ params }: { params: { id: string } })
{/* Left: Trust Vector Visualization */}
-
-

Trust Vector

+
+
├─ TRUST VECTOR ANALYSIS ────────────────────
+

Trust Vector

{/* Dimension Details */} {dimensions.map((dimension) => ( -
+
-

{dimension.name}

+

{dimension.name}

{dimension.data.notes && ( -

{dimension.data.notes}

+

{dimension.data.notes}

)}
{Object.entries(dimension.data.criteria).map(([key, criterion]) => (
-
+
-
+
{key.replace(/_/g, ' ')}
{criterion.score !== undefined && ( @@ -166,7 +151,7 @@ export default function ModelDetailPage({ params }: { params: { id: string } }) /> )} {criterion.value !== undefined && ( -
+
Value: {criterion.value}
)} @@ -179,16 +164,16 @@ export default function ModelDetailPage({ params }: { params: { id: string } })
-
+
-
Methodology
-
+
Methodology
+
{criterion.methodology}
-
Evidence
+
Evidence
{criterion.evidence.map((evidence, idx) => (
@@ -196,14 +181,14 @@ export default function ModelDetailPage({ params }: { params: { id: string } }) href={evidence.url} target="_blank" rel="noopener noreferrer" - className="text-primary hover:underline font-medium" + className="text-cyan-400 hover:text-cyan-300 hover:underline font-medium" > {evidence.source} -
+
{evidence.value}
-
+
Date: {evidence.date}
@@ -211,14 +196,14 @@ export default function ModelDetailPage({ params }: { params: { id: string } })
-
+
Confidence: {criterion.confidence} @@ -227,7 +212,7 @@ export default function ModelDetailPage({ params }: { params: { id: string } })
{criterion.notes && ( -
+
Note: {criterion.notes}
)} @@ -242,26 +227,28 @@ export default function ModelDetailPage({ params }: { params: { id: string } }) {/* Right Sidebar */}
{/* Strengths */} -
-

✨ Strengths

+
+
├─ STRENGTHS ─────────
+

Strengths

    {entity.strengths.map((strength, idx) => (
  • - - {strength} + + + {strength}
  • ))}
{/* Limitations */} -
-

⚠️ Limitations

+
+
├─ LIMITATIONS ───────
+

Limitations

    {entity.limitations.map((limitation, idx) => (
  • - - {limitation} + ! + {limitation}
  • ))}
@@ -270,20 +257,21 @@ export default function ModelDetailPage({ params }: { params: { id: string } }) {/* Metadata */} {entity.metadata && ( -
-

📊 Metadata

+
+
├─ METADATA ──────────
+

Metadata

{Object.entries(entity.metadata).map(([key, value]) => { if (typeof value === 'object' && value !== null) { return (
-
+
{key.replace(/_/g, ' ')}:
{Object.entries(value).map(([subKey, subValue]) => ( -
- {subKey.replace(/_/g, ' ')}:{' '} +
+ {subKey.replace(/_/g, ' ')}:{' '} {String(subValue)}
))} @@ -292,8 +280,8 @@ export default function ModelDetailPage({ params }: { params: { id: string } }) ); } return ( -
- {key.replace(/_/g, ' ')}:{' '} +
+ {key.replace(/_/g, ' ')}:{' '} {String(value)}
); @@ -306,16 +294,17 @@ export default function ModelDetailPage({ params }: { params: { id: string } }) {/* Use Case Ratings */} {entity.use_case_ratings && Object.keys(entity.use_case_ratings).length > 0 && ( -
-

Use Case Ratings

+
+
├─ USE CASE ANALYSIS ─────────────────────────
+

Use Case Ratings

{Object.entries(entity.use_case_ratings).map(([key, rating]) => ( -
+
-

{key.replace(/-/g, ' ')}

+

{key.replace(/-/g, ' ')}

-

{rating.notes}

+

{rating.notes}

))}
@@ -324,20 +313,21 @@ export default function ModelDetailPage({ params }: { params: { id: string } }) {/* Related Entities */} {relatedEntities.length > 0 && ( -
-

Similar Models

+
+
├─ SIMILAR ENTITIES ──────────────────────────
+

Similar Models

diff --git a/app/page.tsx b/app/page.tsx index fe0e246..91618d2 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -87,7 +87,7 @@ export default function HomePage() { {/* Description - More Readable */}

- Comprehensive trust evaluations of 93 AI systems across{' '} + Comprehensive trust evaluations of {allEntities.length} AI systems across{' '} 5 security dimensions — covering models, MCPs, and agents with evidence-backed analysis.

@@ -112,7 +112,7 @@ export default function HomePage() { Explore Evaluations )} - {/* CTA Section */} - {/* Custom Styles */} diff --git a/components/entity-card.tsx b/components/entity-card.tsx index 6c075eb..6692077 100644 --- a/components/entity-card.tsx +++ b/components/entity-card.tsx @@ -70,27 +70,28 @@ export function EntityCard({ entity }: EntityCardProps) { {/* Outer glow effect on hover - terminal green */} -
+