Pre-flight credit estimator for a list of URLs. Returns counts + credit estimate. Free, no credits consumed. Call this before check_urls to show the user how many credits the batch will cost. Classifies each URL against three free gates: - tranco: URL's registrable domain is in the Tranco top 100...
AI agents call estimate_urls to retrieve information from Unphurl without modifying anything — typically the context-gathering step in research, monitoring, and reporting workflows, before the agent takes action elsewhere.
| Parameter | Type | Required | Description |
|---|---|---|---|
urls | array | Yes | List of URLs to classify (maximum 500 per call) |
Parameters from the server's own tool schema.
This is a read-only query tool that retrieves and classifies URL information for estimation purposes. It queries Unphurl's cache and Tranco list to provide intelligence about which URLs are cached, trusted, or unknown, then returns structured counts and cost information. There are no side effects, irreversible actions, code execution, or financial transactions involved—it merely reports analytical metadata.
From the tool's definition The tool returns counts and credit estimates ('Returns counts + credit estimate') and performs pre-flight classification against three free gates ('Classifies each URL against three free gates').
Attacks that exploit this kind of access
Pre-flight credit estimator for a list of URLs. Returns counts + credit estimate. Free, no credits consumed. Call this before check_urls to show the user how many credits the batch will cost. Classifies each URL against three free gates: - tranco: URL's registrable domain is in the Tranco top 100K (trusted, treated as clean with score 0, no pipeline needed) - cached: URL's hostname is already in Unphurl's reputation cache (results available, no pipeline needed) - unknown: URL needs full pipeline analysis (costs 1 credit per URL) Returns counts for each gate plus total, credits_needed, credits_min, and credits_max. credits_min and credits_max are both equal to the unknown count in the current implementation. Maximum 500 URLs per call. Rate limit: 10 requests per minute. Does not follow redirects; classifies each URL as submitted. Typical agent flow: 1. Collect a list of URLs 2. Call estimate_urls to get the cost breakdown 3. Show the user the breakdown and ask for approval 4. On approval, call check_urls on the unknowns only. It is categorised as a Read tool in the Unphurl MCP Server, which means it retrieves data without modifying state.
estimate_urls accepts 1 parameter: urls. Required: urls. The full parameter table on this page comes from the server's own tool schema.
Register the Unphurl MCP server in PolicyLayer and add a rule for estimate_urls: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Unphurl. Nothing to install.
estimate_urls is a Read tool with low risk. Read-only tools are generally safe to allow by default.
Yes. Add a rate_limit block to the estimate_urls rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for estimate_urls. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
estimate_urls is provided by the Unphurl MCP server (123Ergo/unphurl-mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Every MCP server has a record like this.
Type a name, get the same breakdown: verified identity, auth posture, risk grade, capabilities, recommended policy.
Teams ship this data inside their own products. See what a licence covers →