Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
TESTNEO_API_KEYYesAPI key for authentication
TESTNEO_BASE_URLYesThe base URL of the TestNeo API (e.g., http://localhost:8001)
TESTNEO_ROUTE_PROFILENoOptional preset phrase map: 'none' or 'saucedemo' (default: none)none
TESTNEO_MCP_TIMEOUT_MSNoTimeout in milliseconds (default: 20000)20000
TESTNEO_MCP_USER_AGENTNoUser agent string (default: @testneo/mcp-server)@testneo/mcp-server
TESTNEO_ROUTE_MAP_JSONNoJSON object of phrase → path mappings (optional)
TESTNEO_MCP_ALLOW_WRITENoAllow write operations (default: false). Set 'true' to enablefalse
TESTNEO_MCP_POLICY_MODENoPrecondition policy behavior: 'strict' or 'warn' (default: strict)strict
TESTNEO_ROUTE_HARDENINGNoEnable phrase→path rewrites (default: true)true
TESTNEO_MCP_TELEMETRY_JSONLNoEmit one JSON line per tool invocation to stderr (default: false)false
TESTNEO_MCP_SWAGGER_TIMEOUT_MSNoSwagger multipart timeout in milliseconds (default: 120000)120000
TESTNEO_MCP_RELAX_PROJECT_PRECONDITIONSNoSkip executable-base URL checks on generate/execute tools (default: false)false

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
testneo_validate_connectionA

Validate token and fetch basic account context.

testneo_validate_prC

Run TestNeo PR validation planning from diff or git refs. Returns shared workflow context, impacted tests, planned verification stages, and Claude-ready findings using the new orchestration contracts.

testneo_get_local_agent_statusA

Returns whether a TestNeo self-hosted agent is registered and recently heartbeating (local runner). Includes setup_url on the same origin as TESTNEO_BASE_URL (for example …/web/agent). Read-only.

testneo_list_tests_by_tagsA

List web test case ids for a project matching one or more tags. Tags may include a leading @; each tag is queried separately (union with tag_match=any, intersection with all). Backend: GET /api/web/v1/test-cases/?tag_filter= (one tag per request).

testneo_find_test_casesA

List web test cases in a project using the backend text search (?search= on GET /api/web/v1/test-cases/). Matches name/description per API rules. Read-only — use returned id + name with testneo_run_generated_test_pipeline (test_case_id) or pass project_id + name_query to run by name.

testneo_run_batch_by_tagsB

Create and execute a multi-test run for tests matching tags (write: requires TESTNEO_MCP_ALLOW_WRITE + confirm=true). Resolves tags like testneo_list_tests_by_tags, then POST /api/web/v1/multi-test-runs/create and POST …/execute. When TESTNEO_MCP_DEFAULT_EXECUTION_MODE=local and TESTNEO_MCP_PREFER_LOCAL_AGENT=true, sets use_agent for the local TestNeo agent. While use_agent: polls GET /agents/my-agent until connected or until TESTNEO_MCP_WAIT_FOR_AGENT_MS / wait_for_agent_seconds elapses (avoids failing if you start the agent seconds after invoking the tool). Optional TESTNEO_MCP_OPEN_AGENT_SETUP_ON_AGENT_FAILURE opens setup_url on hard agent failure.

testneo_suggest_api_test_chainsA

Scan Swagger/NLP-derived API-style web tests for a project and return suggested business-flow chains (ordering, phases, suite summaries). Read-only: GET /api/web/v1/projects/{id}/api-test-chains/suggest. Use before recommending which suite to run or before testneo_save_api_test_chain / testneo_run_api_test_chain.

testneo_list_saved_api_test_chainsA

List user-saved API test chain suites for a web project (ordered test_case_ids). Read-only: GET /api/web/v1/projects/{id}/api-test-chains.

testneo_save_api_test_chainB

Persist a named API test chain (ordered NLP/API web tests) for a project. Guarded: TESTNEO_MCP_ALLOW_WRITE + confirm=true. Backend: POST /api/web/v1/projects/{id}/api-test-chains.

testneo_delete_saved_api_test_chainA

Delete a saved API test chain by id. Guarded: TESTNEO_MCP_ALLOW_WRITE + confirm=true. Backend: DELETE /api/web/v1/projects/{id}/api-test-chains/{chain_id}.

testneo_run_api_test_chainA

Create and execute a multi-test run using an ordered API chain: either explicit test_case_ids (preserves order) or saved_chain_id from testneo_list_saved_api_test_chains. Same execution routing as testneo_run_batch_by_tags (local agent wait, use_agent, etc.). Guarded: TESTNEO_MCP_ALLOW_WRITE + confirm=true.

testneo_get_project_route_mapC

Get project-level MCP route-hardening map/profile from project_settings.mcp_route_hardening.

testneo_set_project_route_mapB

Persist project-level route-hardening map/profile in project_settings.mcp_route_hardening (guarded write action).

testneo_apply_route_hardeningA

Rewrite vague Navigate-to NLP lines into {{base_url}}/path using server env (TESTNEO_ROUTE_PROFILE, TESTNEO_ROUTE_MAP_JSON) plus optional per-call overrides. Read-only; does not call the TestNeo API.

testneo_swagger_previewA

Parse Swagger/OpenAPI (JSON or YAML) from base64 and return spec format, tags, and endpoint counts. Read-only; no DB writes. Backend: POST /api/web/v1/ai-test-gen/preview.

testneo_swagger_upload_and_generateA

Upload Swagger + optional business rules → unified context indexing + NLP web test cases (multipart). Guarded: TESTNEO_MCP_ALLOW_WRITE + confirm=true. Respects project execution preconditions. Large payloads: set TESTNEO_MCP_SWAGGER_TIMEOUT_MS. Backend: POST /api/web/v1/ai-test-gen/upload-and-generate.

testneo_swagger_impact_analysisB

Compare an uploaded Swagger revision against the last snapshot for a web project, diff endpoints, and list impacted swagger-sourced NLP tests. Persists the modified spec bytes for the next baseline. Guarded: allow-write + confirm=true. Backend: POST /api/web/v1/ai-test-gen/impact-analysis.

testneo_swagger_impact_actionsB

Bulk apply impact triage on web test cases: mark_stale | archive | keep, then promote modified spec snapshot when possible. Guarded: allow-write + confirm=true. Backend: POST /api/web/v1/ai-test-gen/impact-actions.

testneo_api_project_upload_openapiA

Upload OpenAPI JSON/YAML to a classic API project (stores spec on Project.openapi_spec). Use before testneo_api_project_openapi_impact. Guarded: allow-write + confirm=true. Backend: POST /api/v1/projects/{id}/upload-openapi (multipart field: file).

testneo_api_project_openapi_impactB

Run OpenAPI impact analysis for API (non-web) test cases against a new or stored spec. Pass openapi_spec to diff an inline revision, or omit to analyze using the spec already saved on the project. Guarded: allow-write + confirm=true (service may flag tests). Backend: POST /api/v1/projects/{id}/openapi-impact.

testneo_list_projectsB

List projects available to the current API key user.

testneo_create_web_projectA

Create a new web automation project (stored under your API key account). Mirrors POST /api/web/v1/projects. Guarded: TESTNEO_MCP_ALLOW_WRITE=true and confirm=true. By default creates a default web environment with base_url (and optional username/password variables) in the same request; set create_default_environment=false for project-only. New projects get Lighthouse performance audits enabled unless project_settings overrides.

testneo_create_web_project_environmentB

Create a named web project environment with optional variables (e.g. base_url for {{base_url}} in NLP). Backend: POST /api/web/v1/projects/{project_id}/environments. Guarded: allow-write + confirm=true.

testneo_bootstrap_web_mcp_projectA

One-shot onboarding: validate → create web project with optional default environment (base_url + credentials) in a single POST when add_base_url_variable=true. Returns a trace + recommended_next_tools. Guarded like other writes.

testneo_list_recent_executionsC

List recent executions, optionally filtered by project/status/release/build.

testneo_get_execution_statusC

Fetch primary execution status, steps and summary metadata for an execution ID.

testneo_get_execution_summaryB

Get analytics summary for an execution (status, pass/fail, duration, video metadata).

testneo_get_execution_logsC

Get execution logs for an execution ID.

testneo_search_failuresB

Search failed executions for a project by test name or execution id fragment.

testneo_get_pass_fail_trendC

Summarize pass/fail trend for a project over a date range.

testneo_watch_executionB

Poll execution summary until terminal status or timeout window.

testneo_get_failure_bundleA

Get a compact failure triage bundle: summary, event sample, logs, inferred theme, next actions, plus a concrete suggested NLP patch (diff + testneo_update_test_case_nlp payload) when execution summary includes test_case_id.

testneo_run_agent_workflowC

Run an agentic multi-step QA workflow (triage_failure, rerun_decision, qa_intelligence) over TestNeo data.

testneo_ingest_figma_contextB

Ingest Figma metadata via ETL, optionally wait for completion, then create a linked unified context for test generation.

testneo_list_unified_contextsB

List unified contexts for a project with id + human-readable names. Use before testneo_generate_tests_from_context so agents do not have to scrape context_id from the UI.

testneo_get_unified_context_by_nameB

Resolve unified context_id from a natural-language name against this project’s contexts (calls list internally). Great for onboarding and demos.

testneo_ai_assistant_queryA

Same Web AI Assistant as the product UI (/web/ai-assistant): natural-language Q&A over a project, optionally scoped to a unified context (PDF/Figma/requirements ingest). POST /api/web/v1/etl/ai-assistant/query. Pass context_id or context_name_query; omit both for project-wide analytics-style questions. Uses your Web AI chat quota. Optional recommend_context / rag_context match the web request body for AI-Q and document-aware answers.

testneo_generate_tests_from_contextB

Generate NLP test cases from an existing unified context (Figma, requirements, etc.). Resolve context via testneo_list_unified_contexts or testneo_get_unified_context_by_name (name_query, not scraped UI ids). Omit auth_preamble for public / no-login apps (default: no SauceDemo login injected, no SauceDemo route auto-align). Pass auth_preamble { enabled:true, preset:'saucedemo' } only for demos against saucedemo.com. Custom maps: TESTNEO_ROUTE_MAP_JSON or testneo_set_project_route_map; optional auto_align_saucedemo_route_map + SauceDemo preset ties route phrases to SauceDemo paths.

testneo_preview_generated_testsA

Preview generated tests in both NLP and Playwright SDK spec.ts draft format for human-in-loop approval. Applies route hardening (env + optional route_hardening) to Navigate-to lines when a phrase map is configured.

testneo_execute_generated_test_caseA

Execute a generated test case by numeric test_case_id OR by project_id + name_query (resolved via GET …/test-cases/?search= then exact/unique name match). Human-in-loop gated. POST /api/web/v1/test-cases/{id}/execute — passes use_agent when TESTNEO_MCP_DEFAULT_EXECUTION_MODE=local and TESTNEO_MCP_PREFER_LOCAL_AGENT=true (same routing as batch). Optional wait_for_agent_seconds + env TESTNEO_MCP_WAIT_FOR_AGENT_MS / TESTNEO_MCP_REQUIRE_LOCAL_AGENT_FOR_BATCH control preflight polling. Use testneo_find_test_cases to browse matches before running.

testneo_run_generated_test_pipelineC

End-to-end: execute a generated test by test_case_id OR (project_id + name_query), poll until terminal, return analytics summary + step-level execution, optional failure triage bundle, and project pass/fail trend. POST /api/web/v1/test-cases/{id}/execute sends use_agent when local+prefer-local (same as testneo_execute_generated_test_case). name_match_mode: auto|exact|substring. Optional wait_for_agent_seconds for preflight.

testneo_update_test_case_nlpB

Update NLP commands for a specific test case ID and return verification snapshot. Optionally rewrites Navigate-to lines using route hardening (same env / route_hardening as generate).

testneo_export_playwright_specB

Export a test case as Playwright SDK TypeScript spec text.

testneo_run_playwright_spec_previewC

Run a Playwright SDK spec preview by extracting ai.run commands and executing via Playwright SDK execute endpoint.

testneo_figma_to_tests_workflowC

End-to-end workflow: ingest Figma -> create unified context -> generate tests -> preview NLP + Playwright drafts.

testneo_figma_image_to_tests_workflowA

No Figma token: upload exported UI image (PNG/JPEG/GIF/WebP) like the product 'Upload Figma Image' flow → wait for vision ETL → create unified context → generate tests → preview. Guarded: TESTNEO_MCP_ALLOW_WRITE + confirm=true. Backend: POST /api/web/v1/etl/upload-figma-image (multipart field: file).

testneo_rerun_failedB

Rerun failed tests for a project using test-case execute endpoint (guarded write action).

testneo_trigger_playwright_executionB

Trigger NLP execution via Playwright SDK execute endpoint (write tool, requires confirm + allow-write).

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/gururajhm-neo/testneo-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server