MCP Verify
Trust, freshness, policy, and discovery layer for public MCP servers.
¿Debería usar esto?
Calidad y seguridad
Hallazgos (1)
- LOWen recommend_servers
Basado en el análisis automatizado de las definiciones de herramientas y el cumplimiento del protocolo.
Costo de contexto
Este es el número aproximado de tokens que se consumen cada vez que las herramientas del servidor se cargan en el contexto de un modelo. Los recuentos más altos reducen la atención disponible para otras tareas.
Instalar
Instalación con un clic
Agrega esto a tu archivo `claude_desktop_config.json`:
{
"mcpServers": {
"verify": {
"url": "https://verify.sentinelsignal.io/mcp"
}
}
}Puntos de conexión remotos
https://verify.sentinelsignal.io/mcpstreamable-httpQué puede hacer
Inventario de herramientas
Herramientas (22)
🟢search(query, limit)
ChatGPT-compatible read-only search alias. Returns MCP server results with id, title, and url.
Esquema de entrada
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Search query such as healthcare MCP, web search MCP, ChatGPT-compatible MCPs, or OAuth MCP servers."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "Maximum number of search results to return."
}
},
"required": [
"query"
]
}🟢fetch(id)
ChatGPT-compatible read-only fetch alias. Returns a full MCP server item with id, title, text, url, and metadata.
Esquema de entrada
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Canonical MCP server identifier in namespace/name format."
}
},
"required": [
"id"
]
}🟢search_servers(capabilities, auth_preference, client_target, risk_tolerance, query, ...)
Search and rank MCP servers by capability, auth preference, client target, and risk tolerance.
Esquema de entrada
{
"type": "object",
"properties": {
"capabilities": {
"type": "array",
"items": {
"type": "string"
},
"description": "Normalized capability taxonomy terms such as healthcare, search, read, exec, files, oauth, or prompts."
},
"auth_preference": {
"type": "string",
"enum": [
"any",
"oauth",
"unauthenticated"
],
"description": "Preferred auth mode. Use unauthenticated when the agent must avoid login flows."
},
"client_target": {
"type": "string",
"enum": [
"openai_connectors",
"claude_desktop",
"smithery",
"generic_http",
"healthcare"
],
"description": "Optional target client or integration surface."
},
"risk_tolerance": {
"type": "string",
"enum": [
"any",
"low",
"medium",
"high"
],
"description": "How much tool-surface risk is acceptable."
},
"query": {
"type": "string",
"description": "Optional free-text query to bias ranking toward a specific use case or domain."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "Maximum number of ranked candidates to return."
}
}
}🟢recommend_servers(task, capabilities, auth_preference, client_target, risk_tolerance, ...)
Recommend MCP servers for a plain-language task and return ranked matches with install config.
Esquema de entrada
{
"type": "object",
"properties": {
"task": {
"type": "string",
"description": "Plain-language task description such as 'I need an MCP for healthcare denial scoring in OpenAI connectors'."
},
"capabilities": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional explicit capability constraints that override or extend the inferred task capabilities."
},
"auth_preference": {
"type": "string",
"enum": [
"any",
"oauth",
"unauthenticated"
],
"description": "Preferred auth mode."
},
"client_target": {
"type": "string",
"enum": [
"openai_connectors",
"claude_desktop",
"smithery",
"generic_http",
"healthcare"
],
"description": "Optional target client or integration surface."
},
"risk_tolerance": {
"type": "string",
"enum": [
"any",
"low",
"medium",
"high"
],
"description": "How much tool-surface risk is acceptable."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"description": "Maximum number of recommendations to return."
}
},
"required": [
"task"
]
}🟢get_server_report(identifier)
Return the full machine-readable verify report for a specific MCP server identifier.
Esquema de entrada
{
"type": "object",
"properties": {
"identifier": {
"type": "string",
"description": "Canonical server identifier in namespace/name format."
}
},
"required": [
"identifier"
]
}🟢compare_servers(identifiers)
Compare up to four MCP servers side by side across score, verdict, auth, tool count, prompts/resources, and freshness.
Esquema de entrada
{
"type": "object",
"properties": {
"identifiers": {
"type": "array",
"items": {
"type": "string"
},
"minItems": 2,
"maxItems": 4,
"description": "Canonical server identifiers in namespace/name format."
}
},
"required": [
"identifiers"
]
}🟢route_task(task, candidate, capabilities, client_target, max_risk, ...)
Choose the best MCP server/tools for a task. Use decide_agent_call when evaluating one specific attempted tool call.
Esquema de entrada
{
"type": "object",
"properties": {
"task": {
"type": "string",
"description": "Task the agent wants to perform."
},
"candidate": {
"type": "string",
"description": "Optional namespace/name server identifier to evaluate directly."
},
"capabilities": {
"type": "array",
"items": {
"type": "string"
},
"description": "Optional capability constraints such as healthcare, search, database, read, or write."
},
"client_target": {
"type": "string",
"enum": [
"openai_connectors",
"claude_desktop",
"smithery",
"generic_http",
"healthcare"
]
},
"max_risk": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"critical"
],
"description": "Maximum allowed tool risk."
},
"requires_oauth": {
"type": "boolean"
},
"no_write_without_approval": {
"type": "boolean"
},
"max_freshness_hours": {
"type": "number"
}
},
"required": [
"task"
]
}⚪decide_agent_call(agent_id, user_id, server_id, tool, action, ...)
Verify Gateway decision point. Decide whether this agent may call this tool, with this payload, for this user, right now. Writes an audit-ledger decision event.
Esquema de entrada
{
"type": "object",
"properties": {
"agent_id": {
"type": "string"
},
"user_id": {
"type": "string"
},
"server_id": {
"type": "string",
"description": "Server identifier in namespace/name format."
},
"tool": {
"type": "string"
},
"action": {
"type": "string",
"enum": [
"invoke",
"read",
"write",
"preview",
"list",
"connect"
]
},
"mandate_id": {
"type": "string",
"description": "Optional Verify Mandate key or id."
},
"payload_classification": {
"type": "array",
"items": {
"type": "string"
}
},
"requested_cost": {
"type": "number"
},
"max_cost": {
"type": "number"
},
"approval_token_present": {
"type": "boolean"
},
"client": {
"type": "string"
},
"max_risk": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"critical"
]
},
"requires_oauth": {
"type": "boolean"
},
"no_write_without_approval": {
"type": "boolean"
},
"max_freshness_hours": {
"type": "number"
},
"max_runtime_seconds": {
"type": "integer"
},
"audit_context": {
"type": "object"
}
},
"required": [
"agent_id",
"user_id",
"server_id",
"tool"
]
}🟡create_mandate(user_id, agent_id, server_id, scope, budget_limit, ...)
Create a Verify Mandate: signed delegated authority for an agent/user/server scope, budget, validity window, and tool constraints.
Esquema de entrada
{
"type": "object",
"properties": {
"user_id": {
"type": "string"
},
"agent_id": {
"type": "string"
},
"server_id": {
"type": "string"
},
"scope": {
"type": "string"
},
"budget_limit": {
"type": "number"
},
"valid_until": {
"type": "string",
"format": "date-time"
},
"requires_human_approval": {
"type": "boolean"
},
"signature": {
"type": "string"
},
"constraints": {
"type": "object"
},
"metadata": {
"type": "object"
}
},
"required": [
"user_id",
"agent_id",
"scope"
]
}🟢get_evidence_pack(server_id, agent_id, user_id, limit)
Return Verify Ledger evidence packs with invocations, hash-chained audit events, decisions, outcomes, mandates, and cost summaries.
Esquema de entrada
{
"type": "object",
"properties": {
"server_id": {
"type": "string"
},
"agent_id": {
"type": "string"
},
"user_id": {
"type": "string"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 1000
}
}
}⚪compile_docs(title, source_type, source_url, openapi_spec, markdown_docs, ...)
Generate agent-readable MCP artifacts from product docs: server card, llms.txt, tool schemas, examples, policy metadata, score preview, and hosted docs page.
Esquema de entrada
{
"type": "object",
"properties": {
"title": {
"type": "string"
},
"source_type": {
"type": "string",
"enum": [
"openapi",
"github_repo",
"markdown",
"postman",
"website",
"pdf",
"help_center",
"mixed"
]
},
"source_url": {
"type": "string"
},
"openapi_spec": {
"type": "object"
},
"markdown_docs": {
"type": "string"
},
"postman_collection": {
"type": "object"
},
"website_docs": {
"type": "string"
},
"server_identifier": {
"type": "string"
},
"policy_metadata": {
"type": "object"
},
"metadata": {
"type": "object"
}
},
"required": [
"title"
]
}🟢export_policy(identifier, client, max_risk, requires_oauth, no_write_without_approval, ...)
Export a JSON TrustOps policy for one MCP server with allow, blocked tools, required scopes, freshness, and approval gates.
Esquema de entrada
{
"type": "object",
"properties": {
"identifier": {
"type": "string",
"description": "Canonical server identifier in namespace/name format."
},
"client": {
"type": "string"
},
"max_risk": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"critical"
]
},
"requires_oauth": {
"type": "boolean"
},
"no_write_without_approval": {
"type": "boolean"
},
"max_freshness_hours": {
"type": "number"
}
},
"required": [
"identifier"
]
}🟢get_subscription_options
Return alert types, subscription channels, watch scopes, and existing subscription endpoints.
Esquema de entrada
{
"type": "object",
"properties": {}
}🟢get_gateway_options
Return Verify Gateway semantics, /v1/route versus /v1/decide guidance, mandate inputs, ledger evidence hooks, and decision fields.
Esquema de entrada
{
"type": "object",
"properties": {}
}🟢get_hosting_options
Return Verify Hosted MCP runtime/sandbox hosting capabilities, controls, and endpoints.
Esquema de entrada
{
"type": "object",
"properties": {}
}🟢list_agents(risk_level, limit)
Agent Sprawl Radar: list discovered AI agents, MCP servers, bots, workflows, risk levels, and owners.
Esquema de entrada
{
"type": "object",
"properties": {
"risk_level": {
"type": "string",
"enum": [
"low",
"medium",
"high",
"critical"
]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100
}
}
}🟢get_agent(agent_id)
Agent Sprawl Radar: return one agent with tools, data access, findings, drift, and recommended action.
Esquema de entrada
{
"type": "object",
"properties": {
"agent_id": {
"type": "string"
}
},
"required": [
"agent_id"
]
}🟢score_agent(agent_id, agent)
Agent Sprawl Radar: score a normalized agent payload or an existing registry agent.
Esquema de entrada
{
"type": "object",
"properties": {
"agent_id": {
"type": "string"
},
"agent": {
"type": "object"
}
}
}🟢explain_agent_risk(agent_id)
Agent Sprawl Radar: explain risk findings and the recommended action for one registry agent.
Esquema de entrada
{
"type": "object",
"properties": {
"agent_id": {
"type": "string"
}
},
"required": [
"agent_id"
]
}🟢list_high_risk_agents(limit)
Agent Sprawl Radar: list high and critical risk agents for review.
Esquema de entrada
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100
}
}
}🟢get_drift_report(agent_id, limit)
Agent Sprawl Radar: return agent drift events across latest snapshots.
Esquema de entrada
{
"type": "object",
"properties": {
"agent_id": {
"type": "string"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100
}
}
}🟢generate_remediation_plan(agent_id)
Agent Sprawl Radar: generate deterministic remediation steps for risky or drifting agents.
Esquema de entrada
{
"type": "object",
"properties": {
"agent_id": {
"type": "string"
}
},
"required": [
"agent_id"
]
}Prompts recomendados
searchsearchfetchfetchlist_agentsComunidad
Evidencia