Skip to content

OpenRouter Server Tools

IDopenrouter_server_tools
CategoryTools
FeaturesNone
DependenciesNone
RiskHigh (grants provider-executed web reach)

Enables OpenRouter’s provider-executed “server tools” (beta). Unlike normal function tools, these run server-side by OpenRouter: it loops internally and returns the final answer, so the agent loop never dispatches them. This capability contributes request intent, not executable tools, the selected tools are compiled into the OpenRouter request’s tools array as provider-executed entries. The concrete implementation lives in the focused everruns-integrations-openrouter-workspace crate; core carries only the provider-neutral routing contract.

This is the OpenRouter counterpart to client-executed web access like Web Fetch: the difference is who runs the tool. With server tools, OpenRouter performs the search or fetch and folds the results into the same generation, no extra round-trip through Everruns. Use it when your agents run on the OpenRouter provider and you want built-in web reach without wiring up a separate search integration.

None, this capability configures the OpenRouter request, it does not provide client-side tools. The model invokes server tools during the generation and OpenRouter executes them; the only client-visible artifact is the final answer.

OpenRouter exposes these server tools. Enable any subset:

ToolNameWhat it does
Web Searchweb_searchSearches the web and grounds the answer in results. Accepts an optional max_results cap.
Web Fetchweb_fetchFetches and reads a URL the model chooses.
Date & TimedatetimeGives the model the current date and time.
Image Generationimage_generationGenerates images inline.
Apply Patchapply_patchApplies code patches.
FusionfusionOpenRouter’s Fusion tool.
AdvisoradvisorOpenRouter’s Advisor tool.
SubagentsubagentDelegates to an OpenRouter-run subagent.

web_search is the only server tool that takes parameters today (web_search_max_results). Availability of each tool depends on the upstream model and OpenRouter’s beta rollout, see OpenRouter’s server-tools docs for the current list.

  1. Capability config → request intent: the tools you enable are compiled into the OpenRouter routing config and serialized by the OpenRouter driver into the request’s tools array as {"type":"openrouter:…"} entries.
  2. OpenRouter executes server-side: when the model decides to call a server tool, OpenRouter runs it, loops internally, and returns the final answer. The agent loop never sees an intermediate tool call.
  3. No-op off OpenRouter: non-OpenRouter providers ignore the routing config entirely. Enabling this capability on a non-OpenRouter agent is a harmless no-op, so it is safe to leave on for agents that may switch providers.
{
"capabilities": [
{
"capability_ref": "openrouter_server_tools",
"config": { "tools": ["web_search"] }
}
]
}

Enable several tools and cap web-search results

Section titled “Enable several tools and cap web-search results”
{
"capabilities": [
{
"capability_ref": "openrouter_server_tools",
"config": {
"tools": ["web_search", "web_fetch", "datetime"],
"web_search_max_results": 5
}
}
]
}

Config rules:

  • tools, array of server-tool names from the table above. Unknown names are rejected on write. Duplicates are de-duplicated.
  • web_search_max_results, positive integer; only decorates web_search. It is ignored for every other tool and rejected when < 1.

Enabling server tools grants the model provider-executed web reach (web_search / web_fetch). OpenRouter performs these requests, so Everruns’ own egress controls do not apply, the same data-exfiltration class as client-side Web Fetch. The capability is therefore rated High risk and gated behind the same admin-only trust check as other outbound-web capabilities. Grant it only to agents you trust with outbound web access.

  • OpenRouter only: this is an OpenRouter request extension. Other providers ignore it (no error, no behavior change).
  • Beta: server tools are an OpenRouter beta; tool availability varies by upstream model and may change.
  • Provider-side execution: because OpenRouter runs the tools, their activity does not appear as Everruns tool calls. Inspect them in OpenRouter’s dashboard logs instead.