Eval_MCP
Eval_MCP
Eval_MCP is a high-performance, single-binary Model Context Protocol (MCP) server for prompt evaluation and RAG pipeline scoring, built natively in Go.
Key Features
Single Standalone Binary: Compiles to a single executable (
eval-mcp) with zero runtime dependencies.16 Native MCP Tools: Full suite for dataset registration, prompt evaluations, RAG scoring, version comparisons, regression detection, and prompt-fix suggestions.
Redis & In-Memory Queue: Fast background job processing for concurrent evaluations.
Modern Dark-Mode Dashboard: Embedded web UI (
./eval-mcp dashboard) with glassmorphism aesthetics, Inter/Outfit typography, live stats, and run history.Pure Go Heuristic Metrics: Built-in scoring for Exact Match, Levenshtein Answer Correctness, Token-Overlap Hallucination & Faithfulness, Lexical Toxicity, and Context Precision/Recall.
Zero Auth Overhead: Clean local execution without user accounts, passwords, or API keys.
Installation Guide
Prerequisites
Go 1.22+ installed on your machine.
Step 1: Clone & Build
# 1. Clone the repository
git clone https://github.com/AyushSaha184/Eval_MCP.git
cd Eval_MCP
# 2. Build the binary
go build -o eval-mcp ./cmd/eval-mcp
# 3. Create your .env file
cp .env.example .env(Add your GEMINI_API_KEY, OPENAI_API_KEY, or ANTHROPIC_API_KEY to .env if using live LLM providers).
How to Run & Use Eval_MCP
You can run Eval_MCP either 100% locally or connected to a Render cloud backend.
Method 1: Local Mode (Full Local Setup)
To run the complete evaluation stack on your local machine:
Seed Demo Data (Optional):
./eval-mcp seedStart the API Server (Terminal 1):
./eval-mcp api(Runs the REST API at
http://127.0.0.1:8000)Start the Evaluation Worker (Terminal 2):
./eval-mcp worker(Executes background job evaluations)
Start the Web Dashboard UI (Optional) (Terminal 3):
./eval-mcp dashboard(Open
http://localhost:8501to view real-time pass rates & stats)Connect your AI Client (Claude Desktop / Cursor / Antigravity): Add
eval-mcpto your MCP settings file (e.g.,~/.cursor/mcp.jsonorclaude_desktop_config.json):{ "mcpServers": { "eval-mcp": { "command": "/absolute/path/to/Eval_MCP/eval-mcp", "args": ["serve"], "env": { "EVAL_MCP_API_URL": "http://127.0.0.1:8000" } } } }Your AI assistant will automatically launch
./eval-mcp serveand have access to all 16 evaluation tools!
Method 2: Render Mode (Cloud Backend + Local MCP Client)
If your backend API and worker are hosted on Render:
Build the binary locally:
go build -o eval-mcp ./cmd/eval-mcpConfigure your AI Client to point to Render: In your client JSON settings (
~/.cursor/mcp.jsonorclaude_desktop_config.json), setEVAL_MCP_API_URLto your Render service URL:{ "mcpServers": { "eval-mcp": { "command": "/absolute/path/to/Eval_MCP/eval-mcp", "args": ["serve"], "env": { "EVAL_MCP_API_URL": "https://your-app-name.onrender.com" } } } }You don't need to run
./eval-mcp apior./eval-mcp workerlocally. The local./eval-mcp serveprocess proxies tool calls straight to Render!
Deploying Your Own Backend to Render
To deploy your own instance of the backend on Render:
Fork or push the repo to your GitHub account.
In the Render Dashboard, click New → Blueprint.
Connect your repository. Render automatically reads
render.yamland provisions:eval-mcp-api(Web Service running./eval-mcp api)eval-mcp-worker(Worker Service running./eval-mcp worker)eval-mcp-redis(Managed Redis queue)
Add your API keys (
GEMINI_API_KEY,OPENAI_API_KEY,ANTHROPIC_API_KEY) under Render Environment settings.
Supported MCP Tools (16 Tools)
register_golden_dataset— Register a dataset of test casesrun_eval_suite— Queue a prompt evaluation run over a datasetscore_rag_pipeline— Score RAG retrieval & generation with RAG metricscompare_prompt_versions— Compare metric deltas between baseline and candidate promptsdetect_regression— Detect metric regressions against project baselinessuggest_fix— Queue LLM-as-a-judge to analyze failure clusters and suggest prompt fixesget_latest_suggestion— Fetch latest prompt fix suggestions for a runget_eval_history— Query paginated evaluation historyget_run_status— Get status and pass rate of a runlist_projects— List all evaluation projectslist_datasets— List datasets in a projectlist_prompts— List prompt versions in a projectset_baseline_run— Set default baseline run for a projectrerun_failed_cases— Rerun failing test cases from a previous runannotate_run— Attach labels/notes to a runget_supported_metrics— List all supported evaluation metrics
CLI Command Reference
Command | Action |
| Starts the MCP stdio server (called by Cursor/Claude Desktop) |
| Starts the REST HTTP API server ( |
| Starts the background evaluation worker |
| Starts the web dashboard UI ( |
| Seeds demo projects and datasets into |
| Prints engine version ( |
Environment Variables (.env)
PORT=8000
EVAL_MCP_API_URL=http://127.0.0.1:8000
REDIS_URL=redis://localhost:6379/0
DATA_DIR=./data
# Optional LLM Provider Keys
GEMINI_API_KEY=
OPENAI_API_KEY=
ANTHROPIC_API_KEY=Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/AyushSaha184/Eval_MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server