Skip to main content
Glama
OnChainAIIntel

PQS - Prompt Quality Score

Official

GitHub Marketplace pqs-mcp-server MCP server

PQS MCP Server

Score prompt quality before it reaches any AI model. An MCP server for PQS.

Score and optimize LLM prompts before they hit any model. Built on PEEM, RAGAS, MT-Bench, G-Eval, and ROUGE.

Install

Claude Desktop (stdio)

Add to your config (~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "pqs": {
      "command": "npx",
      "args": ["-y", "pqs-mcp-server"]
    }
  }
}

Remote (HTTP)

Use this when your MCP client supports streamable-HTTP transport (no local npm install required):

{
  "mcpServers": {
    "pqs": {
      "url": "https://promptqualityscore.com/api/mcp"
    }
  }
}

Smithery

smithery mcp add onchaintel/pqs

Related MCP server: aipaygen-mcp

Tools

score_prompt (Free, no API key required)

Returns a 0-80 score, A-F grade, full 8-dimension breakdown (clarity, specificity, context, constraints, output_format, role_definition, examples, cot_structure), and the weakest dimension. Rate-limited per IP: 5/min, 10/day, 100/month.

Low- and mid-band scores also include a structured suggestion field with a message, a next_tool pointer to optimize_prompt, and a subscribe URL the consuming LLM can paraphrase back to the user.

Example output (low-band score, suggestion attached):

{
  "pqs_version": "2.0",
  "prompt": "analyze this wallet",
  "score": 9,
  "out_of": 80,
  "grade": "F",
  "dimensions": {
    "clarity": 2,
    "specificity": 1,
    "context": 1,
    "constraints": 1,
    "output_format": 1,
    "role_definition": 1,
    "examples": 1,
    "cot_structure": 1
  },
  "weakest_dimension": "specificity",
  "powered_by": "PQS — promptqualityscore.com",
  "suggestion": {
    "message": "This prompt scored 9/80 (F) — significant room to improve. The optimize_prompt tool rewrites it and shows side-by-side outputs from a frontier model, so you can see the impact. optimize_prompt is part of PQS Pro ($19.99/mo, 1,000 calls/mo). Subscribe at https://promptqualityscore.com/pricing?utm_source=mcp&utm_medium=suggestion_v140&utm_campaign=2026-05-mcp-tools-v140.",
    "next_tool": "optimize_prompt",
    "subscribe_url": "https://promptqualityscore.com/pricing?utm_source=mcp&utm_medium=suggestion_v140&utm_campaign=2026-05-mcp-tools-v140"
  }
}

If the per-IP rate limit is hit, the response is a structured rate_limit_exceeded payload with subscribe and account URLs.

optimize_prompt (Pro subscription required)

Rewrites a prompt to score higher and runs both versions through a frontier model so the user can see the before/after output. Returns the optimized prompt, before/after dimension scores (with totals), improvement_pct, and side-by-side sample outputs.

Pro subscription required ($19.99/mo, 1,000 calls/mo, includes batch + A/B comparison). Subscribe at promptqualityscore.com/pricing.

If the API key is missing, invalid, or on the Free tier, the tool returns a structured error pointing the user at the right URL. No silent failures, no inventing keys. Errors emitted:

  • api_key_required: no api_key argument was sent

  • api_key_invalid: key not recognized

  • subscription_required: key is valid but Free tier (subscribe to upgrade)

  • rate_limited: per-minute burst limit reached (Pro is rate-limited per minute, not per month) or temporary upstream capacity issue

  • service_unavailable: upstream 5xx

Quality Gate Pattern

Use PQS as a pre-inference quality gate:

const score = await fetch("https://promptqualityscore.com/api/score/free", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({ prompt: userPrompt })
});
const { score: pqsScore } = await score.json();
if (pqsScore < 56) throw new Error("Prompt quality too low. Improve and retry.");

Grade D or below (under 56/80) means the prompt will waste inference spend.

x402 (legacy pay-per-call)

The MCP tools in this package use the SaaS API-key model. A separate x402-native pay-per-call path is available via the canonical PQS HTTP API (no API key, caller settles USDC on Base on-chain). For x402 integration, see the canonical pricing and discovery artifacts at promptqualityscore.com.

Self-hosting

Override the PQS backend URL with the PQS_BASE environment variable:

PQS_BASE=https://your-pqs-host.example.com npx pqs-mcp-server

Defaults to https://promptqualityscore.com.

Built by

OnChainIntel, @OnChainAIIntel promptqualityscore.com

Available Tools

2 tools
optimize_promptAInspect

Rewrite a prompt to score higher on the PQS rubric, AND show before/after output comparisons so the user can see the impact. Returns the optimized prompt, the original PQS score, the optimized PQS score, and side-by-side sample outputs from a frontier model using both versions.

USE WHEN:

  • The user got a low score from score_prompt and asks how to improve.

  • The user explicitly asks to "improve" / "rewrite" / "fix" / "optimize" a prompt they pasted.

  • The user is dissatisfied with output quality from a previous prompt and asks how to get better results.

  • score_prompt returned a suggestion to invoke this tool.

DO NOT USE WHEN:

  • The user just asked for a score (use score_prompt only — don't double up).

  • The user wants you to write a new prompt from scratch (write it directly).

REQUIRES: A PQS API key from a Pro subscription ($19.99/month, 1,000 calls/mo, includes batch + A/B comparison). If the user has not provided one, the tool returns a clear subscription URL — pass that response to the user verbatim. Do not invent or guess API keys. There is no free trial of this tool; the user must subscribe before the first call.

COST: Counted against your Pro subscription's monthly call quota.

LATENCY: ~6-8 seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesThe prompt to optimize. Max 8000 characters.
api_keyNoPQS API key from a Pro subscription. Required. Format: pqs_live_… (32+ characters). Subscribe at https://promptqualityscore.com/pricing?utm_source=mcp&utm_medium=schema_description_v140&utm_campaign=2026-05-mcp-tools-v140 if you don't have one, or look up an existing key at https://promptqualityscore.com/account?utm_source=mcp&utm_medium=schema_description_v140&utm_campaign=2026-05-mcp-tools-v140.

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full transparency burden. It thoroughly discloses the API key requirement, no-free-trial policy, cost, latency, return values, and exact handling of a missing key. This fully characterizes the behavior of a remote, subscription-gated tool.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is long but scannable, using clear headers and bullet points. Every section (purpose, returns, use-when, do-not-use, requires, cost, latency) earns its place without unnecessary filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given it has no annotations or output schema, the description provides a complete picture: what the tool does, when to use it, what it returns, what prerequisites exist, and operational constraints. No significant gap remains for a 2-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3. The description adds meaningful context beyond the schema by explaining the API key's subscription requirement, warning against guessing keys, and framing the prompt parameter as a previously pasted prompt for improvement. Minor redundancy but valuable operational detail.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific transformation ('rewrite a prompt to score higher on the PQS rubric') and adds a distinctive side-by-side comparison behavior. Clearly distinguishes from the sibling score_prompt by focusing on optimization rather than just scoring.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides explicit USE WHEN and DO NOT USE WHEN sections with concrete triggers, including a direct reference to score_prompt for score-only requests. This gives the agent unambiguous guidance on tool selection and alternative usage.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

score_promptAInspect

Score a prompt's quality across 8 dimensions BEFORE sending it to an expensive model. Returns a 0-80 score, an A-F grade, the per-dimension breakdown (clarity, specificity, context, constraints, output_format, role_definition, examples, cot_structure), and the weakest dimension.

USE WHEN:

  • The user is workshopping a prompt and asks "is this good?" / "will this work?" / "should I add more detail?"

  • The user is about to send a long or expensive prompt to GPT-4, Claude Opus, or any frontier model, especially in a batch or automation context where rework is costly.

  • The user mentions iterating on a prompt that produced poor output and wants to diagnose what's missing.

  • The user pastes a prompt and asks for feedback on it.

DO NOT USE WHEN:

  • The user is asking you to write a prompt for them (write it yourself first, then optionally call score_prompt to verify).

  • The prompt is conversational chat (this scores task-shaped prompts).

COST: Free, no API key required. Rate-limited per IP: 5/min, 10/day, 100/month. If the user exceeds the limit, the response will include a structured upgrade path with subscribe and account URLs.

LATENCY: ~2 seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
promptYesThe prompt text to score. Single prompt, not a conversation. Max 8000 characters.

TDQS

A4.7/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description fully discloses behavioral traits: it notes the tool is free, rate-limited (5/min, 10/day, 100/month), and takes ~2 seconds latency. It also explains the structured upgrade path response on rate-limit exceedance, providing critical operational context an agent needs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-organized with clear sections (USE WHEN, DO NOT USE WHEN, COST, LATENCY) and front-loaded with the primary purpose. Every sentence adds value, and the structure makes key information easy to parse for an agent.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite having only one parameter and no output schema, the description explains the return value (0-80 score, A-F grade, per-dimension breakdown, weakest dimension), operation cost, and usage boundaries. This is sufficient for an agent to correctly invoke the tool and interpret results.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema already covers the single parameter 'prompt' with a clear description (single prompt, max 8000 chars). The tool description adds context about task-shaped prompts in the DO NOT USE section, but does not significantly elaborate beyond the schema. Given 100% schema coverage, a baseline of 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool's function: scoring a prompt's quality across 8 dimensions before sending to an expensive model. It specifies the verb 'score' and the resource 'prompt', and lists the exact output dimensions (clarity, specificity, etc.), distinguishing it from the sibling 'optimize_prompt' which would alter the prompt rather than just evaluate it.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit USE WHEN and DO NOT USE WHEN sections, listing concrete scenarios such as workshopping a prompt, pre-sending long prompts, or diagnosing poor output. It also clarifies when not to use it (e.g., when the user asks to write a prompt), implicitly guiding the agent to alternative actions like writing first.

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.

  1. 3 tool updatesv1.4.0
    • Removedcompare_models
    • Changedoptimize_prompt5 fields changed
      • changedInput schema / properties / api_key / description
        Previous value: -"PQS API key for authentication. Get one at pqs.onchainintel.net"New value: +"PQS API key from a Pro subscription. Required. Format: pqs_live_… (32+ characters). Subscribe at https://promptqualityscore.com/pricing?utm_source=mcp&utm_medium=schema_description_v140&utm_campaign=2026-05-mcp-tools-v140 if you don't have one, or look up an existing key at https://promptqualityscore.com/account?utm_source=mcp&utm_medium=schema_description_v140&utm_campaign=2026-05-mcp-tools-v140."
      • changedInput schema / properties / prompt / description
        Previous value: -"The prompt to optimize"New value: +"The prompt to optimize. Max 8000 characters."
      • addedInput schema / properties / prompt / maxLength
        Added value: +8000
      • removedInput schema / properties / vertical
        Removed value: -{
        -  "description": "The domain context for optimization. Defaults to general.",
        -  "enum": [
        -    "software",
        -    "content",
        -    "business",
        -    "education",
        -    "science",
        -    "crypto",
        -    "general"
        -  ],
        -  "type": "string"
        -}
      • changedInput schema / required
        Previous value: -[
        -  "prompt",
        -  "api_key"
        -]New value: +[
        +  "prompt"
        +]
    • Changedscore_prompt3 fields changed
      • changedInput schema / properties / prompt / description
        Previous value: -"The prompt to score"New value: +"The prompt text to score. Single prompt, not a conversation. Max 8000 characters."
      • addedInput schema / properties / prompt / maxLength
        Added value: +8000
      • removedInput schema / properties / vertical
        Removed value: -{
        -  "description": "The domain context for scoring. Defaults to general.",
        -  "enum": [
        -    "software",
        -    "content",
        -    "business",
        -    "education",
        -    "science",
        -    "crypto",
        -    "general"
        -  ],
        -  "type": "string"
        -}
  2. 3 tool updatesv1.0.1
    • First observedcompare_models
    • First observedoptimize_prompt
    • First observedscore_prompt

TDQS

A4.8/5.0

Scored across 2 tools

Disambiguation5/5

The two tools have clearly distinct purposes: one scores a prompt, the other optimizes it. Their use cases and prerequisites are well-defined, so an agent cannot confuse them.

Naming Consistency5/5

Both tool names follow a consistent verb_noun pattern: 'score_prompt' and 'optimize_prompt'. The naming is uniform and predictable.

Tool Count4/5

With only two tools, the set is narrowly scoped to prompt scoring and optimization. While this is appropriate for the domain, slightly more tools (e.g., subscription management or rubric access) could enhance completeness without bloat.

Completeness4/5

The server covers the core workflow of scoring and optimizing prompts. However, it lacks tools for subscription management, retrieving the rubric, or performing batch operations, which are minor gaps given the stated dependencies and cost structure.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Dynamic MCP server — 30+ tools across fact verification, agent memory, Indian NLP, contract risk, security threat modelling, sales call intelligence and more. x402/USDC micropayments on Base.
    33
    7 npm
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    250+ AI-powered MCP tools: research, write, code, translate, scrape, sentiment, vision, RAG, agent memory, marketplace, trading signals, and more. 15 models across 7 providers. Pay-per-use via API key or x402 USDC micropayments.
    114 PyPI
    2
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Remote MCP server for prediction markets — search and compare live odds across Polymarket, Kalshi, and Limitless from Claude, ChatGPT, or Gemini. Six read-only tools, free tier available.
    6
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    An MCP server for deterministic prompt optimization in Claude Code. Score prompts across 7 quality dimensions, auto-select from 11 Anthropic techniques, and return a structural scaffold.
    1
    15 npm
    2
    MIT