Context7
Up-to-date docs for AI agents
Descripción del creador (original en inglés)
Evaluate RAG retrieval, agent tool calls and prompt regressions with deterministic metrics.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
EVALSMITH_JUDGE_BASE_URL, EVALSMITH_JUDGE_MODEL, EVALSMITH_JUDGE_API_KEY, LOG_LEVELLos valores marcados como secretos son llaves de tu cuenta. Nunca los compartas ni los pegues en un chat.
Necesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"evalsmith": {
"command": "npx",
"args": [
"-y",
"evalsmith-mcp"
],
"env": {
"EVALSMITH_JUDGE_BASE_URL": "your-value",
"EVALSMITH_JUDGE_MODEL": "your-value",
"EVALSMITH_JUDGE_API_KEY": "your-value",
"LOG_LEVEL": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add evalsmith --env EVALSMITH_JUDGE_BASE_URL=your-value --env EVALSMITH_JUDGE_MODEL=your-value --env EVALSMITH_JUDGE_API_KEY=your-value --env LOG_LEVEL=your-value -- npx -y evalsmith-mcpCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"evalsmith": {
"command": "npx",
"args": [
"-y",
"evalsmith-mcp"
],
"env": {
"EVALSMITH_JUDGE_BASE_URL": "your-value",
"EVALSMITH_JUDGE_MODEL": "your-value",
"EVALSMITH_JUDGE_API_KEY": "your-value",
"LOG_LEVEL": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"evalsmith": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"evalsmith-mcp"
],
"env": {
"EVALSMITH_JUDGE_BASE_URL": "your-value",
"EVALSMITH_JUDGE_MODEL": "your-value",
"EVALSMITH_JUDGE_API_KEY": "your-value",
"LOG_LEVEL": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
EVALSMITH_JUDGE_BASE_URL envEVALSMITH_JUDGE_MODEL envLOG_LEVEL envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 8 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub diegoperezg7, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
Debes completar: EVALSMITH_JUDGE_API_KEY
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.1.0) llegó al registro hace 11 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
En la misma categoría: Context7, Codebase Memory, Exa
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
Up-to-date docs for AI agents
Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.
Connect AI agents to Exa for web search, content fetching, and multi-step research.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Evaluate RAG retrieval and AI agents with deterministic metrics, from any MCP client or from CI.
evalsmith answers four questions that come up every time a retriever, prompt or agent changes:
Everything is deterministic and runs offline. An LLM judge exists for a second opinion, but it is off by default and never decides the verdict. Results come out as a terminal table, Markdown, JSON, JUnit XML or a self-contained HTML report, and the GitHub Action turns them into a merge gate.
flowchart LR
subgraph Clients A[MCP client desktop app, IDE, agent] B[Remote MCP client or service] C[Terminal / CI job] D[GitHub workflow] end subgraph evalsmith S1[MCP server stdio] S2[MCP server Streamable HTTP, stateless] S3[CLI evalsmith run] S4[GitHub Action uses: evalsmith-mcp@v0] CORE[(src/core metrics, bootstrap, matchers, checks, gates, reports)] end A --> S1 --> CORE B --> S2 --> CORE C --> S3 --> CORE D --> S4 --> CORE S3 -. exit code + JUnit + HTML .-> C S4 -. outputs + job summary .-> D
| Interface | Entry point | Who uses it | Why it exists |
|---|---|---|---|
| MCP over stdio | dist/mcp/server.js | Desktop MCP clients, IDE assistants, local agents | An assistant can score a run, compare configs or audit a trace mid-conversation, with typed structuredContent back. |
| MCP over Streamable HTTP | EVALSMITH_TRANSPORT=http | Remote clients, internal platforms, the MCP Inspector | Same tools over the network. Stateless: no sessions to store, scales horizontally. |
| CLI / CI | evalsmith run evalsmith.yaml | Pipelines and terminals | --fail-under recall@5=0.8 turns a metric into a merge gate. Exit codes, Markdown summary, JUnit XML, HTML report. |
| GitHub Action | uses: diegoperezg7/evalsmith-mcp@v0 | GitHub workflows | The same gates as a step, with outputs, a job summary and no install. |
All four call the same functions in src/core. The MCP tools are thin adapters: parse input with Zod, call the core, return structuredContent validated against an output schema.
flowchart TB
subgraph Tools T1[evaluate_retrieval] T2[compare_configs] T3[check_tool_calls] T4[detect_prompt_regression] T5[generate_report] T6[run_suite] end subgraph Resources R1["evalsmith://examples/{name} 12 synthetic datasets + suite"] end subgraph Prompts P1[compare_rag_configs] P2[audit_agent_trace] P3[review_prompt_change] end T1 -- structuredContent --> T5 T2 -- structuredContent --> T5 T3 -- structuredContent --> T5 T4 -- structuredContent --> T5 classDef tool fill:#ffedd5,stroke:#c2410c,color:#431407 classDef res fill:#e0f2fe,stroke:#0369a1,color:#082f49 classDef prom fill:#ede9fe,stroke:#6d28d9,color:#2e1065 class T1,T2,T3,T4,T5,T6 tool class R1 res class P1,P2,P3 prom
Every tool declares an input and an output Zod schema, returns structuredContent plus a JSON text block, and is annotated readOnly and non-destructive. Four tools are also idempotent and closed-world. detect_prompt_regression and run_suite are declared open-world and non-idempotent: annotations are per tool, and with the judge enabled they call an external model whose answers can vary. With the judge off (the default) they behave like the others.
| Tool | Input | Output | ||
|---|---|---|---|---|
evaluate_retrieval | qrels, run, optional k list | Mean recall/precision/nDCG/hit rate at every k, MRR, per-query values, skipped and missing queries | ||
compare_configs | qrels, 2-3 {name, run}, primary metric, bootstrap {samples, seed, confidence} | Ranking with intervals, winner, runner-up, paired interval of the gap, significant | ||
check_tool_calls | trace as logged (evalsmith, Anthropic Messages, OpenAI Chat or Responses), expected, `order: strict \ | lax` | passed, score, matched position and reasons per expected call, unexpected calls | |
detect_prompt_regression | golden, baseline, candidate, optional judge {enabled} | Verdict, pass rates, regressions, improvements, per-case failures, judge votes when enabled | ||
generate_report | Any of the results above, gates, `format: markdown \ | json \ | junit` | passed, rendered report |
run_suite | Optional config path to an evalsmith.yaml, gates, judge, format | passed, rendered report and every section's results, read from the suite's files |
run_suite runs the same suites as evalsmith run, so a client can evaluate data that lives in files instead of pasting it into the conversation. It only reads inside the workspace root (EVALSMITH_ROOT, the directory the server started in by default), following symlinks before it checks, and runs the bundled example suite when no config is given.
Bad input (unknown metric, duplicate config names, qrels with no relevant documents) comes back as an InvalidParams tool error with a message the model can act on. A judge endpoint that is down or returns an HTTP error is an InternalError.
evalsmith://examples/{name} lists and serves the synthetic datasets in examples/datasets, so a client can try every tool before wiring in its own data:
| Name | Content |
|---|---|
rag-corpus, rag-queries, rag-qrels | 20 help-center articles of a fictional invoicing app, 12 questions, graded judgements |
rag-run-bm25, rag-run-hybrid, rag-run-hybrid-rerank | Top-10 rankings from three retrieval configurations |
agent-trace, agent-expected | A support agent refunding a duplicate charge, and the calls it should make |
prompts-golden, prompts-baseline, prompts-candidate, prompts-candidate-regressed | Six golden cases and three sets of outputs |
suite | The example evalsmith.yaml |
| Prompt | Argument | What it asks the model to do |
|---|---|---|
compare_rag_configs | metric | Compare the configurations, report the gap with its interval and the weakest queries |
audit_agent_trace | order | Check the trace and propose the smallest fix for each failed step |
review_prompt_change | candidate | Detect regressions, build a Markdown report, decide ship / do not ship |
sequenceDiagram
autonumber actor User participant Host as MCP client (LLM host) participant ES as evalsmith (stdio) participant Core as src/core
User->>Host: "Is the reranker worth it on our help-center set?" Host->>ES: initialize, tools/list, resources/list ES-->>Host: 6 tools + JSON Schemas, 13 resources Host->>ES: resources/read evalsmith://examples/rag-qrels (+ 3 runs) ES-->>Host: qrels and runs as JSON Host->>ES: tools/call compare_configs {metric: "ndcg@5", configs: [...]} ES->>Core: compareConfigs(qrels, configs, "ndcg@5", {seed: 42}) Core-->>ES: ranking, intervals, paired delta ES-->>Host: structuredContent {winner: "hybrid+rerank", significant: true, ...} Host->>ES: tools/call generate_report {format: "markdown", comparison} ES-->>Host: Markdown report Host-->>User: "Yes: +0.153 nDCG@5 over hybrid, 95% CI [0.069, 0.251]."
For a query $q$ with relevant set $R_q$ (documents with grade $> 0$) an
Solo se muestra el principio; lee el resto en el repo