Home
New: 🧠 AI Vector Search β€’ Semantic Clustering β€’ Mock APIs β€’ 24 Datasets

Docs Β· MCP

MCP integration

Connect Claude Code to your test data using the Model Context Protocol (MCP). Five consolidated tools (down from 24) with an efficient router pattern, 24 queryable datasets, and built-in mock API management.

What's New in v2.1

  • 🧠 AI Vector Search - Semantic search & failure clustering using Jina v3 embeddings + Cohere reranking
  • 24 queryable datasets - Including clustered_failures, semantic_search, mock APIs, org_suites, suite_tests, inactive_tests, and setup_guide
  • find_similar action - Find similar failures across current or historical runs
  • 5 tools instead of 24 - Router pattern with ~83% token reduction
  • HTTP Streamable transport - More reliable than legacy SSE
  • Semantic definitions - Metric formulas prevent AI hallucinations

Installation

1Quick Start (OAuth - Recommended)

One command to connect Claude Code to Exolar : authenticates via browser:

claude mcp add exolar-qa --transport http https://exolar.agentical.work/api/mcp/mcp -s user

When prompted, select "Authenticate" β†’ browser opens β†’ log in β†’ done!

Verify installation: Run claude mcp list to see "exolar-qa" connected

2Alternative: Manual Token

If OAuth doesn't work, get a token from /settings/mcp:

claude mcp add exolar-qa --transport http https://exolar.agentical.work/api/mcp/mcp -s user \
  --header "Authorization: Bearer YOUR_TOKEN_HERE"

πŸ€–AI-Guided CI/CD Setup

After connecting, ask Claude Code:

"Help me integrate Exolar with my Playwright tests"

Claude uses an Integration Engineer persona to guide you through GitHub Actions setup with step-by-step instructions.

Architecture: Router Pattern

Instead of 24 individual tools, the MCP server uses a two-level router pattern:

Level 1: Tool
Which category?
  • β€’ explore (discovery)
  • β€’ query (data retrieval)
  • β€’ action (heavy ops)
  • β€’ definition (semantics)
  • β€’ config (setup)
Level 2: Dataset/Action
Which specific data?
  • β€’ executions, failures
  • β€’ flaky_tests, trends
  • β€’ mock_interfaces, mock_routes
  • β€’ org_suites, suite_tests
  • β€’ compare, classify, reembed
  • β€’ metric formulas
  • β€’ CI/CD snippets

Benefits

  • 83% fewer tokens - Tool definitions reduced from ~3,000 to ~500 tokens
  • Unified filters - Consistent interface across all datasets
  • Better discovery - explore_exolar_index shows what's available
  • Flexible routing - Easy to add new datasets

Available Tools (5 Total)

All tools support organization-scoped access with automatic filtering.

discoveryexplore_exolar_index

Discovery tool - call FIRST to learn what data exists. Lists datasets, branches, suites, or metrics with optional search filtering.

queryquery_exolar_data

Universal data retrieval router. Retrieves data from any of the 24 available datasets using a unified filter interface.

actionperform_exolar_action

Execute heavy operations: compare executions, generate reports, classify failures, find similar failures, re-embed tests, or manage mock APIs.

metadataget_semantic_definition

Get metric definitions to prevent AI hallucinations. Returns formula, thresholds, unit, and related tools for any metric.

metadataget_installation_config

Get CI/CD integration code snippets and setup instructions. Returns ready-to-use config for Playwright reporter, GitHub Actions, and environment variables.

Available Datasets (24 Total)

Use query_exolar_data with these datasets:

01
executions
List test executions with optional filters (branch, suite, status, dates)
02
execution_details
Full execution data with all test results and artifacts (requires execution_id)
03
failures
Failed tests with AI-enriched context and error details
04
flaky_tests
Tests with flakiness history (min_runs, include_resolved filters)
05
trends
Time-series metrics with flexible granularity (hour, day, week, month)
06
dashboard_stats
Overall metrics summary (total executions, pass rate, avg duration)
07
error_analysis
Error type distribution breakdown
08
test_search
Search tests by name or file path (requires query param)
09
test_history
Execution history for a specific test (requires test_signature)
10
flakiness_summary
Overall flakiness metrics and worst offenders
11
reliability_score
Suite health score (0-100) with breakdown and trend
12
performance_regressions
Tests slower than historical baseline
13
execution_summary
Aggregated execution overview without full test list
14
execution_failures
Only failed tests from an execution with error grouping
15
clustered_failures
AI-grouped failures by similarity (requires execution_id, reduces 50+ failures to root causes)
16
semantic_search
Natural language search for failures using vector embeddings (requires query)
17
setup_guide
CI/CD integration setup instructions filtered by provider and framework
18
org_suites
All test suites for the organization with pass rates and last-run stats
19
suite_tests
Individual tests within a suite (requires suite filter)
20
inactive_tests
Tests that haven't run recently : useful for test suite cleanup
21
mock_interfaces
List mock API interfaces created for the organization
22
mock_routes
Routes configured on a mock interface (requires interface_id)
23
mock_rules
Response rules for a mock route (requires route_id)
24
mock_logs
Request logs for a mock interface with matched rule details

Migration from v1.0

If you were using the previous 24-tool version, here's how to migrate:

Old ToolNew ToolParameters
list_branchesexplore_exolar_index{ category: "branches" }
get_executionsquery_exolar_data{ dataset: "executions" }
get_flaky_testsquery_exolar_data{ dataset: "flaky_tests" }
compare_executionsperform_exolar_action{ action: "compare" }
See full mapping in documentation

Usage Examples

After connecting, you can ask Claude things like:

β€œShow me what datasets are available”
β€œList all branches with their stats”
β€œWhat metrics can I query?”
β€œGet recent test failures on main branch”
β€œShow me the flakiest tests with at least 5 runs”
β€œWhat were the test results from the last CI run?”
β€œSearch for tests related to login”
β€œGet metrics for the past week”
β€œWhat's the health score for my test suite?”
β€œAre there any performance regressions on the main branch?”
β€œShow me tests that got slower in the last 24 hours”
β€œWhat's the error distribution for failed tests?”
β€œCluster the failures from the last run by root cause”
β€œFind tests with timeout errors using semantic search”
β€œShow me similar failures to this test”
β€œGroup 50+ failures into meaningful clusters”
β€œCompare the last two runs on main branch”
β€œWhat tests broke in the feature branch compared to main?”
β€œShow me new failures between main and feature-auth”
β€œIs this test failure a flake or a real bug?”
β€œClassify the failure in test 'should login successfully'”
β€œCreate a mock API for the user service”
β€œList all mock interfaces for my org”
β€œAdd a route that returns 404 for unknown users”
β€œHelp me set up MCP integration”
β€œHow do I configure GitHub Actions?”
β€œWhat's the formula for pass rate?”
β€œHow is reliability score calculated?”

Conversational CI/CD Setup

The get_installation_config tool uses an Integration Engineer persona that guides you through setup step-by-step.

πŸ”

Discovery

Claude asks about your CI provider (GitHub Actions recommended), monorepo structure, and existing tests

🎯

Adaptation

Receives CI-specific instructions with exact secrets management steps for GitHub Actions

βœ…

Validation

Gets dry run commands to verify integration before pushing to CI

Example Conversation

You: β€œHelp me integrate Exolar with my Playwright tests”
Claude (Integration Engineer): β€œI'll help you set up Exolar! First, which CI provider are you using? (GitHub Actions recommended, or running locally?)”
You: β€œGitHub Actions”
Claude: β€œPerfect! Here are your GitHub Actions setup instructions: 1. Add this secret in Settings > Secrets > Actions: Name: EXOLAR_API_KEY Value: [from /settings/mcp] 2. Install the package: npm install @exolar/reporter 3. MERGE (don't replace!) the reporter into your playwright.config.ts reporters array 4. Update your .github/workflows/playwright.yml with... Would you like me to explain how to merge the reporter config?”

Key Benefits

  • β€’ No guessing where to put the EXOLAR_API_KEY
  • β€’ Clear instructions: MERGE vs REPLACE config files
  • β€’ GitHub Actions-specific secrets management path
  • β€’ Monorepo-aware guidance (where to place reporters, per-package config)
  • β€’ Built-in validation commands (dry run locally before CI push)

Router Pattern Alternative

You can also use the router pattern to get pre-filtered configuration programmatically:

query_exolar_data({
  dataset: "setup_guide",
  filters: {
    ci_provider: "github",  // or "local" (v2.1)
    framework: "playwright",
    monorepo: false,        // or true
    section: "all"          // or specific section
  }
})

Output Formats

Markdown (Default)

  • β€’ CLI-friendly tables
  • β€’ ~70% fewer tokens than JSON
  • β€’ Human-readable
  • β€’ Easier to scan

JSON

  • β€’ Structured data
  • β€’ Programmatic parsing
  • β€’ Full details
  • β€’ API integration

Security

  • JWT tokens verified using Neon Auth JWKS
  • All data automatically scoped to your organization
  • Database-level RLS policies for additional protection
  • HTTPS-only communication (encrypted in transit)
  • No cross-tenant access - users only see their org's data

Troubleshooting

β€œInvalid or expired token”

Visit /settings/mcp to generate a new token. Tokens expire after 30 days.

β€œUser not found”

Ensure you're logged into the dashboard and have an organization assigned. Generate a new token from /settings/mcp after logging in.

β€œTool not found”

You may be using old tool names. Use the 5 consolidated tools: explore_exolar_index, query_exolar_data, perform_exolar_action, get_semantic_definition, get_installation_config.

Connection fails

Check: (1) Dashboard is accessible, (2) NEON_AUTH_JWKS_URL is set in Vercel, (3) URL is correct (/api/mcp/mcp not /api/mcp).

Additional Resources