check_qualityLABSCO SUMMARY
It scores servers, and the safety axis is the one to read.
Accuracy carries the most weight, but the part you cannot get from reading a README is how a server behaves under the five adversarial probes — whether a prompt injection in a tool response gets through, whether it leaks PII, whether it will recite its own system prompt. The judge is an LLM, so treat the number as a screen rather than a proof; the signed credential is what makes the screen portable to someone who did not run it. Consensus judging across two or three models is what keeps a single judge's bad day from becoming the score.
What it is
A quality gate for agents and MCP servers. It connects to a target server, runs a three-level pipeline against it — manifest schema, then real tool calls, then calibrated domain questions — scores the result on six weighted axes, and issues a W3C Verifiable Credential as proof. The gap it aims at is that the ecosystem has identity, after-the-fact reputation and payments, but no way to check competence before you pay.
What you get
- A full evaluation of a server at a URL: manifest checks, functional tool calls and judge scoring —
check_quality - A fast answer when you need one in-line: a cached score, or a manifest-only pass —
check_quality_fast - An earlier score looked up again with freshness decay applied, so a stale result reads as stale —
get_score - A signed attestation verified and decoded, which is how the other side checks a claim you hand them —
verify_attestation - Scoring on six axes with published weights: accuracy 35%, safety 20%, reliability 15%, process quality 10%, latency 10%, schema quality 10%
- Five adversarial probe types in the safety pass — prompt injection, PII leakage, hallucination, overflow and system-prompt extraction
Requirements
Docker with Compose, and at least one LLM API key for the judge in .env — GROQ_API_KEY or CEREBRAS_API_KEY both have free tiers, and a fallback chain runs across seven providers. docker compose up -d starts the API on port 8002 and the MCP server on 8003; connect over SSE at http://localhost:8003/sse, or pip install mcp-agenttrust (0.1.2) for a stdio proxy that forwards to that running API. Note the shell-environment trap the README calls out: an exported GROQ_API_KEY overrides the rotation pool in your .env.
Setup effort
Run a container — build the image from the repository, then point your client at it
USE CASES
Vetting a server before you connect an agent to it
Run the full evaluation against its URL and read the axis breakdown rather than the headline number.
Screening in the middle of a workflow
Use the fast path for a cached score or a manifest-only check, when a full evaluation would cost more than the decision is worth.
Checking a quality claim someone showed you
Verify the signed attestation and decode its payload, instead of trusting a badge in a README.
Finding out whether a server survives adversarial input
Run the evaluation for the safety axis specifically — prompt injection, PII leakage and system-prompt extraction are probed rather than assumed.
4 tools
Listed in project code.
check_quality_fastget_scoreverify_attestationBEFORE YOU INSTALL
What to know first
Tools you get
4 tools registered in the project's code.
Requires
- Docker with Docker Compose
- At least one LLM API key (GROQ_API_KEY, CEREBRAS_API_KEY, etc.) in .env
INSTALLATION
Connect your client
Server setup
git clone https://github.com/assister-xyz/quality-oracle.git
cd quality-oracle
cp .env.example .envAdd at least one LLM key to .env (GROQ_API_KEY, CEREBRAS_API_KEY, etc.)
docker compose up -dThe API then answers at http://localhost:8002 and the MCP server at http://localhost:8003
MCP Clients
Claude Desktop, Cursor, Windsurf
pip install mcp-agenttrust{
"mcpServers": {
"agenttrust": {
"command": "mcp-agenttrust",
"env": {
"AGENTTRUST_API_URL": "http://localhost:8002",
"AGENTTRUST_API_KEY": "<YOUR_AGENTTRUST_API_KEY>"
}
}
}
}This is the stdio proxy from PyPI: it forwards to the AgentTrust API started in the steps above, so leave that running. Its tools are check_quality, get_score, verify_attestation and list_scores. The code treats AGENTTRUST_API_KEY as optional (it defaults to empty).
Any MCP client — SSE
http://localhost:8003/sse