Server data from the Official MCP Registry
Check an AI agent endpoint before you call it: read-only, no API key, returns a trustDecision.
About
Check an AI agent endpoint before you call it: read-only, no API key, returns a trustDecision.
Remote endpoints: streamable-http: https://getagenttrust.com/api/mcp/public streamable-http: https://getagenttrust.com/api/mcp
Security Report
AgentTrust is a well-architected trust-check service for AI agents with comprehensive authentication, proper secret handling, and strong input validation. The codebase demonstrates mature security practices including API key management, rate limiting, and careful data exposure controls. Minor code quality observations around broad exception handling and logging do not significantly impact the security posture. Supply chain analysis found 1 known vulnerability in dependencies (1 critical, 0 high severity).
3 files analyzed · 4 issues found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
How to Install & Connect
Available as Local & Remote
This plugin can run on your machine or connect to a hosted endpoint. during install.
Documentation
View on GitHubFrom the project's GitHub README.
AgentTrust — Pre-invocation Trust Check for AI Agent Endpoints
Check an AI agent or MCP server endpoint before you call it. Given the exact
endpoint URL, AgentTrust returns the reliability evidence it has already
collected, endpoint-ownership verification, and a machine-readable
trustDecision — without contacting the endpoint.
No AgentTrust account or API key required · Read-only · MCP and TypeScript SDK
AgentTrust is trust infrastructure for AI agents. It provides
reliability monitoring, endpoint verification, and pre-invocation trust
checks for MCP and A2A agents. An agent registers an identity, gets
health-checked once a day, optionally proves ownership of its
endpoint, and accumulates a deterministic reliability score from that
observed history. Any external AI agent or system can look up another
agent by its invocation URL and get back a machine-readable
trustDecision — a signal derived from AgentTrust's own observed and
verified data, for the caller to weigh, never a certification or
guarantee of safety — before deciding whether to interact with it.
Official MCP Registry identity: io.github.agenttrust-ai/agenttrust.
Quick start — no account needed
Every example below checks AgentTrust's own monitored test agent,
https://agenttrust-umber.vercel.app/api/test-agent; swap in the URL you're
about to call.
MCP
Add the public connector https://getagenttrust.com/api/mcp/public
(Streamable HTTP, no authentication; two read-only tools, check_agent_trust
and assess_agent).
In Claude Code:
claude mcp add --transport http agenttrust https://getagenttrust.com/api/mcp/public
Claude Desktop, Cursor and a plain curl call:
Connect an MCP client.
TypeScript SDK
npm install @getagenttrust/sdk
import { checkAgentTrust } from "@getagenttrust/sdk";
// AgentTrust's own test agent: a real, monitored endpoint you can check.
const result = await checkAgentTrust("https://agenttrust-umber.vercel.app/api/test-agent");
if (result.matched) {
console.log(result.status, result.reliabilityScore, result.trustDecision);
// e.g. "healthy" 100 { recommended: true, confidence: "high", reasons: [] }
} else {
// AgentTrust has no data for this endpoint (yet). An unmatched result never
// carries a score; result.observation may say it was queued for a lookup.
console.log("Unknown endpoint", result.observation?.status);
}
Policies (assertTrusted), errors and options: SDK README
· npm. New to AgentTrust?
Start with First 5 minutes.
In the browser
Check the test agent on getagenttrust.com.
First 5 minutes
No account or API key. Node.js 18 or later.
1. Install. assessAgent needs SDK 0.2.0 or later.
npm install @getagenttrust/sdk@^0.2.0
2. Check an endpoint. This checks AgentTrust's own monitored test agent, so it returns a real result. The check is read-only, and AgentTrust never contacts the endpoint you ask about.
import { assessAgent } from "@getagenttrust/sdk";
// AgentTrust's own monitored test agent. Swap in the URL your agent is about to call.
const assessment = await assessAgent("https://agenttrust-umber.vercel.app/api/test-agent");
console.log(assessment.decision, assessment.confidence, assessment.reasonCodes);
// e.g. allow_with_caution high ["OWNERSHIP_VERIFIED", "REACHABLE_AT_LAST_CHECK", …]
if (assessment.decision === "allow_with_caution") {
// Reachable and not failing in AgentTrust's observations. Not proof that the
// agent behaves safely: keep your own safeguards when you call it.
} else {
// "avoid", or "insufficient_evidence" — also the answer for a URL AgentTrust
// doesn't monitor (matched: false, reasonCodes includes "UNKNOWN_ENDPOINT").
console.log("Not calling it:", assessment.limitations);
}
3. Read the answer. confidence, reasonCodes and limitations say why.
decision | What it means | What to do |
|---|---|---|
allow_with_caution | AgentTrust's observations show the endpoint reachable and not failing: a current historical reliability score, or at least two successful observations at least 10 minutes apart. | Call it, with your own safeguards. It isn't proof that the agent behaves safely. |
avoid | AgentTrust's observations show it failing — for example two or more consecutive failures, or a current reliability score below 50. | Don't call it. |
insufficient_evidence | Not enough evidence either way: an endpoint AgentTrust doesn't monitor, too few or too old observations, or a single failure that may be temporary. | Don't treat it as approval — handle it as an unknown endpoint. |
Which call should I use?
| Call | Use it when | You get |
|---|---|---|
assessAgent(url) | Your agent needs one decision to act on before it calls an endpoint. | decision, confidence, reasonCodes and limitations, with the evidence behind them. |
checkAgentTrust(url) | You want the evidence itself — status, reliabilityScore, verified and trustDecision — to apply your own rules. | { matched: true, … }, or { matched: false } for an endpoint AgentTrust doesn't monitor. |
assertTrusted(url, policy) | You want a gate: go ahead only if the endpoint meets your policy. | The checkAgentTrust result, or a thrown NotTrustedError. |
All three are anonymous and read-only, and never contact the endpoint (over MCP: assess_agent and check_agent_trust). They report what AgentTrust has observed; they don't certify an endpoint's security.
Unknown endpoints are an answer, not an error
AgentTrust only has evidence for endpoints it monitors, so your first check of a real URL may come back unknown. That is an answer, not an API failure — the call succeeds:
assessAgentreturnsmatched: false,decision: "insufficient_evidence",confidence: "none", andreasonCodesincluding"UNKNOWN_ENDPOINT".checkAgentTrustreturns{ matched: false }, sometimes with anobservationstatus when AgentTrust has queued the URL for a lookup in the official MCP Registry.assertTrustedthrowsNotTrustedError("AgentTrust has no data for this endpoint") unless you passallowUnknown: true.
Real failures — RATE_LIMITED, TIMEOUT, NETWORK_ERROR and the rest — throw an AgentTrustError instead.
Handle an unknown endpoint as not trusted: don't map insufficient_evidence to "allow", keep allowUnknown: false (the default) unless you have chosen otherwise on purpose, and ask a human or run your own checks before calling an endpoint nobody has observed.
Next steps
- Gate a real connection:
examples/check-before-connect.tsputsassertTrustedin front of an MCP client connection. - Tune the gate:
minConfidence,requireVerifiedandminReliabilityScorein theassertTrustedpolicy — see the SDK README. - Running an agent yourself? Register it so other agents can check it — that needs an account and an API key: Getting started.
Public checks vs. agent management
| Public trust checks | Agent management | |
|---|---|---|
| For | Checking any endpoint before you call it | Registering and monitoring your own agents; full agent records |
| Account / API key | Not needed | Account and API key (Authorization: Bearer <API_KEY>) |
| Interfaces | MCP check_agent_trust and assess_agent at /api/mcp/public; @getagenttrust/sdk (checkAgentTrust, assertTrusted, assessAgent) | REST /api/v1/*; MCP server /api/mcp (list_agents, get_agent, get_agent_health, send_heartbeat) |
To register an agent: sign up, create a key under Dashboard → API keys, then follow Getting started (REST).
Documentation
You don't need this repository to use AgentTrust:
- /docs — full REST, MCP and SDK reference.
- /llms.txt — the same reference as one plain-text file, for an LLM's context.
Developing this project
This is a Next.js (App Router) + Drizzle + Supabase app, deployed on Vercel.
npm install
npm run dev
Open http://localhost:3000. You'll need a
.env.local — see .env.example for the required variables (Supabase
credentials, database connection strings, and the server-only secrets
described inline).
Useful scripts:
npm run test # vitest — full suite runs against an embedded pglite DB, no live database needed
npm run typecheck # tsc --noEmit
npm run lint # eslint
npm run db:generate # generate a new Drizzle migration from schema changes (offline)
npm run db:migrate # apply pending migrations to the database in DIRECT_URL
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Rea
Freeby Morluto · Developer Tools
Reverse engineer anything from your terminal or agent with one CLI and MCP server.
Paperclip
Freeby Paperclipai · Developer Tools
Trending hip-hop artist momentum scores across four cultural dimensions.
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
