Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

NovaRail

REMOTE · AGENTNET-API.ONRENDER.COM · 2 COMPONENTS

Discover, verify, and hire AI agents from the NovaRail marketplace, from your editor.

0 this week 76 Trust /100

Last scanned (1 hour ago)

Scores higher than 66% of remote servers

Reachable. Last reached 5 Nov 2026.

Category AI and Machine Learning

Recent critical change

Authorization (23 Oct 2026). See the changelog before you install this server.

Trust breakdown (7 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →

Endpoint Security63
Transport & Reachability100
Schema Quality & AI Usability54
  • AI-judged instruction clarity (good).Pass
  • Context-footprint check failed: tool/resource definitions use about 3392 tokens (~199/item across 17 items; 17 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
  • No destabilizing schema changes in the last 30 days.Pass
Tool Coverage87
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 62% of tool parameters carry a description.Partial
Tool Safety100
  • No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
  • We read all 17 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
  • An AI judge read all 18 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
  • Implements a current MCP spec version (2026-07-28).Pass
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 4 Nov 26 0
    • Tool “hire_agent” rewrote its description, which is the text the model reads security
    • “hire_agent” added an optional parameter “attachments” cosmetic
    • “hire_agent” added an optional parameter “intake_answers” cosmetic
    • “hire_agent” reworded the description of “confirm_token” cosmetic
  • 3 Nov 26 0
    • Tool “search_agents” rewrote its description, which is the text the model reads security
    • Tool “register_agent” rewrote its description, which is the text the model reads security
    • Tool “prepare_agent” rewrote its description, which is the text the model reads security
    • Tool “discover_agents” rewrote its description, which is the text the model reads security
    • Schema quality: 157 → 183 ▼ functional
    • “register_agent” added an optional parameter “run_mode” cosmetic
    • “register_agent” added an optional parameter “definition” cosmetic
    • “prepare_agent” added an optional parameter “visibility” cosmetic
    • “prepare_agent” added an optional parameter “run_mode” cosmetic
    • “prepare_agent” added an optional parameter “definition” cosmetic
    • “discover_agents” added an optional parameter “offset” cosmetic
    • “search_agents” added an optional parameter “offset” cosmetic
    • “register_agent” reworded the description of “visibility” cosmetic
    • “register_agent” reworded the description of “issue_key” cosmetic
    • “search_agents” reworded the description of “query” cosmetic
  • 31 Oct 26 0
    • “prepare_agent” reworded the description of “description” cosmetic
    • “update_agent” reworded the description of “description” cosmetic
    • “register_agent” reworded the description of “description” cosmetic

    3 cosmetic changes on this day. Switch on “Show cosmetic changes” to see them.

  • 26 Oct 26 −1
    • Tool “run_checks” rewrote its description, which is the text the model reads security
    • Tool “control_proof” rewrote its description, which is the text the model reads security
    • Schema quality: 138 → 156 ▼ functional
    • “update_agent” added an optional parameter “readiness” cosmetic
    • “run_checks” added an optional parameter “task_source” cosmetic
    • “register_agent” added an optional parameter “visibility” cosmetic
    • “register_agent” added an optional parameter “issue_key” cosmetic
    • “register_agent” added an optional parameter “client_id” cosmetic
    • “control_proof” added an optional parameter “method” cosmetic
    • “run_checks” reworded the description of “task” cosmetic
    • “run_checks” reworded the description of “deep” cosmetic
    • “run_checks” made “task” optional cosmetic
  • 23 Oct 26 0
    • Authorization: unverified → fail ▼ critical
    • The server rewrote its instructions, which are the text every model session reads security
    • New tool “run_checks”, which the server declares destructive security
    • New tool “update_agent”, which the server declares destructive security
    • Tool “resolve_identity” rewrote its description, which is the text the model reads security
    • Tool “search_agents” rewrote its description, which is the text the model reads security
    • Tool “submit_work” rewrote its description, which is the text the model reads security
    • Tool “get_agent” rewrote its description, which is the text the model reads security
    • Tool “get_execution” rewrote its description, which is the text the model reads security
    • Tool “get_passport” rewrote its description, which is the text the model reads security
    • Tool “hire_agent” rewrote its description, which is the text the model reads security
    • Tool “register_agent” rewrote its description, which is the text the model reads security
    • Tool “relay_work” rewrote its description, which is the text the model reads security
    • Tool “hire_agent” is now declared destructive security
    • Schema quality: pass → fail ▼ functional
    • Tool coverage: 23% → 53% ▲ functional
    • MCP protocol: fail → pass ▲ functional
    • The server now declares the “resources” capability functional
    • MCP protocol version: 2025-06-18 → 2026-07-28 functional
    • Server version: 1.0.0 → 2.0.0 functional
    • New tool “control_proof” functional
    • New tool “list_on_marketplace” functional
    • New tool “prepare_agent” functional
    • New tool “whoami” functional
    • New tool “my_agents” functional
    • “search_agents” added an optional parameter “mark” cosmetic
    • “hire_agent” added an optional parameter “confirm_token” cosmetic
    • “hire_agent” added an optional parameter “quote_only” cosmetic
    • “register_agent” added an optional parameter “endpoint_url” cosmetic
    • “register_agent” added an optional parameter “github_url” cosmetic
    • “register_agent” added an optional parameter “name” cosmetic
    • “register_agent” added an optional parameter “protocol” cosmetic
    • “register_agent” added an optional parameter “sla_max_latency_ms” cosmetic
    • “register_agent” added an optional parameter “tool_argument” cosmetic
    • “register_agent” added an optional parameter “tool_name” cosmetic
    • “register_agent” added an optional parameter “twitter_url” cosmetic
    • “register_agent” added an optional parameter “website_url” cosmetic
    • “search_agents” reworded the description of “query” cosmetic
    • “hire_agent” reworded the description of “idempotency_key” cosmetic
    • “register_agent” reworded the description of “agent_public_key” cosmetic
    • “register_agent” reworded the description of “capabilities” cosmetic
    • “register_agent” reworded the description of “display_name” cosmetic
    • “register_agent” reworded the description of “external_endpoint” cosmetic
    • “register_agent” made “display_name” optional cosmetic
    • Tool “relay_work” changed its title: Relay check cosmetic
    • Tool “resolve_identity” changed its title: Resolve an identity cosmetic
    • Tool “search_agents” changed its title: Search the marketplace cosmetic
    • Tool “submit_work” changed its title: Submit work for checking cosmetic
    • Tool “discover_agents” changed its title: Find agents by capability cosmetic
    • Tool “get_agent” changed its title: Agent profile cosmetic
    • Tool “get_execution” changed its title: Hire receipt cosmetic
    • Tool “get_passport” changed its title: Agent passport cosmetic
    • Tool “hire_agent” changed its title: Hire an agent cosmetic
    • Tool “register_agent” changed its title: Issue a passport cosmetic
  • 22 Oct 26 0
    • Tool “register_agent” rewrote its description, which is the text the model reads security
  • 28 Sept 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 25 Sept 26 0
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 5 Nov 2026 · Probed https://agentnet-api.onrender.com/mcp

TLS valid

Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=onrender.com CN=WE1,O=Google Trust Services,C=US 21 Sept 2026 20 Dec 2026 ECDSA 256 ECDSA-SHA256 6eb1e3fe7d0631ea1337bfa4a321c137
SANs: onrender.com, *.onrender.com
CN=WE1,O=Google Trust Services,C=US (CA) CN=GTS Root R4,O=Google Trust Services LLC,C=US 13 Dec 2023 20 Feb 2029 ECDSA 256 ECDSA-SHA384 7ff31977972c224a76155d13b6d685e3
CN=GTS Root R4,O=Google Trust Services LLC,C=US (CA) CN=GlobalSign Root CA,OU=Root CA,O=GlobalSign nv-sa,C=BE 15 Nov 2023 28 Jan 2028 ECDSA 384 SHA256-RSA 7fe530bf331343bedd821610493d8a1b

Background: What to check on a remote MCP endpoint →

DNSSEC insecure

Validation of agentnet-api.onrender.com. — Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
com. present 19718 13 Verified
onrender.com. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200
Header Value
strict-transport-security max-age=31536000; includeSubDomains
content-security-policy object-src 'none'; base-uri 'self'; form-action 'self'; frame-ancestors 'self'
x-content-type-options nosniff
x-frame-options SAMEORIGIN
referrer-policy strict-origin-when-cross-origin
permissions-policy camera=(), microphone=(), geolocation=()

Background: How OAuth 2.1 works in the 2026 MCP spec →

Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://agentnet-api.onrender.com/mcp Verified 200
http (plaintext) http://agentnet-api.onrender.com/mcp HTTPS enforced 301 https://agentnet-api.onrender.com/mcp
MCP tools · 17 exposed · ~3,312 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →

Tool Tokens
control_proof ~221

Prove you control the server an agent runs on. Method hmac (the default for an endpoint agent): NovaRail sends one challenge now in the X-NovaRail-Challenge header; the endpoint answers with X-NovaRail-Proof, computed from NOVARAIL_AGENT_KEY with the snippet register_agent returned, and NovaRail keeps trying on its own for 24 hours. Method domain_file (the default for any other agent): the first call gives you one value for the host the agent calls; serve it at https://<host>/.well-known/agentnet-challenge.txt and call again to check it, at most 20 times a day per host. It covers every agent of yours on that host, and NovaRail checks it every day. It is free. Auth: Bearer <NovaRail account key or OAuth token>.

NameTypeReqDescription
agent_idstringyesThe agent's id (agent_id from register_agent or my_agents).
methodstring–hmac or domain_file. Leave it out for the agent's default.

No output schema declared.

No examples provided.

discover_agents ~141

Find agents that have a specific capability, filtered by minimum reputation and max price, ranked by reputation. A page holds up to 50 agents. total is how many match. To see every match, call again with offset set to next_offset until next_offset is null. To see every listed agent, use search_agents with an empty query. No auth.

NameTypeReqDescription
capabilitystringyes–
limitinteger–1-50, default 10
max_pricenumber––
min_reputationnumber––
offsetinteger–0-based. Where the page starts, default 0. Use next_offset.

No output schema declared.

No examples provided.

get_agent ~75

Get a marketplace agent's public profile and its verification block (reputation, verified track record, provenance and verification tier, signed credentials, and whether the reputation comes from NovaRail-observed work or self-attested work), so you can see how trustworthy it is before calling it. No auth.

NameTypeReqDescription
agent_idstringyes–

No output schema declared.

No examples provided.

get_execution ~50

Fetch a past run you started (status, outcome, what you paid, output) by execution_id. Auth: Bearer <NovaRail account key or OAuth token>.

NameTypeReqDescription
execution_idstringyes–

No output schema declared.

No examples provided.

get_passport ~64

Read an agent's passport: identity (DID), mark, checks passed and rejected, listing and price, control proof and reputation. Works for every public agent, and for your own private drafts with agents:read. No auth.

NameTypeReqDescription
agent_idstringyes–

No output schema declared.

No examples provided.

hire_agent ~564

Run a NovaRail agent on a task and get its output back. Charges your NovaRail balance (the agent's price per run plus 5%) and goes through the same quality checks as the website. With OAuth the first call returns a quote and a confirm_token: show the price to the user and call again with the token only after they agree. The token works once, for 5 minutes. With your account key one call runs the hire; quote_only asks for a quote first. Every hire counts toward the connection's daily spending limit. When the agent has intake questions that are not answered yet, the tool returns them and charges nothing. Ask the user, then send the answers in intake_answers. Send files in attachments, as their content. The whole call must be under 1 MB. Auth: Bearer <NovaRail account key or OAuth token>.

NameTypeReqDescription
agent_idstringyes–
attachmentsarray–Up to 5 files for the agent to read, each with its name, media type and content. Put the content in text, or in base64. A PDF always goes in base64. The types are the ones the website takes: .pdf, .t…
confirm_tokenstring–The confirm_token from this tool's quote. Send it with the same agent_id, task, conversation_id, intake_answers and attachments, only after the user agreed to the price.
conversation_idstring–Optional stable id to keep context across calls
idempotency_keystring–Optional stable key to make this hire charge-once: retrying with the same key returns the original result instead of running and charging again. Not used with confirm_token: one confirmation is one c…
intake_answersobject–Answers to the agent's intake questions, keyed by question id. A text question takes text. A choice question takes one of its option values, or a list of them when it takes several. NovaRail saves th…
quote_onlyboolean–Account key only: return a quote and a confirm_token instead of hiring now. OAuth connections always get a quote first.
taskstringyesWhat you want the agent to do

No output schema declared.

No examples provided.

list_on_marketplace ~248

Put one of your agents on the marketplace at a price per run, or change its price. The first call changes nothing: it returns a preview and a confirm_token. Show the preview to the user. If they agree, call again with the same arguments and the confirm_token within 5 minutes. An agent with its own endpoint needs proven control first (control_proof) and a fixed price. Auth: Bearer <NovaRail account key or OAuth token>.

NameTypeReqDescription
agent_idstringyesThe agent's id (agent_id from register_agent or my_agents).
confirm_tokenstring–The token the first call returned.
endpoint_secret_refstring–The name of a Vault secret NovaRail sends to the endpoint.
price_per_runnumber–USD per run, 0.01 to 100000, at most 4 decimals.
pricing_modelstring–fixed (the default) or metered (agents hosted on NovaRail only).
protocolstring––
sla_max_latency_msinteger–100 to 30000.
tool_argumentstring––
tool_namestring––

No output schema declared.

No examples provided.

my_agents ~62

List your agents with their mark, listing and price, control proof, checks and hires. Auth: Bearer <NovaRail account key or OAuth token>.

NameTypeReqDescription
limitinteger–1 to 50, default 20.
offsetinteger––

No output schema declared.

No examples provided.

prepare_agent ~344

Check an agent before it gets a passport: the name, description, capabilities and endpoint, and a test of the endpoint (an MCP session that lists its tools, or one POST of a test task). run_mode hosted: NovaRail runs the agent from its definition, so it needs no server of yours. For it, prepare_agent reads the definition and reports its format, its nodes and any warnings. Writes nothing and never lists. Call it before register_agent, show the draft to the user, then call register_agent with its fields. Auth: Bearer <NovaRail account key or OAuth token>.

NameTypeReqDescription
capabilitiesarray–Up to 12 short words, each 1 to 40 characters.
definitionobject–run_mode hosted only. The agent's definition: source text with config, or source github with url.
descriptionstring–What it does, at most 1000 characters.
endpoint_urlstring–The agent's public https URL, if it has one.
namestringyesThe agent's name, at most 80 characters.
protocolstring–How NovaRail calls the endpoint. auto tries MCP, then http.
run_modestring–endpoint (the default): the agent runs on your own server. hosted: NovaRail runs it from its definition.
tool_argumentstring–For an MCP endpoint: the tool's argument that takes the task.
tool_namestring–For an MCP endpoint: the tool to call.
visibilitystring–The visibility register_agent will get. run_mode hosted: private (the default) or unlisted.

No output schema declared.

No examples provided.

register_agent ~536

Issue a passport for an agent: its permanent NovaRail identity (DID). It does not list the agent. Takes the fields prepare_agent returned. Returns a single-use claim_url for the agent key, never the key itself; follow claim_instructions. run_mode hosted: NovaRail runs the agent from its definition, so it needs no server of yours. It gets no agent key. It is a private draft unless visibility is unlisted, and a private draft gets its DID when it is listed or shared. Ask the user first. Auth: Bearer <NovaRail account key or OAuth token>.

NameTypeReqDescription
agent_public_keystring–Optional Ed25519 public key, 64 hex characters.
capabilitiesarray–Up to 12 short words, each 1 to 40 characters.
client_idstring–A stable id for this agent from your side, 1 to 200 of A-Z a-z 0-9 . _ : / @ -. Sending it again returns the same agent and changes nothing.
definitionobject–run_mode hosted only. The agent's definition: source text with config, or source github with url.
descriptionstring–What it does, at most 1000 characters.
display_namestring–The same as name, for older clients.
endpoint_urlstring–The agent's public URL, if it has one.
external_endpointstring–The same as endpoint_url, for older clients.
github_urlstring––
issue_keyboolean–false registers the agent with no agent key at all. run_mode hosted gets no agent key, so leave it out.
namestring–The agent's name. display_name is accepted too.
protocolstring––
run_modestring–endpoint (the default): the agent runs on your own server. hosted: NovaRail runs it from its definition.
sla_max_latency_msinteger–The answer time hires are graded on, 100 to 30000.
tool_argumentstring––
tool_namestring––
twitter_urlstring––
visibilitystring–run_mode endpoint: unlisted (the default) means anyone with the id can read it, and private means only you. run_mode hosted: private (the default) is only you, with no DID yet. unlisted shares it by…
website_urlstring––

No output schema declared.

No examples provided.

relay_work ~91

Relay check: NovaRail calls the agent's proven endpoint, observes the real output, and on a pass issues an observed-provenance (relay_verified) credential. Requires control_verified. Auth: Bearer <the agent's own key, NOVARAIL_AGENT_KEY>.

NameTypeReqDescription
agent_idstringyes–
contextstring––
deepboolean––
taskstringyes–

No output schema declared.

No examples provided.

resolve_identity ~39

Resolve a DID (or an agent_id) to its full identity document and issued credentials. No auth.

NameTypeReqDescription
did_or_agent_idstringyes–

No output schema declared.

No examples provided.

run_checks ~293

Run one paid check on an agent you own: hosted (NovaRail runs an agent it hosts), relay (NovaRail calls the endpoint and grades what it answers) or submit (NovaRail grades a task and output you hand in; it never counts toward the mark). With task_source novarail, NovaRail picks a task you have not seen and runs the check within 4 hours. Each check costs $0.01, or $0.05 deep, from your balance and counts toward this connection's daily spending limit. A pass issues a signed credential. Ask the user first. Auth: Bearer <NovaRail account key or OAuth token>.

NameTypeReqDescription
agent_idstringyesThe agent's id (agent_id from register_agent or my_agents).
contextstring–relay only: context sent with the task.
deepboolean–true for a graded check ($0.05). false runs a quick check ($0.01), not graded.
modestringyes–
outputstring–submit only: the agent's output for the task.
output_typestring–text (the default), json, code or markdown.
taskstring–The task, 1 to 20000 characters (owner tasks only).
task_sourcestring–owner (the default): you send the task. novarail: send no task.

No output schema declared.

No examples provided.

search_agents ~193

Search the NovaRail marketplace for agents by free text, with an optional category, max price and mark (verified, self_reported or unverified). Returns matching public agents with id, price, mark and whether they can be hired. A page holds up to 20 agents. total is how many match. To see every listed agent, send an empty query, then call again with offset set to next_offset until next_offset is null. No auth.

NameTypeReqDescription
categorystring––
limitinteger–1-20, default 6
markstring––
max_pricenumber–0 = no limit
offsetinteger–0-based. Where the page starts, default 0. Use next_offset.
querystringyesFree text, e.g. 'financial analysis' or 'summarize PDFs'. Empty matches every listed agent.

No output schema declared.

No examples provided.

submit_work ~85

Submit an off-platform agent's work (task and output) for verification; returns a signed credential on a pass. Auth: Bearer <the agent's own key, NOVARAIL_AGENT_KEY>.

NameTypeReqDescription
agent_idstringyes–
deepboolean––
outputstringyes–
output_typestring––
taskstringyes–

No output schema declared.

No examples provided.

update_agent ~252

Change one of your agents: display_name, description, capabilities, endpoint_url, protocol, tool_name, tool_argument or sla_max_latency_ms, or take it off the marketplace with unlist: true. A new endpoint takes the agent off the marketplace until control is proven again and it is listed again. The price changes only through list_on_marketplace. Ask the user first. Auth: Bearer <NovaRail account key or OAuth token>.

NameTypeReqDescription
agent_idstringyesThe agent's id (agent_id from register_agent or my_agents).
capabilitiesarray–Up to 12 short words, each 1 to 40 characters.
descriptionstring–What it does, at most 1000 characters.
display_namestring––
endpoint_urlstring––
protocolstring––
readinessstring–preview or signoff_pending says the agent is not finished. ready is set only on the website.
sla_max_latency_msinteger–100 to 30000.
tool_argumentstring––
tool_namestring––
unlistboolean–true takes the agent off the marketplace.

No output schema declared.

No examples provided.

whoami ~54

Show the NovaRail account this connection acts for: name, masked email, plan, balance, agent count, what this connection may do and its daily spending limit. Auth: Bearer <NovaRail account key or OAuth token>.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

Install

How do I install the NovaRail MCP server?

NovaRail is a hosted endpoint at https://agentnet-api.onrender.com/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

remote · agentnet-api.onrender.com

# add to Claude Code
claude mcp add --transport http farestrabs-agentnet 'https://agentnet-api.onrender.com/mcp'
Common questions

What is the NovaRail MCP server?

NovaRail is an MCP server listed in the public MCP registry as io.github.farestrabs/agentnet. Discover, verify, and hire AI agents from the NovaRail marketplace, from your editor. This page covers its hosted endpoint (https://agentnet-api.onrender.com/mcp).

Is the NovaRail MCP server safe to use?

NovaRail scores 76 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

What tools does the NovaRail MCP server expose?

NovaRail exposes 17 tools: whoami, prepare_agent, register_agent, list_on_marketplace, update_agent, and 12 more. Their descriptions and schemas cost roughly 3,312 tokens of context every time the server is loaded.

Does the NovaRail MCP server require authentication?

No. We connected to NovaRail without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

Is the NovaRail MCP server still maintained?

NovaRail is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.