AgisHub MCP Server
OfficialAgisHub is a freemium MCP + HTTP x402 server that gives AI agents live data, web, AI, memory, webhook, finance, and utility tools with no signup or API keys—paid per call in USDC on Base.
Timezone & scheduling: current time, conversions between IANA zones, batch world-clock conversion, DST-aware offsets, date math, meeting-slot finding across timezones, and public-holiday checks.
Web/content: extract pages as clean markdown (with optional JS rendering), plus paid scraping, structured JSON extraction, snapshots/screenshots, and link harvesting.
AI/NLP: summarize text, classify into labels, extract entities, generate embeddings, chat with an LLM, transcribe audio, and convert text to speech.
Memory/RAG: persistent semantic memory with namespace-based upsert and similarity search.
Webhooks: reliable webhook delivery with background retries and status tracking.
Finance/crypto: live currency conversion and USD crypto spot prices.
Utilities: generate QR codes, convert units, and shorten URLs.
Browser/render (paid-only): render PDFs, take screenshots, generate images, and automate headless-browser flows.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@AgisHub MCP ServerConvert 3 PM New York time to London time."
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
AgisHub
Pay-per-call tools for AI agents — no signup, no API keys, just USDC.
▶ Try any tool live in your browser — no install
Live data & utilities over x402 micropayments on Base. Your agent pays a few tenths of a cent per call from its own wallet; no accounts, no monthly plans.
Why AgisHub
Traditional APIs make an agent stop and ask a human: sign up, create an account, copy an
API key, add a credit card, read the docs. AgisHub tools are callable the moment an agent
has a funded wallet — the server answers HTTP 402, the agent signs a USDC payment on
Base, and the data flows back. Under a second, no human in the loop.
Raw API + key + plan | Single‑vendor MCP | AgisHub | |
Sign‑up / API key | required | required | none |
Billing | monthly / credits | subscription | per call (USDC) |
Agent can pay itself | ✗ | ✗ | ✓ (x402) |
Free tier for discovery | varies | varies | ✓ (free MCP) |
Multiple tools, one door | ✗ | one vendor | ✓ |
Free MCP tier to discover and prototype; pay‑per‑call x402 HTTP tier for production, priced per request in USDC.
Related MCP server: StatePulse API
Two doors, one platform
MCP (free) — remote Model Context Protocol server. Point Claude / Cursor / any MCP client at the URL and the tools appear.
HTTP x402 (paid) —
POST /v1/<tool>; unpaid requests get a402challenge, the client signs a USDC payment (EIP‑3009 on Base) and retries. USDC contract0x8335…2913.
MCP (free): https://api.agishub.com/mcp
HTTP (paid): POST https://api.agishub.com/v1/<tool>
Discovery: https://api.agishub.com/openapi.jsonTools
34 tools across 7 categories. Prices are per call in USDC on Base, from $0.01. Every tool is free to try over MCP; the HTTP endpoint is the one that charges.
🤖 AI & Inference
Language models, embeddings and classification — no external API key.
Tool | What it does | Endpoint | Cost |
| Ask a general-purpose LLM a question or give it an instruction, with an optional system prompt. No external API key required. |
| $0.02 |
| Classify a text into exactly one of the candidate labels you provide (e.g. sentiment, topic, intent). |
| $0.02 |
| Turn text into a numeric embedding vector for semantic search, RAG and similarity. Multilingual. |
| $0.01 |
| Extract named entities from text — people, organizations, locations, dates and miscellaneous — returned as structured JSON. |
| $0.02 |
| Summarize a block of text into a short abstract, with an optional target length. No external API key required. |
| $0.02 |
🕸️ Search & Web
Read, scrape, crawl and map any public page.
Tool | What it does | Endpoint | Cost |
| Drive a headless browser: open a URL and run an ordered list of steps — click, type, press keys, wait, extract text and screenshot. For flows the plain scraper can't reach (logins, forms, multi-step pages). |
| $0.10 |
| Crawl multiple pages of a site, respecting link depth and domain limits. Returns async job_id; results include markdown or HTML per page. Use it to fetch and process many pages of content at once. |
| $0.10 |
| Fetch any public web page and return its main content as clean, token-efficient Markdown (title, description, headings, links, lists). Set render:true to execute JavaScript first for single-page apps or JS-heavy pages that would otherwise come back empty. Built for RAG and for agents that need to read the contents of a URL. |
| $0.03 |
| AI-powered structured extraction: give a URL plus a natural-language prompt and/or a JSON Schema, and get back clean structured JSON (e.g. product name, price, rating). Renders the page in a headless browser first, so it works on SPAs. |
| $0.05 |
| Return every hyperlink on a JavaScript-rendered page as a list of absolute URLs, with options to keep only visible links or only same-site links. Backed by a headless browser. Use it to map a site or seed a crawler. |
| $0.03 |
| Discover all URLs reachable from a domain within a link depth limit. Returns a flat list of absolute URLs, respects robots.txt crawl delays. Use it to map a site's structure before crawling. |
| $0.05 |
| Extract specific elements from a JavaScript-rendered page by CSS selector. Give a list of selectors (e.g. 'h1', '.price', 'a.product') and get back the text and attributes of every match. Backed by a headless browser, so it works on SPAs and JS-heavy pages. |
| $0.03 |
| Capture a PNG screenshot of any public URL — full page or just the viewport, at a chosen size — returned base64-encoded. Backed by a headless browser. |
| $0.03 |
| Capture several representations of a page in one call — rendered HTML plus a PNG screenshot by default, and optionally Markdown and the accessibility tree. Backed by a headless browser. Saves round-trips when an agent needs both the content and a visual of a page. |
| $0.05 |
📊 Data & Analytics
Time, timezones, units and currency.
Tool | What it does | Endpoint | Cost |
| Convert a value between units of the same category: length, mass, volume, speed, area, digital storage, time, and temperature (Celsius/Fahrenheit/Kelvin). |
| $0.01 |
| Convert an amount between currencies using live daily exchange rates (ISO 4217 codes, e.g. USD, EUR, GBP, JPY). Returns the converted amount and the rate used. |
| $0.01 |
| Timezone-aware date arithmetic: add or subtract a duration to a datetime (days are calendar-based and DST-safe; hours and minutes are absolute), or compute the difference between two datetimes that may be in different zones. |
| $0.01 |
| Convert a specific date/time from one IANA timezone to another (single or batch). Accepts ISO 8601 or natural language ('next Tuesday 3pm'). Returns the converted datetime with UTC offset, zone abbreviation and DST flag. |
| $0.01 |
| Check whether a given date is a public holiday in a country (identified by its ISO 3166-1 alpha-2 code), and return the holiday name if so. Backed by an authoritative public-holiday dataset. |
| $0.01 |
| Find working-hour time slots that overlap across participants in different timezones for a meeting of a given duration, excluding weekends and (when a country is given per participant) that person's public holidays. Free tier returns at most 1 slot; the paid endpoint returns every matching slot (see 'upgrade' in the response). |
| $0.10 |
| Get the current local time in an IANA timezone, including the UTC offset, zone abbreviation and whether DST is in effect. Use whenever you need to know what time it is 'now' somewhere. |
| $0.01 |
| Get the exact UTC offset of an IANA timezone at a given instant, DST-aware. Correctly handles fractional offsets such as India +05:30 and Nepal +05:45. |
| $0.01 |
| List or search valid IANA timezone identifiers by city/region/country, and resolve a city/country name to its timezone(s). Use it to discover the exact identifier to pass to the other tools. |
| $0.01 |
💱 Market Data
Live crypto prices.
Tool | What it does | Endpoint | Cost |
| Get live USD spot prices for one or more cryptocurrencies by ticker symbol (e.g. BTC, ETH, SOL). |
| $0.01 |
🖼️ Media & Generation
Audio, images and documents.
Tool | What it does | Endpoint | Cost |
| Convert text into spoken audio (returned base64-encoded MP3), in several languages. |
| $0.05 |
| Transcribe an audio file (given by public URL) to text. Handles mp3, wav, m4a, ogg and more. |
| $0.05 |
| Render a public URL or a raw HTML string into a PDF document, returned base64-encoded. Backed by a headless browser. Use for invoices, reports, receipts and any HTML-to-PDF need. |
| $0.05 |
| Generate an image from a text prompt (returned base64-encoded PNG). |
| $0.10 |
🔧 Developer Tools
QR codes, short links and guaranteed webhook delivery.
Tool | What it does | Endpoint | Cost |
| Generate a QR code for any text or URL. Returns an inline SVG plus a data URI, with selectable size, quiet-zone margin and error-correction level. |
| $0.01 |
| Shorten a long URL into a compact api.agishub.com/s/ link that redirects to the original. Codes are stored for a year. |
| $0.01 |
| Deliver a webhook (POST/PUT/PATCH a JSON payload to a URL) with guaranteed, retried delivery. Returns immediately with a job_id; AgisHub keeps retrying in the background until it succeeds. |
| $0.02 |
| Check the delivery status of a webhook job (queued / retrying / delivered / failed) by its job_id. |
| $0.01 |
🧠 Knowledge & Memory
Persistent, semantically searchable memory.
Tool | What it does | Endpoint | Cost |
| Semantically search a memory collection (namespace) and return the most relevant stored entries. The retrieval half of RAG. |
| $0.01 |
| Store a piece of text in a persistent, searchable memory collection (namespace). Embedded and indexed for later semantic recall. |
| $0.01 |
Quick start
Use the free MCP tools (Claude Code example):
claude mcp add --transport http timezone https://api.agishub.com/mcpPay per call over HTTP x402 (any x402 client / wallet):
# Unpaid → 402 challenge; an x402-aware client signs & retries automatically.
curl -X POST https://api.agishub.com/v1/web-scraper \
-H 'content-type: application/json' \
-d '{"url":"https://example.com","render":true}'Your agent's wallet only needs USDC on Base — the facilitator covers gas.
For agents & LLMs
Payments are real USDC on Base mainnet and irreversible. Fund a dedicated agent wallet with a small balance; that balance is your spending cap.
The free MCP tier never charges. Only the
/v1/*(x402 HTTP) routes take payment.extractfetches arbitrary public URLs; it will not reach private/internal hosts.
Pricing
Per‑call, in USDC on Base — no subscription, no signup, no API key. Five tiers, by what a call actually costs to run:
Tier | What | Examples |
$0.01 | Lookups, conversions, memory |
|
$0.02 | LLM inference, guaranteed delivery |
|
$0.03 | Browser, one page |
|
$0.05 | Heavy rendering, media |
|
$0.10 | Orchestration, generation |
|
Roughly: $1 ≈ 100 timezone calls, ≈ 33 web extractions, or 10 crawls of up to 100 pages each. Settlement fees on Base are a fraction of a cent and paid by the facilitator.
web.crawl and web.map are capped per call (100 pages, 200 URLs) and priced flat, so a
larger site is several calls at the same rate rather than one unbounded charge.
License
MIT © AgisHub
Available Tools
25 toolschatAInspect
Ask a general-purpose LLM a question or give it an instruction, with an optional system prompt. No external API key required.
| Name | Required | Description | Default |
|---|---|---|---|
| prompt | Yes | The user's message or question for the assistant. | |
| system | No | Optional system instruction to steer the assistant's behaviour/persona. | |
| max_tokens | No | Maximum tokens to generate (default 512). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It adds a useful behavioral fact ('No external API key required'), but does not disclose other traits like data handling, rate limits, or output format. It does not contradict anything, but coverage is minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that states the primary purpose and a key operational fact (no API key). Every word earns its place; it is concise without being under-specified.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple chat tool, the description covers the core purpose but omits expected return behavior, error conditions, or any limitations. With no annotations or output schema, a bit more context would be valuable, but the description is minimally adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so all parameters are already documented. The description adds no extra semantic value beyond reaffirming the optional system prompt, which is already in the schema. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('Ask') and resource ('general-purpose LLM'). It distinguishes itself from specialized sibling tools via the 'general-purpose' qualifier, and mentions the optional system prompt, making the scope unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied through 'general-purpose', suggesting use when specialized tools (e.g., summarize, classify) are not appropriate. However, no explicit when-to-use or when-not-to-use guidance is given, nor are alternative tools named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
classifyAInspect
Classify a text into exactly one of the candidate labels you provide (e.g. sentiment, topic, intent).
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | The text to classify. | |
| labels | Yes | Candidate labels to choose from, e.g. ['positive','negative','neutral']. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description discloses a key behavioral trait: the text is classified into exactly one of the provided labels, which is beyond what the schema states. With no annotations available, it carries the full disclosure burden, but it does not cover edge cases like ambiguous texts or the exact return format, leaving some gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that front-loads the verb 'Classify' and provides a compact example. There is no fluff or repetition, making it highly efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple two-parameter tool without output schema or annotations, the description is largely sufficient. It explains the task, the 'exactly one' constraint, and the user-supplied labels. It could be improved by explicitly stating the return value (e.g., the chosen label), but the behavior is reasonably inferable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% parameter description coverage, with clear definitions for 'text' and 'labels'. The description adds no new parameter-level information beyond reinforcing that labels are user-supplied, so the baseline of 3 (with full schema coverage) applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Classify') with a clear object ('a text') and defines the scope ('exactly one of the candidate labels you provide') with examples (sentiment, topic, intent). This clearly distinguishes it from sibling tools like summarize or extract_entities, which perform different NLP tasks.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description clearly implies when to use the tool: when you need to assign a text to one of a set of user-defined categories. However, it does not explicitly mention when not to use it or point to any alternative tools, lacking exclusions that would make it a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_batchAInspect
Convert a single instant into many IANA timezones at once — a world-clock view. Like convert_timezone, but 'to' is a list of target zones.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | List of target IANA timezones. | |
| from | Yes | Source IANA timezone. | |
| datetime | Yes | ISO 8601 or natural language. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the core batch behavior ('many IANA timezones at once') and the world-clock view, but does not detail edge cases like invalid timezone handling, output format, or whether results are keyed by timezone. This is moderate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences, each earning its place: the first defines functionality, the second clarifies the relationship to the sibling tool. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple and the description covers the main use case well, including a helpful analogy ('world-clock view'). However, without an output schema or annotations, the agent must infer the return format and error behavior for a batch operation, leaving a small but noticeable gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides full descriptions for all three parameters (100% coverage). The description adds only the batch nuance that 'to' is a list of zones, which is also in the schema. Since schema does the heavy lifting, this is a baseline 3.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool converts a single instant into many IANA timezones at once, and explicitly contrasts it with convert_timezone by noting the 'to' field is a list. This distinguishes it from siblings and gives a specific verb+resource.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It names the sibling convert_timezone as the alternative and explains the exact difference ('to' is a list), providing clear guidance on when to use this batch variant vs the single-zone version. No exclusions are needed for a tool with such a focused purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_currencyAInspect
Convert an amount between currencies using live daily exchange rates (ISO 4217 codes, e.g. USD, EUR, GBP, JPY). Returns the converted amount and the rate used.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Target currency ISO 4217 code, e.g. 'EUR', 'JPY'. | |
| from | Yes | Source currency ISO 4217 code, e.g. 'USD', 'EUR'. | |
| amount | Yes | The amount of money to convert. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must bear the full burden. It discloses that rates are daily and live, and that the return includes the converted amount and rate. However, it omits details about error handling, precision, or any caveats about the rate source.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two short sentences, front-loaded with the purpose, and includes return behavior without any wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple conversion tool with full schema coverage and no output schema, the description adequately covers purpose, inputs, and return value. It lacks edge-case details but is sufficient given the tool's simplicity and low risk.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% for all three parameters; the description adds ISO 4217 code examples but these are already implied by the schema's own text. It does not materially extend schema semantics, so a baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Convert an amount between currencies' with a specific verb and resource, and distinguishes from sibling tools like convert_timezone and convert_units by explicitly referencing currencies and ISO 4217 codes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context (currency conversion with live daily rates) but does not explicitly mention alternatives like convert_batch or provide exclusions. Usage is implied but no when-not-to-use guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_timezoneAInspect
Convert a specific date/time from one IANA timezone to another. Accepts ISO 8601 or natural language ('next Tuesday 3pm'). Returns the converted datetime with its UTC offset, zone abbreviation and DST flag.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Target IANA timezone. | |
| from | Yes | Source IANA timezone. | |
| datetime | Yes | ISO 8601 or natural language, e.g. "2026-07-09T15:30" or "next Tuesday 3pm". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the return payload (converted datetime with UTC offset, zone abbreviation, DST flag) and accepted input formats (ISO 8601 or natural language), which is useful behavioral context. However, it does not mention error behavior or edge cases like invalid timezones.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, with the first stating the core action and the second covering input formats and return value. Every sentence adds value with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given full schema coverage and no output schema, the description sufficiently explains the return format and supported inputs. It doesn't cover batch usage or edge cases, but it is complete enough for a straightforward conversion tool with moderate complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with all three parameters (datetime, from, to) already described. The tool description adds no new parameter-level semantics beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb ('Convert') and resource ('a specific date/time from one IANA timezone to another'), clearly distinguishing it from likely batch siblings like convert_batch. It is unambiguous and specific.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'a specific' implies singular conversion, giving some context, but no explicit guidance on when to use this tool versus alternatives like convert_batch or tz_offset is provided. Usage is implied, not clearly stated with exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
convert_unitsAInspect
Convert a value between units of the same category: length, mass, volume, speed, area, digital storage, time, and temperature (Celsius/Fahrenheit/Kelvin).
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Target unit in the SAME category as 'from', e.g. 'mi', 'km', 'lb', 'F'. | |
| from | Yes | Source unit, e.g. 'km', 'mi', 'kg', 'lb', 'C', 'F', 'GB', 'm/s'. | |
| value | Yes | The numeric value to convert. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that conversions are restricted to same-category units and specifically mentions the three temperature scales, but it does not explain error handling for incompatible units, rounding/precision behavior, or whether unit matching is case-sensitive. This adds some behavioral context beyond the basic purpose, but not enough for full transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single, front-loaded sentence that immediately states the action and scope. Every word adds value, listing categories without superfluous detail. It is perfectly concise for the purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, complete parameter schema, and absence of an output schema, the description is quite complete. It covers the core usage and scope, though it does not explicitly describe the return format (e.g., numeric result) or behavior on invalid input. Still, for a unit converter, this is largely inferable, and the category list provides useful context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides thorough descriptions for all three parameters (100% coverage), so the baseline is 3. The description's category list reiterates what the schema's examples imply but doesn't add new parameter-level detail. It does reinforce the 'same category' constraint, but this is already in the schema's 'to' field description, so no significant extra value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific action ('Convert a value between units') and a well-defined resource (units of the same category) while listing eight concrete measurement categories. This distinguishes it from sibling tools like convert_currency and convert_timezone by explicitly limiting scope to physical/digital units.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It provides explicit context by listing categories and requiring 'same category', which tells the agent when to use this tool. It doesn't explicitly name alternatives (e.g., 'for currency, use convert_currency'), but the category list effectively excludes them, giving clear guidance without needing exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
date_mathAInspect
Timezone-aware date arithmetic: add or subtract a duration to a datetime (days are calendar-based and DST-safe; hours and minutes are absolute), or compute the difference between two datetimes that may be in different zones.
| Name | Required | Description | Default |
|---|---|---|---|
| datetime | Yes | Base datetime: ISO 8601 or natural language. | |
| timezone | Yes | IANA timezone the base datetime is in. | |
| operation | Yes | What to compute: { type:'add', amount, unit } to add/subtract a duration, or { type:'diff', to_datetime, to_timezone? } for the difference between two datetimes. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses an important behavioral nuance: days are calendar-based and DST-safe while hours and minutes are absolute, and it notes that diff can handle two different zones. However, it does not specify the output format/unit for diff, which is a minor gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One dense but well-structured sentence that front-loads the tool's purpose and packs in key clarifications with parentheticals. No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has no output schema, and the description does not state what the return looks like (e.g., a datetime for add, or a duration unit for diff). It covers the operation semantics well but leaves the output contract underspecified for a moderate-complexity tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so baseline is 3. The description adds value by explaining how unit semantics work (calendar days vs absolute hours/minutes), which is not in the schema's enum listing.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Timezone-aware date arithmetic: add or subtract a duration to a datetime... or compute the difference between two datetimes' – a specific verb and resource, and it distinguishes itself from sibling conversion/current-time tools by focusing on arithmetic.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly describes the operations (add/subtract/diff) and the context of timezone-awareness, but does not explicitly name alternatives or when-not-to-use cases. The scope is clear enough, yet no exclusions are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
embedAInspect
Turn text into a numeric embedding vector for semantic search, RAG and similarity. Multilingual.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | Text to embed into a numeric vector for semantic search / RAG. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description is the primary behavioral disclosure. It specifies the output type (numeric embedding vector) and adds the multilingual capability, which are meaningful traits. It does not describe internal model details or edge-case behaviors, but the core transformation is transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences, with the core action front-loaded. Every word contributes.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter embedding tool with no output schema, the description is complete: it states purpose, output type, and applicable use cases. The multilingual note adds useful context without bloat.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The single parameter 'text' has full schema description coverage (100%), and the tool description largely mirrors the schema's explanation. The description adds no additional parameter semantics beyond what the schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('Turn text into') and resource ('numeric embedding vector'), naming concrete use cases (semantic search, RAG, similarity). This clearly differentiates it from sibling text-processing tools like classify or summarize.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context by naming semantic search, RAG, and similarity as intended applications, but it stops short of explicitly contrasting with alternative tools or stating when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extractAInspect
Fetch any public web page and return its main content as clean, token-efficient Markdown (title, description, headings, links, lists). Set render:true to execute JavaScript first for single-page apps or JS-heavy pages that would otherwise come back empty. Built for RAG and for agents that need to read the contents of a URL.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Full http/https URL of the page to extract. | |
| render | No | Render JavaScript with a headless browser before extracting (default false). Enable for SPAs / JS-heavy pages that return empty content otherwise. Slower. | |
| max_chars | No | Truncate the markdown to at most this many characters (sets truncated:true). | |
| include_links | No | Keep hyperlinks in the markdown output (default true). | |
| include_images | No | Keep images as markdown (default false). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses that pages may come back empty without rendering ('would otherwise come back empty'), and explains that render executes JavaScript first. It also notes the output is 'token-efficient Markdown' which implies content cleaning. It does not detail authentication failures, rate limits, or error behavior, but the key behavioral trait is covered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary purpose, and wastes no words. It includes a clear statement of output format, a crucial usage hint, and a target use case. Every sentence earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with 5 parameters and no output schema, the description gives a solid overview of inputs (via schema) and outputs (Markdown with listed components). It mentions the render edge case that could affect expected results. It does not explain truncation behavior, but that is covered in the schema. Overall, it is complete enough for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with detailed descriptions. The tool description adds minimal extra meaning beyond the schema—it restates the render behavior but does not clarify other parameters like max_chars or include_links beyond what the schema already says. Thus the description does not need to compensate, and the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Fetch any public web page and return its main content as clean, token-efficient Markdown'. It uses specific verbs ('Fetch', 'return') and a resource ('web page'), and explicitly lists what the output includes (title, description, headings, links, lists). This eliminates ambiguity and distinguishes it from the sibling tool 'extract_entities'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: 'Built for RAG and for agents that need to read the contents of a URL.' It also gives specific guidance on when to set 'render:true' for JavaScript-heavy pages. However, it does not explicitly mention when not to use the tool or alternatives, so it stops short of a full 'when not' clause.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
extract_entitiesAInspect
Extract named entities from text — people, organizations, locations, dates and miscellaneous — returned as structured JSON.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | The text to extract named entities from. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It states that the tool returns structured JSON, which is a useful behavioral detail, but it does not mention side effects, permissions, language limitations, or any edge cases. For a read-only extraction tool this is adequate but minimally transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that covers the action, the input type, the entity categories, and the output format. Every phrase carries meaning, with no filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one parameter and no output schema, the description gives enough context: it explains the input, the types of entities recognized, and that the result is JSON. It could be more specific about the exact JSON shape or additional options, but it is sufficiently complete for typical use.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the only parameter, 'text', is described in the schema already. The tool description does not add additional parameter semantics beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Extract' and clearly identifies the resource as 'named entities from text', listing the categories (people, organizations, locations, dates, miscellaneous) and stating the output format. This distinguishes it well from the sibling 'extract' tool, making its specialized function unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by explaining what the tool does, but it does not explicitly state when to prefer this tool over alternatives like 'extract', nor does it mention any exclusions or prerequisites. The context is clear enough for straightforward entity extraction, but there is no guidance on alternative selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_meeting_slotsAInspect
Find working-hour time slots that overlap across participants in different timezones for a meeting of a given duration, excluding weekends and (when a country is given per participant) that person's public holidays. Free tier returns at most 1 slot; the paid endpoint returns every matching slot (see 'upgrade' in the response).
| Name | Required | Description | Default |
|---|---|---|---|
| duration | Yes | Meeting duration in minutes. | |
| date_range | Yes | Inclusive date window to search, e.g. { "start":"2026-07-13", "end":"2026-07-17" }. | |
| participants | Yes | The people to meet. Each participant is { timezone (IANA, required), working_hours? { start, end }, country? (ISO alpha-2) }. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the free-tier slot limit, the paid endpoint behavior, weekend/holiday exclusion, and hints at the 'upgrade' field in the response. This provides valuable behavioral context beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences. The first sentence packs the core functionality, and the second adds tier-specific behavior. No superfluous words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the key logic (overlap, working hours, weekends, holidays) and the free/paid tier distinction. It does not specify the exact response structure beyond mentioning 'upgrade', but given the lack of an output schema, it provides a reasonable overview for an agent to invoke the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already describes all 3 parameters with 100% coverage. The description does not add significant new meaning to the parameters, only reiterates the country-based holiday exclusion, so baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses the specific verb 'Find' with a clear resource 'working-hour time slots that overlap across participants in different timezones'. It explicitly states the purpose and differentiates from sibling tools like convert_timezone by focusing on overlap calculation rather than single-time conversion.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description presents a clear scenario for use: scheduling a meeting across participants in different timezones. However, it does not explicitly name alternatives or state when not to use the tool, so it stops short of providing full usage guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
is_holidayAInspect
Check whether a given date is a public holiday in a country (identified by its ISO 3166-1 alpha-2 code), and return the holiday name if so. Backed by an authoritative public-holiday dataset.
| Name | Required | Description | Default |
|---|---|---|---|
| date | Yes | Date "YYYY-MM-DD". | |
| country_code | Yes | ISO country code, e.g. "US", "ES", "IN". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It states that the tool returns the holiday name if the date is a holiday and mentions an authoritative public-holiday dataset, which adds helpful context. However, it does not disclose the exact return format for non-holiday dates, invalid country codes, or edge cases, leaving some ambiguity.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long, immediately states the core purpose, and avoids unnecessary detail. It is well-structured and front-loaded with the action and expected result.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is simple with only two clearly described parameters, and the description covers the main purpose and conditional output. However, because there is no output schema, it would be more complete to explicitly state what happens when the date is not a holiday or when the country code is invalid, which is a minor gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides complete descriptions for both parameters with 100% coverage. The description echoes the ISO 3166-1 alpha-2 code requirement but does not add significant semantic detail beyond what the schema already specifies, so a baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks whether a given date is a public holiday in a specified country and returns the holiday name if applicable. It is specific about the input (date and ISO country code) and the output behavior, making it easily distinguishable from the sibling tools, which are mostly time/date conversion or generic utilities.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear context for when to use the tool: to check if a date is a public holiday in a country. It does not explicitly mention when not to use it or alternative tools, but the intended use case is obvious and no sibling tool directly competes with this functionality.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_timezonesAInspect
List or search valid IANA timezone identifiers, optionally filtered by a city, region or country substring (e.g. 'kolkata', 'america'). Use it to discover the exact identifier to pass to the other tools.
| Name | Required | Description | Default |
|---|---|---|---|
| query | No | Case-insensitive substring filter. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must convey safety and behavior. It mentions read-only operations ('list or search') and filtering, but does not detail output format, potential limits, or other behavioral traits. This is acceptable for a simple list tool but leaves room for more transparency, hence a 3.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, each adding value: the first explains the core action and filter, the second clarifies the purpose. There is no redundancy or filler, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one optional parameter and no output schema, the description covers the essential context: what it does, what the filter does, and why to use it (to get identifiers for other tools). It could optionally mention the return format, but it is sufficiently complete for the tool's simplicity, so a 4 is appropriate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema describes the 'query' parameter as a case-insensitive substring filter, but the tool description adds concrete meaning by specifying it can be a city, region, or country and providing examples ('kolkata', 'america'). This enriches parameter understanding beyond the schema, so it earns a 4.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: to list or search valid IANA timezone identifiers. It uses a specific verb ('list or search') and identifies the resource, but it does not explicitly contrast with sibling tools like lookup_timezone, so it earns a 4 rather than 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides clear usage context: use this tool to discover the exact identifier to pass to other tools. It implies when to use it but does not list exclusions or alternative tools explicitly, which keeps it at a 4.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lookup_timezoneAInspect
Resolve a city or country name to its IANA timezone(s) so you don't need the exact identifier — e.g. 'Delhi' -> 'Asia/Kolkata'. Use it first when you only have a place name.
| Name | Required | Description | Default |
|---|---|---|---|
| city_or_country | Yes | City or country name, or ISO country code. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It indicates a read-only lookup but does not disclose behavior for ambiguous names, multiple matching timezones, or error handling. It does provide an example and notes that results are IANA timezone(s), adding some context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary action and example, and has no filler. Every sentence adds value, making it highly concise and well-structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple nature (1 param, no output schema), the description is mostly complete: it states purpose, usage context, and example. However, it does not specify whether output is a string or array when multiple timezones match, nor how failures are handled, leaving minor gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already provides 100% coverage of the single parameter 'city_or_country' with a clear description. The main description only adds an example ('Delhi'), which is helpful but not substantial beyond the schema definition.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool resolves a city or country name to IANA timezone(s), using a specific verb 'Resolve' and a concrete example ('Delhi' -> 'Asia/Kolkata'). This distinguishes it from sibling tools that likely require exact timezone identifiers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly says 'Use it first when you only have a place name,' providing clear guidance on when to use this tool. It also implies the alternative (knowing the exact identifier) by saying 'so you don't need the exact identifier.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_searchAInspect
Semantically search a memory collection (namespace) and return the most relevant stored entries. The retrieval half of RAG.
| Name | Required | Description | Default |
|---|---|---|---|
| query | Yes | Natural-language query; returns the most semantically similar stored entries. | |
| top_k | No | How many results to return (default 5). | |
| namespace | Yes | The namespace to search within (the same key used on upsert). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must convey behavioral traits. It clearly indicates a read-only retrieval operation ('semantically search', 'return') with no mutation implied. It does not mention ordering, pagination, or error cases, but for a standard search tool the core behavior is transparent enough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is only two sentences: the first states the core function precisely, and the second adds helpful context ('retrieval half of RAG'). No wasted words, and the most important information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity, the absence of an output schema, and the lack of annotations, the description provides sufficient context: it explains what the tool does, the namespace concept, and the RAG relationship. It could mention return format details, but 'most relevant stored entries' is adequate for an agent to understand the expected result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides complete descriptions for all three parameters (query, top_k, namespace) with 100% coverage. The tool description does not add new parameter-level detail beyond what the schema states, so it earns the baseline score.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific action ('semantically search'), a clear resource ('memory collection (namespace)'), and the outcome ('return the most relevant stored entries'). It also distinguishes itself from siblings like memory_upsert by calling itself 'The retrieval half of RAG,' making its role unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'The retrieval half of RAG' implies this tool is for retrieval tasks and suggests a complementary relationship with memory_upsert. However, it does not explicitly state when not to use it or name alternatives, so it falls short of full guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_upsertAInspect
Store a piece of text in a persistent, searchable memory collection (namespace). Embedded and indexed for later semantic recall.
| Name | Required | Description | Default |
|---|---|---|---|
| id | No | Optional stable id to update an existing entry; auto-generated if omitted. | |
| text | Yes | The text/content to store and make searchable. | |
| namespace | Yes | Your collection key — groups and isolates your memories. Treat it like a secret: anyone with it can read/write this collection. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does disclose key behaviors: persistence, searchability, embedding, and indexing. However, it does not mention that 'upsert' can overwrite an existing entry when an id is provided, which is a meaningful behavioral aspect not covered elsewhere.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences deliver the core action and key processing details without any fluff. It is efficient, front-loaded with the verb, and perfectly sized for the tool's simplicity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description adequately covers persistence and semantic recall for a 3-parameter tool with no output schema. It lacks explicit return-value information and does not mention the update capability, but those are partially addressed by the id parameter description, making it reasonably complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all parameters. The description adds context for 'namespace' as a collection key and 'text' as content, but no additional parameter-level detail beyond that, matching the baseline.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool stores text into a persistent, searchable memory namespace, and it mentions embedding/indexing for semantic recall. This is a specific verb+resource and unmistakably distinguishes a write operation from sibling tools like memory_search.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage for saving text for later retrieval but gives no explicit guidance on when to prefer this tool over alternatives like memory_search. There is no mention of when not to use it or any prerequisites, so the guidance is only implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
now_inAInspect
Get the current local time in an IANA timezone, including the UTC offset, zone abbreviation and whether DST is in effect. Use whenever you need to know what time it is 'now' somewhere.
| Name | Required | Description | Default |
|---|---|---|---|
| timezone | Yes | IANA timezone, e.g. 'Europe/Madrid', 'Asia/Kolkata'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the specific outputs (UTC offset, zone abbreviation, DST status) and the real-time 'now' nature, which is useful behavioral context. It does not discuss error handling or invalid timezone behavior, but for a simple read-only tool this is acceptable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the purpose and followed by usage guidance. Every word earns its place with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter tool with a well-described schema and clear purpose, the description adequately states what it does, when to use it, and what information it returns. Minor gaps like explicit return structure or error behavior are not critical given the tool's simplicity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully documents the timezone parameter with format and examples (100% coverage). The description adds no additional parameter-specific detail beyond the schema, meeting the baseline for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb and resource: 'Get the current local time in an IANA timezone'. It also lists the included details (UTC offset, zone abbreviation, DST), distinguishing it from sibling tools like convert_timezone by emphasizing 'now'.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicit usage guidance is provided: 'Use whenever you need to know what time it is now somewhere.' This gives a clear context for when to use, though it does not explicitly name alternatives or exclusions, which would earn a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
priceAInspect
Get live USD spot prices for one or more cryptocurrencies by ticker symbol (e.g. BTC, ETH, SOL).
| Name | Required | Description | Default |
|---|---|---|---|
| symbols | Yes | Comma-separated ticker symbols, e.g. 'BTC,ETH,SOL'. Prices are returned in USD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full transparency burden. It discloses that prices are live and in USD, and 'get' implies a read-only operation. However, it does not disclose potential latency, error behavior for invalid symbols, or any limits on batch size. For a simple lookup tool, this is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence: 'Get live USD spot prices for one or more cryptocurrencies by ticker symbol (e.g. BTC, ETH, SOL).' It is efficient, contains no filler, and includes examples to aid comprehension.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has one required parameter and no output schema, the description is mostly sufficient. It states the purpose and examples, but does not specify the response format (e.g., a map of symbols to prices). Without an output schema, this is a minor gap, but not severe for a simple getter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%: the single parameter 'symbols' is fully described with format and return currency. The description repeats the example tickers but adds no new meaning beyond the schema. Thus the baseline score of 3 is appropriate; the schema already carries the semantic weight.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: getting live USD spot prices for cryptocurrencies by ticker. The verb 'get' and resource 'cryptocurrency prices' are specific, and the examples (BTC, ETH, SOL) help clarify. It distinguishes itself from siblings like convert_currency by focusing on crypto spot prices.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives clear context: use this tool when you need live USD spot prices for cryptocurrencies. The cryptocurrency scope implicitly excludes fiat currencies and other tools like convert_currency. However, it does not explicitly mention alternatives or state 'do not use for fiat', so it falls short of a fully explicit guideline.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
qr_codeAInspect
Generate a QR code for any text or URL. Returns an inline SVG plus a data URI, with selectable size, quiet-zone margin and error-correction level.
| Name | Required | Description | Default |
|---|---|---|---|
| size | No | Pixel size of each QR module/cell in the SVG (default 6). | |
| text | Yes | Text or URL to encode in the QR code. | |
| margin | No | Quiet-zone margin around the code, in cells (default 4). | |
| ec_level | No | Error-correction level: L(7%), M(15%), Q(25%), H(30%). Default M. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of stating behavior. It discloses the return type ('inline SVG plus a data URI') and mentions adjustable options (size, margin, error-correction). It does not mention any side effects, which is acceptable for a pure generation tool, but slightly more detail (e.g., the data URI format) would improve transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The entire description is a single, information-dense sentence. It leads with the action and output, then lists the configurable aspects. Every phrase adds value, with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a straightforward generation tool, the description covers the key aspects: purpose, input type, output format, and available options. Since the schema exhaustively documents parameters and there is no output schema to explain, this is fully complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
All four parameters are fully described in the input schema, so the schema coverage is 100%. The description mentions the parameters in natural language ('selectable size, quiet-zone margin and error-correction level') but does not add new semantic information beyond what the schema already provides. Thus, the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Generate a QR code for any text or URL.' It uses a specific verb (Generate) and identifies the resource (QR code), with no ambiguity. It also specifies the output format, making it easy to distinguish from any even vaguely related tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case: whenever a QR code for text/URL is needed. There are no sibling tools in the list that generate QR codes, so no explicit alternatives are required. It doesn't provide exclusions, but the context is clear enough for selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
relayAInspect
Deliver a webhook (POST/PUT/PATCH a JSON payload to a URL) with guaranteed, retried delivery. Returns immediately with a job_id; AgisHub keeps retrying in the background until it succeeds.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Public http/https URL to deliver the webhook to. | |
| method | No | HTTP method (default POST). | |
| headers | No | Optional extra request headers, e.g. an auth token. | |
| payload | No | JSON body to POST to the target (object, array, string or number). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It discloses asynchronous behavior ('Returns immediately with a job_id'), retry semantics ('keeps retrying in the background until it succeeds'), and delivery guarantee. This adds meaningful context beyond the schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two concise sentences, front-loaded with the primary action, and every clause adds value (methods, payload type, delivery guarantee, async return, retry behavior). No wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and no annotations, the description does well to explain expected return behavior (job_id) and asynchronous execution. It does not detail how to check delivery status, but that may be covered by sibling tools. Overall, it provides sufficient context for an agent to use correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (all 4 properties have descriptions). The description's mention of methods ('POST/PUT/PATCH') and 'JSON payload' correlates with schema fields but does not add significant new parameter-level meaning beyond what the schema already provides. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Deliver a webhook (POST/PUT/PATCH a JSON payload to a URL)'. It uses a specific verb and resource, and distinguishes itself from sibling tools (which are mostly about time, conversion, extraction, etc.) by focusing on webhook delivery.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies clear usage context: use this tool to fire webhooks with guaranteed delivery. It does not explicitly mention alternatives or when-not-to-use, but given its unique role among siblings, the context is clear enough to guide an agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
shortenAInspect
Shorten a long URL into a compact api.agishub.com/s/ link that redirects to the original. Codes are stored for a year.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The long http/https URL to shorten. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the behavioral disclosure burden. It adds useful traits beyond the basic action: the short link redirects to the original, and codes are stored for a year. It does not mention potential side effects like duplicate handling, but for a simple URL shortener the core behavior is transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that efficiently conveys the action, output, and retention period. Every clause earns its place with no redundancy or filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The definition is complete for a one-parameter tool with no output schema: it states what the tool does, what the resulting link looks like, and how long codes persist. The return value is implied clearly as the compact link, so nothing an agent needs to call it correctly is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the input schema already fully documents the only parameter (url), including its format and expected scheme. The description adds no additional semantic meaning beyond what the schema provides, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states a specific verb ('Shorten') and resource ('a long URL'), and specifies the output format ('api.agishub.com/s/<code> link that redirects to the original'). It is unmistakably distinct from all sibling tools, none of which perform URL shortening.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The context is clear: this tool is for shortening http/https URLs, which is sufficient given the absence of any related sibling tools. It does not explicitly mention alternatives or when not to use it, but no close alternatives exist among the listed siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
statusAInspect
Check the delivery status of a webhook job (queued / retrying / delivered / failed) by its job_id.
| Name | Required | Description | Default |
|---|---|---|---|
| job_id | Yes | The job_id returned by webhook_relay. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It does disclose that the tool reports one of four statuses, which gives insight into possible outcomes. However, it does not mention authentication requirements, error behavior for unknown job_ids, or whether the operation is strictly read-only (though 'check' implies it). The description adds some behavioral context but leaves notable gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that front-loads the action and resource, lists the relevant statuses, and names the key parameter. Every word earns its place, with no fluff or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple status-check tool with one parameter and no output schema, the description is fairly complete: it tells you what the tool does, what statuses to expect, and what input is needed. However, it does not describe the output format (e.g., whether it returns just a status string or additional metadata), nor does it address error cases like an invalid job_id. Given its simplicity, this is a minor gap, so 4 is appropriate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already provides 100% coverage for the single parameter job_id, with a clear description that it is returned by webhook_relay. The description's mention of 'by its job_id' adds no additional semantic value beyond what the schema already states. Baseline of 3 is appropriate since the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (check) and the resource (delivery status of a webhook job), and even enumerates the possible statuses (queued/retrying/delivered/failed). It is specific and unambiguous, but it does not explicitly distinguish from sibling tools such as 'relay', which might be seen as the complement. Thus it meets the bar for clear purpose without explicit sibling differentiation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the usage scenario: when you have a job_id from webhook_relay and want to know its delivery status. The parameter schema reinforces this by specifying that job_id is returned by webhook_relay. However, there is no explicit guidance on when to use this tool vs alternatives, nor any stated prerequisites or exclusions, so the guidance is implied rather than explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
summarizeAInspect
Summarize a block of text into a short abstract, with an optional target length. No external API key required.
| Name | Required | Description | Default |
|---|---|---|---|
| text | Yes | The text to summarize. | |
| max_words | No | Approximate maximum length of the summary, in words (default ~80). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses that no external API key is required, which is useful, but it does not explicitly state that the operation is non-destructive, mention any rate limits, or describe how the input is processed. The description is quite minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise and front-loaded with the main purpose, followed by the optional parameter and a key behavioral note. Every word adds value with no waste.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple 2-parameter tool with no output schema, the description is mostly complete. It covers the main function, optional length, and the no-API-key aspect. However, it does not explicitly state the return format (e.g., a string summary), which is a minor gap given the absence of an output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so parameters are already well-documented. The description adds the phrase 'optional target length' which maps to max_words, but it does not provide significant additional meaning beyond the schema's existing descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool 'Summarize a block of text into a short abstract' with a specific verb and resource. It distinguishes from sibling tools by focusing on summarization rather than extraction, classification, or transcription.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when a summary of text is needed, but it does not explicitly compare to alternatives or state when not to use it. No exclusions or alternative tool references are provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
transcribeAInspect
Transcribe an audio file (given by public URL) to text. Handles mp3, wav, m4a, ogg and more.
| Name | Required | Description | Default |
|---|---|---|---|
| audio_url | Yes | Public URL of an audio file (mp3, wav, m4a, ogg, ...) to transcribe to text. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are present, so the description must disclose behavioral traits. It only mentions file format support and does not describe output format, potential latency, size limits, or permissions. This is a significant gap for a tool that performs an asynchronous-like operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys the core action and supported formats without redundancy. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with one parameter and no output schema, the description provides the essential input requirement (public URL) and output type (text). However, it lacks details about the response format or any restrictions, leaving some ambiguity for the agent.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema already fully documents the parameter with a description matching the tool's own text. The description adds nothing beyond the schema, so the baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function with a specific verb ('Transcribe') and resource ('audio file'), and notes supported formats. It's easily distinguishable from the unrelated sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies the use case (transcribing audio to text) but doesn't explicitly state when to prefer this tool over alternatives or provide exclusion criteria. Since no sibling tool performs transcription, it's clear by context, but the description itself lacks explicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tz_offsetAInspect
Get the exact UTC offset of an IANA timezone at a given instant, DST-aware. Correctly handles fractional offsets such as India +05:30 and Nepal +05:45.
| Name | Required | Description | Default |
|---|---|---|---|
| instant | No | ISO 8601 or natural language. Defaults to now. | |
| timezone | Yes | IANA timezone. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses DST awareness and fractional offset handling, which is valuable. However, it does not mention behavior for invalid timezones, return format, or how 'instant' is parsed, leaving some gaps for an agent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the core function, and the second sentence adds meaningful edge-case information without redundancy. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 parameters, no output schema, no nested objects), the description is sufficient for selection. It covers the main behavior and edge cases. A minor gap is not describing the return format, but that is not critical for a read-only offset lookup.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for both parameters, so the baseline is 3. The description adds context about 'at a given instant' but does not provide additional detail beyond the schema's own parameter descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: getting the exact UTC offset of an IANA timezone at a specific instant. It distinguishes itself from sibling tools like convert_timezone by focusing on offset retrieval rather than conversion, and highlights special handling of DST and fractional offsets, which adds specificity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage context: when you need a DST-aware offset for a given instant, and it hints at edge cases like India and Nepal. However, it does not explicitly mention when not to use it or recommend alternatives, so it falls short of a perfect score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
25 tool updates
v2.1.0- First observed
chat - First observed
classify - First observed
convert_batch - First observed
convert_currency - First observed
convert_timezone - First observed
convert_units - First observed
date_math - First observed
embed - First observed
extract - First observed
extract_entities - First observed
find_meeting_slots - First observed
is_holiday - First observed
list_timezones - First observed
lookup_timezone - First observed
memory_search - First observed
memory_upsert - First observed
now_in - First observed
price - First observed
qr_code - First observed
relay - First observed
shorten - First observed
status - First observed
summarize - First observed
transcribe - First observed
tz_offset
TDQS
Scored across 25 tools
Most tools are clearly distinct in purpose, but there are several timezone-related tools (now_in, convert_timezone, convert_batch, tz_offset, list_timezones, lookup_timezone) that could be confusing at first glance. The descriptions help, but the overlap in that domain is noticeable. 'extract' and 'extract_entities' are also somewhat close in name but serve different functions.
All names use snake_case, which is good, but there is inconsistency between verb_noun forms (convert_timezone, list_timezones), single-verb forms (extract, summarize, classify), and noun forms (price, status, qr_code). Some prefixes are repeated (convert_*, memory_*), but overall the pattern is not uniform across the set.
With 25 tools, this server is at the upper bound of what feels reasonable. Each tool seems individually useful, but the set is very broad, spanning timezones, text processing, webhooks, URL utilities, crypto, and more. It feels heavy rather than well-scoped, but not excessively so.
Because the server covers many unrelated domains, it's hard to assess completeness. Within each domain, there are gaps (e.g., memory lacks delete/collection management, webhooks lack cancellation). However, for general-purpose utilities, it offers a wide range of functionality, so the overall surface is not severely incomplete.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Pay-per-use tool API for AI agents. Free tier, x402 USDC micropayments, or API key.
63 pay-per-call tools for agents: vision, text, data, web, blockchain. USDC on Base via x402.
Pay-per-call data APIs for AI agents. USDC on Base via x402. 33 tools, no signup.
x402 toolkit for AI agents: paid web, AI, and Base chain tools per call in USDC. Free tools too.
Related MCP Servers
- AlicenseAqualityDmaintenance22 MCP tools for AI agents: crypto prices and trading signals (53 coins), stock prices and company financials, forex rates and conversion, and web scraping with AI summaries. All powered by x402 USDC micropayments on Base. $0.01-$0.25 per request.2219MIT
- AlicenseNot gradedqualityBmaintenance55+ pay-per-call tools for AI agents over MCP: live telemetry, blockchain/on-chain checks, environmental, transit, finance, and network utilities. No API key or signup — agents pay per request with x402 USDC micropayments (Base and Solana).MIT
- AlicenseBqualityDmaintenanceAn MCP server providing 22 pay-per-call utility tools for AI agents (scrape, validate, embed, store, moderate, notify, convert, prevent loops) without accounts or API keys, using USDC payments via the x402 protocol.17841MIT
- FlicenseNot gradedqualityBmaintenanceAI Agent Hub is a pay-per-call API platform for AI agents Every call is billed automatically in USDC using the x402 protocol - there is no API key, no account, and no signup. Agents get instant access to data queries, file storage, and ad impressions, paying only for what they actually use. The same tools are also exposed natively over MCP, so any MCP-capable agent can discover and call them-