Promptest MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Promptest MCPgrade this prompt: 'Fix the login bug by validating the token in auth.js line 42.'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Promptest MCP
An MCP server that grades your AI prompts against Promptest's validated 5-category rubric, tracks what actually happened when you used them, and gives you guidance grounded in the CRG-RIS study of what really predicts good outcomes — not just what looks good on paper.
Why this exists
Promptest's rubric reliably scores prompt quality. But a CRG-RIS evaluation of that rubric found something more specific and more useful: overall score didn't predict cost or scope discipline on a real coding task — but whether the prompt named the bug's root cause and exact fix location did, by a wide margin (37–41% lower cost, and the only variant that avoided a security-flagged over-broad fix).
This MCP server bakes that finding directly into its guidance, and — because it's an MCP tool that lives inside your actual coding sessions — it can track your own real outcomes over time, not just score prompts in isolation the way the web app does.
Related MCP server: Prompt Auto-Optimizer MCP
Tools
grade_prompt— scores a prompt against the 5-category rubric, returns a grade, category breakdown, and guidance. Returns ataskId.log_outcome— record what actually happened: did it work, how many turns did it take, did the fix stay in scope, did you name the root cause/location. Pass thetaskIdfromgrade_prompt.get_prompting_history— your personal history and stats, including the CRG-RIS-validated comparison: average turns when you named the root cause/location vs. when you didn't.explain_rubric— explains the rubric and the CRG-RIS findings without grading anything.
Install
1. Build
git clone https://github.com/cortexresearch/promptest-mcp.git
cd promptest-mcp
npm install
npm run build2. Add to your MCP client config
Claude Code (.claude/settings.json or via claude mcp add):
{
"mcpServers": {
"promptest": {
"command": "node",
"args": ["/absolute/path/to/promptest-mcp/dist/index.js"],
"env": {
"ANTHROPIC_API_KEY": "sk-ant-..."
}
}
}
}Claude Desktop (claude_desktop_config.json): same shape, under mcpServers.
3. Set your API key
Set exactly one of these in the env block above, matching whichever provider you want as the judge:
Env var | Provider |
| Anthropic (Claude) |
| OpenAI |
| Google (Gemini) |
| OpenRouter (any model) |
The server auto-detects which provider to use from whichever key is set. To force a specific provider or model, set PROMPTEST_PROVIDER (anthropic | openai | google | openrouter) and/or PROMPTEST_MODEL.
Your key never leaves your machine except to call the provider you chose. This server has no backend, sends nothing to Promptest or Cortex Research Group, and doesn't phone home.
Where your data lives
History is stored locally at ~/.promptest/history.json — plain JSON, nothing hidden, delete it any time to start fresh.
Background
Promptest — the web app this rubric was built for
CRG-RIS study — the research this MCP's guidance is grounded in, including the honestly-reported finding that the rubric's overall score alone didn't predict real-world cost, and what did
License
MIT
Available Tools
4 toolsexplain_rubricExplain the prompting rubricA
Explains Promptest's 5-category rubric and the CRG-RIS study findings behind this MCP's guidance, without grading anything. Useful for understanding what the scores mean before you start.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey behavioral traits. It correctly describes the tool as non-grading and explanatory, but lacks additional details like idempotency or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence with no unnecessary words, delivering essential information efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple explanatory tool with no parameters and no output schema, the description covers the purpose and usage context adequately, though it could hint at the output format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are no parameters, so the description need not explain parameter details. It adequately covers the tool's purpose, meeting the baseline for zero-parameter tools.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool explains the rubric and study findings, and explicitly notes it does not grade anything, distinguishing it from the sibling 'grade_prompt' tool.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides context for when to use ('before you start') but does not explicitly mention when not to use or offer alternatives beyond the implicit sibling distinction.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_prompting_historyGet your prompting history and statsA
Returns your personal history of graded prompts and logged outcomes, plus aggregate stats (average score, success rate, and — the key CRG-RIS finding — average turns-to-resolve when you named the root cause/fix location vs. when you didn't).
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max number of recent entries to return. Omit for all. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. It describes returned data including aggregate stats and a specific finding. Missing details like data freshness or pagination, but sufficient for a read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence front-loads purpose. Slightly long but contains essential information. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Simple tool with one optional param and no output schema. Description covers history and stats adequately. Lacks explanation of limit behavior if omitted, but schema covers it.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (limit) with 100% schema coverage. Schema already provides description. Description does not add new semantic detail beyond output context.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clear verb 'Returns' with specific resource 'personal history of graded prompts and logged outcomes, plus aggregate stats'. Distinct from sibling tools explain_rubric, grade_prompt, log_outcome.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies personal review use case. Does not explicitly state when to use vs siblings, but sibling names make differentiation clear. Lacks explicit exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
grade_promptGrade a promptA
Scores a prompt you're about to send (or just sent) to an AI coding assistant against Promptest's validated 5-category rubric (Specificity, Clarity, Scope, Verification, Constraint Calibration). Returns an overall grade, category breakdown, and CRG-RIS-backed guidance. Returns a taskId — call log_outcome with that taskId once you know how it actually went, to build a personal track record of what your prompting style actually predicts.
| Name | Required | Description | Default |
|---|---|---|---|
| promptText | Yes | The exact prompt text to grade. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Describes output (grade, breakdown, guidance, taskId) but no annotations exist. Lacks disclosure on side effects, safety, or rate limits. CRG-RIS term is unexplained.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: first defines purpose, second describes return values and follow-up. No fluff, front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite no output schema, description fully covers return values (grade, breakdown, guidance, taskId) and next steps. Adequate for simple tool with one parameter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Single parameter promptText with schema description 'The exact prompt text to grade.' Schema covers 100%, description adds 'exact' nuance but no major additional semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly defines verb 'scores', resource 'prompt', and the rubric categories (Specificity, Clarity, Scope, Verification, Constraint Calibration). Distinguishes from sibling tools: explain_rubric, get_prompting_history, log_outcome.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Indicates usage for prompts about to be sent or just sent. Provides actionable follow-up to call log_outcome. Does not explicitly state when not to use or exclude alternatives.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
log_outcomeLog a real-world outcome for a graded promptA
Records what actually happened after a prompt (previously scored via grade_prompt) was used — whether it succeeded, how many turns/messages it took to resolve, whether the fix stayed in scope, and whether the prompt named the bug's root cause and location. This is the data that lets Promptest MCP tell you what actually predicts good outcomes for YOUR prompting style, not just what the rubric guesses in the abstract.
| Name | Required | Description | Default |
|---|---|---|---|
| notes | No | Any free-text notes on what happened. | |
| taskId | Yes | The taskId returned by grade_prompt. | |
| succeeded | No | Did the AI's response/fix actually work? | |
| scopeCreep | No | Did the AI change files/behavior beyond what was asked? | |
| filesChanged | No | List of files actually modified, if known. | |
| turnsToResolve | No | How many back-and-forth turns/messages it took to reach a working result. | |
| namedRootCauseAndLocation | No | Did the ORIGINAL prompt explicitly name the root cause and where the fix belongs (not just what was wrong)? This is the single strongest predictor CRG-RIS found for lower cost and correctly-scoped fixes. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It describes the logging action and data collected but does not disclose side effects, authentication needs, or rate limits. For a logging tool, the description is adequate but not rich; it assumes the agent understands it is write-only and non-destructive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: the first enumerates key fields concisely, the second explains the strategic value. Every word contributes. No redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 7 parameters, no output schema, and no annotations, the description adequately explains the tool's role in the workflow (post-grade_prompt), what data it collects, and why it matters. It could be improved by mentioning the return value (e.g., taskId or confirmation), but it is largely complete for a logging tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% (all 7 parameters have descriptions). The tool description adds contextual value by explaining the significance of 'namedRootCauseAndLocation' as the strongest predictor, but it does not add new parameter details beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('records') and resource ('real-world outcome for a graded prompt'), listing concrete fields (succeeded, turns, scope creep, etc.). It clearly distinguishes from sibling 'grade_prompt' which scores before use, and explains the broader context of Promptest MCP analytics.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the tool should be used after a prompt has been used and previously scored via grade_prompt. It also explains the value ('lets Promptest MCP tell you what actually predicts good outcomes'). However, it does not explicitly state when NOT to use it or name alternative tools for other scenarios.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
4 tool updates
v0.1.0- First observed
explain_rubric - First observed
get_prompting_history - First observed
grade_prompt - First observed
log_outcome
TDQS
Each tool has a distinct and non-overlapping purpose: explaining the rubric, retrieving history, grading a prompt, and logging outcomes. No ambiguity.
All tool names follow a consistent verb_noun pattern with underscores (e.g., explain_rubric, grade_prompt), making them predictable.
Four tools is an appropriate and focused number for the domain of prompt assessment and tracking, covering the essential workflow without being too sparse or excessive.
The tool surface covers the complete cycle: learn the rubric, grade a prompt, log the outcome, and review personal history. No obvious gaps.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for building and testing AI agents with multi-model experimentation and insights.
An MCP server that automatically collects feedback on your MCP server.
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
MCP server for generating rough-draft project plans from natural-language prompts.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceAn MCP server that evaluates prompts using AI to provide detailed feedback on clarity, completeness, and effectiveness.5-
- AlicenseBqualityDmaintenanceAn MCP server that automatically optimizes AI prompts using evolutionary algorithms, helping improve prompt performance, creativity, and reliability through iterative testing and refinement.123MIT
- AlicenseNot gradedqualityDmaintenanceThis MCP server provides research-backed prompt optimization tools and professional domain templates designed to improve AI performance through strategies like Tree of Thoughts and Medprompt. It enables users to analyze, auto-optimize, and refine prompts using advanced reasoning patterns and safety-critical alignment techniques.24MIT
- AlicenseAqualityCmaintenanceMCP server providing on-demand access to official prompting guides for building robust meta-prompts.22MIT
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/cortexresearch/promptest-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server