Unstuck
Server Details
Web search, read any page, verify or find emails, screenshots, keyword data. One key, pay per call.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 20 tools
Most tools target clearly distinct resources: business_listings vs business_reviews, domain_check vs domain_info, email_find vs email_verify, and read_page vs screenshot vs pdf_to_text all have non-overlapping inputs or outputs. Some potential overlap exists in lead-generation tools (business_listings, leads_by_tech, tech_stack) and in reviews (business_reviews vs company_reviews), but the descriptions clarify source and use case.
All names use snake_case consistently, mostly following a noun_verb or noun_noun pattern (business_listings, company_financials, domain_check, email_verify, paper_search). Minor deviations like read_page (verb_noun) and screenshot (single noun) keep it from perfect consistency without harming readability.
At 20 tools, the set is on the heavy side for a general-purpose data toolkit, though each tool represents a distinct external data source or action. The breadth is justified by the server's multi-domain scope, but the count falls into the borderline-heavy range where consolidation could improve usability.
The surface covers a wide range of web and business intelligence needs: search, page reading, screenshots, PDF extraction, local business data, SEC filings/financials/insider trades, domain and email checks, SEO keywords, lead generation, tech stack, shopping prices, papers, and vulnerabilities. Minor gaps like social-media data or richer company profile enrichment exist, but core workflows are well supported.
Available Tools
20 toolsbusiness_listingsFind Local BusinessesARead-onlyIdempotentInspect
Find local businesses of a kind in a city, as listed on Google Maps: name, address, phone number, website, star rating and number of reviews. Use it to build a lead list, find competitors, or look up a business's contact details. Price: $0.03 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many businesses, default 10, max 20. | |
| query | Yes | Type of business or name, e.g. "plumbers" or "taco truck". | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| location | No | City and state, e.g. "Houston, TX". Required unless the connection sets a default location. |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| results | Yes | |
| location | Yes | Location searched. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so safety is covered. The description adds real non-annotated context: per-call cost ($0.03 per successful call, failed calls free) and the exact field set returned. It omits rate limits and the free-tier/API-key behavior, which the schema partially covers.
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?
Three tight sentences with zero filler: what it returns first, then when to use it, then cost. Pricing is placed last where it belongs, and nothing is repeated from the schema or annotations.
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?
An output schema exists, so return values need not be explained, and the description still previews them usefully. Coverage of purpose, use cases and cost is complete for a small read-only lookup tool. The one missing piece is sibling routing to business_reviews for review-level detail.
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 query, location, limit and api_key are each fully documented in the schema with examples. The description only echoes 'of a kind in a city', adding no format, default-count, or validation nuance beyond what the schema provides. 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?
States a specific verb and resource ('Find local businesses'), the scope ('in a city'), the data source ('as listed on Google Maps'), and enumerates the returned fields. It is unmistakable what the tool does. It does not distinguish itself from the sibling business_reviews, which touches the same star-rating/review data, so it falls short of a 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?
Gives concrete usage contexts ('build a lead list, find competitors, or look up a business's contact details'), which is clearer than mere implied usage. However, it names no alternatives or exclusions — e.g. routing the agent to business_reviews when it needs review text rather than a listing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
business_reviewsRead Google ReviewsARead-onlyIdempotentInspect
Read the most recent Google reviews of a local business: star rating, what the customer wrote, and the date. Give the business name and city, or a place_id from business_listings. Use it to judge a business's reputation or see what customers complain about. Price: $0.05 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many reviews, default 10, max 20. | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| business | No | Business name, e.g. "Joe's Pizza". Use with location. | |
| location | No | City and state, e.g. "Houston, TX". | |
| place_id | No | Google place_id (from business_listings), instead of name + location. |
Output Schema
| Name | Required | Description |
|---|---|---|
| reviews | Yes | |
| business | Yes | Business name as Google lists it. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
| overall_rating | Yes | Overall star rating, 1 to 5. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/openWorld, so the bar is lower; the description adds genuinely non-obvious context by disclosing the $0.05 per successful call cost and that failed calls are free. It omits freshness guarantees beyond 'most recent' and any rate-limit behavior.
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?
Three tight sentences: what it returns, how to supply input, when to use it, plus cost. Front-loaded with the resource and output fields, with no 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?
An output schema exists so return values need no further explanation, and the description still names the key returned fields. Inputs, usage intent, and pricing are all covered, leaving nothing an agent needs in order to call this 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%, so the schema already documents limit, api_key, business, location and place_id. The description only restates the business/location vs place_id choice, adding no syntax or format detail beyond the schema — 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?
Specific verb ('Read') plus resource ('most recent Google reviews of a local business') and it names the returned fields (star rating, review text, date). It also distinguishes itself from business_listings by citing it as the source of place_id.
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?
Explicitly states the use case ('judge a business's reputation or see what customers complain about') and offers two input routes (name + city, or place_id from business_listings). It stops short of stating when NOT to use it or how it relates to other lookup siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
company_filingsCompany SEC FilingsARead-onlyIdempotentInspect
List a US public company's recent SEC filings (10-K annual reports, 10-Q quarterlies, 8-K current reports, proxies and more) by stock ticker or CIK: form, filing date, period, description and direct document links. Data source: SEC EDGAR public filings (free public data; not affiliated with or endorsed by the SEC). Price: $0.02 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many filings, newest first. Default 10, max 20. | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| form_types | No | Only these form types, e.g. ["10-K","10-Q","8-K"]. Exact match (amendments are "10-K/A"). Default: all forms. | |
| ticker_or_cik | Yes | Stock ticker (e.g. "AAPL", "BRK.B") or the company's numeric SEC CIK (e.g. "320193"). |
Output Schema
| Name | Required | Description |
|---|---|---|
| cik | Yes | 10-digit SEC Central Index Key. |
| source | Yes | |
| company | Yes | Company name as filed. |
| filings | Yes | |
| tickers | Yes | |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and open-world behavior, so the safety profile is covered. The description adds genuinely useful context beyond that: the SEC EDGAR data source, the non-affiliation disclaimer, and the pricing model ('$0.02 per successful call; failed calls are free'), which is behavior an agent cannot get from structured fields. Pagination/limit behavior is left to 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?
Front-loaded with the core action and scope, followed by data source and price in compact sentences. No filler, though the price/disclaimer sentence is somewhat boilerplate-heavy relative to the tool's core 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?
With an output schema present, return values need not be explained, and the description covers source, cost, and lookup keys adequately for a read-only list tool. The main remaining gap is guidance on selecting this tool versus adjacent financial/data siblings.
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 four parameters are documented in the schema itself, establishing a baseline of 3. The description reinforces the ticker-or-CIK duality and lists returned fields, but adds no syntax or format detail (e.g., amendment handling) beyond what the schema already 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?
States a specific verb and resource ('List a US public company's recent SEC filings'), enumerates the form types covered, and names the lookup keys (stock ticker or CIK). An agent can distinguish it from company_financials or insider_trades without opening a schema.
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 via 'by stock ticker or CIK' and the form-type scope, but never says when to choose this over siblings like company_financials or insider_trades, and states no exclusions or prerequisites. Usage is inferable but not spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
company_financialsCompany FinancialsARead-onlyIdempotentInspect
Key financial numbers for a US public company by stock ticker or CIK: revenue, net income, diluted EPS, assets, liabilities, equity and cash (or any XBRL concept you name), latest annual and latest quarterly value with period, form and filing date. Data source: SEC EDGAR XBRL financial data (free public data; not affiliated with or endorsed by the SEC). Price: $0.03 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| metrics | No | XBRL concept names (us-gaap). Default: Revenues, NetIncomeLoss, EarningsPerShareDiluted, Assets, Liabilities, StockholdersEquity, CashAndCashEquivalentsAtCarryingValue. Revenues also checks RevenueFromContractWithCustomerExcludingAssessedTax and SalesRevenueNet. | |
| ticker_or_cik | Yes | Stock ticker (e.g. "AAPL", "BRK.B") or the company's numeric SEC CIK (e.g. "320193"). |
Output Schema
| Name | Required | Description |
|---|---|---|
| cik | Yes | |
| source | Yes | |
| company | Yes | |
| metrics | Yes | |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, openWorld, so the safety profile is covered. The description adds non-obvious behavioral context the annotations cannot: the data source (SEC EDGAR XBRL), the pricing model ($0.03 per successful call, failed calls free), and that results carry latest annual and quarterly values with period/form/filing date.
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?
Front-loaded with the resource and return fields, then source and pricing. Dense but every clause carries information; the SEC non-affiliation disclaimer is the only mildly expendable element.
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?
An output schema exists, so return-shape explanation is unnecessary. The description covers source, cost, default metrics, and value granularity (annual + quarterly with period/form/filing date), leaving only minor gaps such as error/empty-result behavior.
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 both ticker_or_cik and metrics are already documented in the schema, including the default metric set and the Revenues fallback concepts. The description restates the metric examples but adds no syntax or format detail beyond the schema, so 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?
States a specific resource (key financial numbers for a US public company) and the keying method (ticker or CIK), then enumerates the concrete metrics returned. An agent can clearly separate this from company_filings or insider_trades without opening a schema.
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 when the tool fits (getting financial statement values) but never names an alternative or an exclusion condition relative to siblings like company_filings or insider_trades. The default metric list and the 'or any XBRL concept you name' note give context but not routing guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
company_reviewsRead Trustpilot ReviewsARead-onlyIdempotentInspect
Read a company's most recent Trustpilot reviews: star rating, headline, what the customer wrote, date, and whether the company replied, plus its overall rating and review count. Give the company's website domain. Use it to vet a supplier or prospect, or to find a competitor's weak spots. Price: $0.03 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many recent reviews, default 20, max 40. | |
| domain | Yes | The company's website domain, e.g. "example.com". | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. |
Output Schema
| Name | Required | Description |
|---|---|---|
| domain | Yes | |
| company | Yes | Company name as listed on Trustpilot. |
| reviews | Yes | |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
| total_reviews | Yes | Total reviews the company has on Trustpilot. |
| overall_rating | Yes | TrustScore-style average, 1 to 5. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint, so the safety profile is covered. The description adds genuinely non-redundant behavior: the pricing model ($0.03 per successful call, failed calls free) and the exact shape of the returned review fields, which an agent needs for cost/benefit decisions.
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?
Front-loaded with purpose and returned fields, then the required input, then use cases, then cost — every sentence earns its place with no repetition 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 read-only, idempotent lookup with an output schema and full schema coverage, the description supplies everything extra an agent needs: what the reviews contain, the required domain input, intended use cases, and the per-call price. Nothing material 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 schema already documents domain, limit (default 20, max 40) and api_key. The description only reinforces the required 'domain' parameter and omits limit entirely; baseline 3 is appropriate when the schema carries the parameter burden.
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?
States a specific verb and resource ('Read a company's most recent Trustpilot reviews') and enumerates the returned fields (star rating, headline, review text, date, reply status, overall rating, count). Naming Trustpilot specifically differentiates it from the sibling business_reviews without needing the schema.
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?
Gives concrete use cases ('vet a supplier or prospect', 'find a competitor's weak spots'), which tells the agent when this tool is the right choice. It stops short of naming alternatives or stating when not to use it (e.g. versus business_reviews for non-Trustpilot sources), so it falls just short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domain_checkCheck Domain AvailabilityARead-onlyIdempotentInspect
Check if a domain name is available to register. Looks the domain up in the official registry (RDAP) and says whether it is already taken or appears free to buy. Use it to find an available domain for a new business, product, or website name. Price: $0.005 per successful call; failed calls are free. Free to try: a few calls a day without a key.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | The domain name to check, e.g. "mycoolstartup.com". | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | Yes | How to read the answer. |
| domain | Yes | The registrable domain that was checked. |
| source | Yes | Where the answer came from. |
| available | Yes | True if no registration was found. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only, idempotent, open-world and non-destructive behavior, and the description adds genuinely new operational context: a $0.005 per successful call price, free failed calls, a no-key free tier of a few calls a day, and the RDAP source. It also hedges appropriately with 'appears free to buy', signalling registry-lookup limits rather than guaranteeing purchasability.
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?
Purpose and behavior come first, followed by usage and then cost/access details in compact sentences with no filler. Slight redundancy between 'says whether it is already taken or appears free to buy' and the opening availability statement, but the structure is well 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?
An output schema exists, so return-value explanation is unnecessary, and the description still covers the remaining agent-facing unknowns: cost per call, free failures, no-key trial limits, and the data source. Nothing an agent needs in order to decide to call this tool 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 coverage is 100% and both parameters are documented in the schema (including the example domain and the optional api_key/free-trial semantics), so the description is not required to compensate. It adds nothing about parameter formatting or edge cases beyond what the schema already states, matching the baseline for full-coverage schemas.
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?
States a specific verb and resource ('Check if a domain name is available to register') and even names the lookup mechanism (official registry / RDAP), so the agent knows exactly what the tool returns. It does not explicitly differentiate itself from the sibling domain_info, which an agent might reasonably confuse it with, so it falls short of a 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?
Gives a concrete use case ('find an available domain for a new business, product, or website name') that tells the agent when this tool is appropriate. It offers no when-not guidance or named alternatives (e.g. use domain_info when the domain is already registered and you want details), so it stops short of explicit routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
domain_infoDomain, DNS, Email and SSL LookupARead-onlyIdempotentInspect
Look up everything about a domain: WHOIS-style registration data (registrar, creation and expiry dates via RDAP), DNS records (A, AAAA, MX, NS, TXT), email security (parsed SPF and DMARC), and the website's SSL/TLS certificate issuer and expiry date. Use it to research a company's domain, check when a domain or certificate expires, debug DNS or email deliverability, or verify who hosts a site. Price: $0.01 per successful call; failed calls are free. Free to try: a few calls a day without a key.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | The domain or hostname to inspect, e.g. "example.com". | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. |
Output Schema
| Name | Required | Description |
|---|---|---|
| dns | Yes | |
| spf | Yes | Parsed SPF record, or null if none. |
| tls | Yes | Certificate on port 443, or an error. |
| dmarc | Yes | Parsed DMARC record, or null if none. |
| domain | Yes | The host that was inspected. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
| registration | Yes | RDAP registration data, or an error. |
| registrable_domain | Yes | The registrable domain (e.g. example.com). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds genuinely useful non-obvious context the annotations cannot convey: $0.01 per successful call, failed calls free, and a free tier of a few calls per day without a key — a real cost/rate consideration for an agent deciding whether to call.
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 capability list is front-loaded in one dense sentence and the usage sentence follows immediately; the pricing sentence is arguably promotional but is short and decision-relevant. No wasted preamble 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?
With an output schema present, the description need not explain return structure, and it does summarize the data categories returned. Combined with the required domain parameter and the free-tier/pricing note, an agent has enough to call it correctly, though the missing differentiation from 'domain_check' leaves a small routing 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?
Schema description coverage is 100%, so both parameters (domain, api_key) are already documented in the schema, including an example value for domain. The description adds no syntax, normalization, or format guidance beyond what the schema provides, so 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 states a specific verb ('look up') and resource (a domain) and enumerates exactly what is covered: RDAP/WHOIS registration data, DNS records, SPF/DMARC, and SSL certificate issuer/expiry. It does not, however, distinguish itself from the sibling 'domain_check', which sounds like an overlapping capability an agent could confuse it with.
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 gives four concrete usage contexts (research a company's domain, check domain/certificate expiry, debug DNS or email deliverability, verify who hosts a site), which is clear when-to-use guidance. It offers no when-not-to-use or explicit alternative routing, so it stops short of a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
email_findFind a Work Email AddressARead-onlyIdempotentInspect
Find a person's work email address from their name and company website. Tries the usual patterns (first.last, flast, first, and so on), checks each one, and returns the first that is confirmed real, with how confident it is. Says so when the company accepts mail for any address and the guess cannot be confirmed. Use it to reach a specific person at a company. Price: $0.10 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Company domain, e.g. "acme.com". | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| last_name | Yes | Person's last name. | |
| first_name | Yes | Person's first name. |
Output Schema
| Name | Required | Description |
|---|---|---|
| note | Yes | How to read the answer. |
| domain | Yes | The mail domain searched. |
| verified | No | True if best_match was confirmed deliverable. |
| best_match | Yes | The best address found, or null. |
| confidence | Yes | 0 to 1. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
| supplier_calls | Yes | Verification checks made. |
| candidates_checked | Yes | Each address tried and its result. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent/openWorld annotations, it discloses the guessing strategy, that the first confirmed pattern is returned with a confidence value, the catch-all-domain edge case where confirmation is impossible, and the billing model ($0.10 per successful call, failures free). That is exactly the operational detail an agent cannot get from structured fields.
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?
Front-loads the core action, then the algorithm, the edge case, the use case, and finally pricing — a sensible ordering with no filler. It is a touch long, and the "first.last, flast, first, and so on" enumeration is illustrative rather than load-bearing.
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?
With an output schema present, return values needn't be explained, and the annotations cover the safety profile; the description fills in algorithm, confidence, catch-all behavior and cost. The only unaddressed element is the optional api_key parameter's role in this specific tool, which the schema already documents.
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 per-parameter descriptions for first_name, last_name, domain and api_key, so the schema carries the burden. The description only restates that inputs are a name and a company website and adds nothing about formats, length limits, or the api_key/payment behavior. 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?
States a specific verb and resource (find a person's work email) plus the inputs it derives from (name and company website), which cleanly separates it from the sibling email_verify that checks an address already in hand. An agent can pick this tool without opening the schema.
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?
"Use it to reach a specific person at a company" gives a clear usage context, and the description implies the agent should have a name and domain rather than an existing address. It never names the obvious alternative (email_verify) or states when not to use it, so it stops short of explicit routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
email_verifyVerify an Email AddressARead-onlyIdempotentInspect
Check whether an email address is real and safe to send to. Says if it will arrive or bounce (deliverable, undeliverable, risky, unknown), flags throwaway, role-based (info@, sales@), catch-all and free-mail addresses, and suggests a fix for typos like gmail.con. Use it before sending outreach or to clean up a sign-up list. Price: $0.02 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | The email address to check, e.g. "jane@acme.com". | ||
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. |
Output Schema
| Name | Required | Description |
|---|---|---|
| Yes | The address that was checked. | |
| flags | Yes | Address traits. |
| reason | Yes | Why, e.g. mailbox_exists, invalid_syntax, disposable_domain, catch_all. |
| status | Yes | Whether mail to it will arrive. |
| checked_by | Yes | local_precheck = answered by free local checks. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
| did_you_mean | No | Suggested correction for a likely typo. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, open-world), but the description adds genuinely new operational context: per-call pricing ($0.02 per successful call, failed calls free) and the specific risk categories it detects. It does not mention rate limits, latency, or auth failure behavior beyond what the api_key schema field already states.
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?
Three sentences, each earning its place: purpose first, detection categories second, use cases and cost last. No filler or restatement of the title.
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?
An output schema exists, so return values need not be spelled out. For a simple two-parameter read-only lookup, the description supplies purpose, detection scope, intended use, and cost — everything an agent needs to select and call it 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%, with both 'email' and 'api_key' documented in-schema, so the baseline is 3. The description adds no syntax, normalization, or format guidance for the email parameter beyond the schema's own example.
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?
States a specific verb and resource ('Check whether an email address is real and safe to send to') and enumerates the verdicts it returns (deliverable, undeliverable, risky, unknown). That framing clearly separates it from the sibling email_find, which discovers addresses rather than validating them.
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?
Gives concrete when-to-use contexts: 'before sending outreach' and 'to clean up a sign-up list.' It stops short of naming a when-not or an explicit alternative (e.g. use email_find to discover addresses), so it is clear but not fully routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
insider_tradesInsider Trades (Form 4)ARead-onlyIdempotentInspect
Recent insider buying and selling at a US public company, by stock ticker or CIK: who traded (director, officer, 10% owner), transaction date, buy/sell/grant code with its plain meaning, shares, price, and shares held after, parsed from Form 4 filings. An option or RSU that vests shows as two rows in the same filing: the derivative given up and the common stock received. Data source: SEC EDGAR public filings (free public data; not affiliated with or endorsed by the SEC). Price: $0.03 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many recent Form 4 filings to read, newest first. Default 10, max 20. | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| ticker_or_cik | Yes | Stock ticker (e.g. "AAPL", "BRK.B") or the company's numeric SEC CIK (e.g. "320193"). |
Output Schema
| Name | Required | Description |
|---|---|---|
| cik | Yes | |
| source | Yes | |
| company | Yes | |
| filings | Yes | |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
| skipped_filings | Yes | Form 4 filings that could not be read and were left out. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the read-only/idempotent/non-destructive profile, but the description adds real value beyond them: the data provenance (SEC EDGAR, unaffiliated), a per-call cost model ($0.03 per successful call, failed calls free), and the edge case that an option/RSU vest produces two rows in one filing. These are exactly the behavioral facts an agent needs.
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?
Front-loaded with the core purpose, then efficient supporting sentences on the vesting edge case, data source, and pricing. Dense but each sentence carries distinct, useful information; only minor trimming would help.
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?
With an output schema and rich annotations already present, the description still fills the remaining gaps: provenance, cost model, and the two-row vesting behavior. Nothing an agent needs to invoke or interpret the call 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 coverage is 100%, so ticker_or_cik, limit, and api_key are fully documented in the schema itself. The description adds no parameter syntax or format detail beyond what the schema provides, so 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?
States a specific verb+resource (recent insider buying and selling at a US public company), names the identifying key (ticker or CIK), and enumerates the exact fields returned. This clearly distinguishes it from the generic sibling company_filings.
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 makes the use case (insider Form 4 activity) clear, but never names an alternative or states when NOT to use it. It does not route the agent to company_filings for broader filing needs, leaving comparison to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
keyword_volumeKeyword Search VolumeARead-onlyIdempotentInspect
See how many people search Google for each phrase per month, what advertisers pay per click, and how competitive it is. Give up to 100 phrases in one call. Use it to pick keywords for a website, blog post, or ad campaign. Price: $0.15 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| keywords | Yes | Search phrases to look up (up to 100). | |
| language | No | Language code, default "en". | |
| location | No | Country, default "United States" (or the connection's default location). A city or state is reduced to its country. |
Output Schema
| Name | Required | Description |
|---|---|---|
| results | Yes | |
| language | Yes | Language code used. |
| location | Yes | Country the volumes are for. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent, open-world, non-destructive behavior, so the safety bar is covered. The description adds genuinely useful behavioral context beyond that: the 100-phrase batch ceiling and the cost model ($0.15 per successful call, failed calls free). Auth handling is left to the api_key schema field.
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?
Four tight sentences, front-loaded with what the tool returns, followed by capacity, use case, and price. No filler; each sentence carries decision-relevant information.
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?
With an output schema present, return values need no explanation, and annotations carry the safety profile. The description supplies the remaining decision inputs an agent needs: batch capacity, intended use, and cost, making it complete for a read-only data 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%, so all four parameters are already documented. The description only reinforces the batch limit ('up to 100 phrases'), matching maxItems, and adds nothing about language or location defaults beyond what the schema states. 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?
States a specific verb and resource ('how many people search Google for each phrase per month') and enumerates the returned metrics (volume, cost per click, competition). No sibling tool overlaps this function, so the agent can identify it immediately.
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?
Gives a clear context for use ('pick keywords for a website, blog post, or ad campaign') but names no alternatives or exclusion conditions. Since no sibling covers keyword data, the absence of alternatives is low-risk, but explicit when-not guidance is still missing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
leads_by_techFind Leads by TechnologyARead-onlyIdempotentInspect
Build a lead list of websites that use specific software, e.g. every Shopify store using Klaviyo, or dental sites on WordPress, with each site's published phone numbers, emails and social profiles. Ask for as many as you need (default 25, up to 50); you pay only for sites returned. Filter by country and keyword. Use it to find prospects who already use (or need) what you sell. Price: $0.03 per company returned, charged only for what is returned; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many sites to return, default 25, max 50. | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| country | No | Two-letter country code to limit results, e.g. "US", "GB", "CA". | |
| keyword | No | Optional word the site's title or description should mention, e.g. "coffee" or "dental". | |
| technologies | Yes | 1 to 3 technology names, spelled as the product is usually named, e.g. ["Shopify"], ["WooCommerce", "Klaviyo"], ["HubSpot"]. Sites must use all of them. |
Output Schema
| Name | Required | Description |
|---|---|---|
| leads | Yes | |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
| technologies | Yes | |
| total_matching | Yes | How many sites in the database match, before the limit. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations: discloses the pricing model ($0.03 per company returned, charged only for what is returned, failed calls free), the default/cap on results (25/50), and how api_key behaves (leave empty for free tools or to get a payment link). Annotations already cover read-only/idempotent/open-world safety, so this is pure added value.
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?
Front-loaded with the core purpose and a concrete example, then layered with limits, filters, use case and pricing. Slightly redundant in stating the pay-per-returned-site rule twice ('you pay only for sites returned' and again in the Price sentence), which costs a point on tightness.
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?
Covers everything an agent needs for a discovery tool with an output schema present: what it returns (phone, emails, social profiles), how many, cost, and filter surface. Since an output schema exists, return-value detail need not be spelled out further.
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 limit, country, keyword, technologies and api_key with examples and constraints. The description restates the default 25 / up to 50 limit and mentions country/keyword filtering but adds no new syntax or conjunction semantics beyond what the schema says. 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?
States a specific verb and resource ('Build a lead list of websites that use specific software') and immediately grounds it with concrete examples ('every Shopify store using Klaviyo, or dental sites on WordPress'). This distinguishes it from the neighboring per-site tech_stack tool, which inspects one known site rather than discovering sites by technology.
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?
Gives clear intended context ('Use it to find prospects who already use (or need) what you sell') and notes the country/keyword filters, so the agent knows when this is the right tool. It stops short of naming alternatives or stating when NOT to use it (e.g. use tech_stack to inspect a known domain), so not a 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
paper_searchAcademic Paper SearchARead-onlyIdempotentInspect
Search scholarly papers, articles, books and preprints by topic or title: title, authors, year, journal or venue, DOI, link, type and citation count (metadata only, no abstracts). Use it to find sources or citations for a research question. Data source: Crossref. Price: $0.002 per successful call; failed calls are free. Free to try: a few calls a day without a key.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many papers, default 5, max 10. | |
| query | Yes | What to search for, e.g. "microplastics drinking water". | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| from_year | No | Only works published in or after this year. |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| source | Yes | |
| results | Yes | |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
| total_results | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover read-only/idempotent/open-world safety, and the description goes well beyond them: data source (Crossref), metadata-only with no abstracts, pricing ($0.002 per successful call, failures free), and the no-key free tier. These are exactly the operational facts an agent needs before calling.
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 tight sentences: the capability and returned fields come first, then the usage cue, data source and cost. Every clause carries distinct information with no padding.
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?
With an output schema present, return-value detail is unnecessary, and the description covers everything else an agent needs: domain, data source, cost model, free-trial behavior, and the metadata-only limitation. Nothing material 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 limit, from_year and api_key are already documented in the schema. The description adds only that results are metadata-only and searchable by topic or title, which is marginal over the structured fields; 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?
States a specific verb (search) and resource (scholarly papers, articles, books, preprints) and enumerates exactly what is returned: title, authors, year, venue, DOI, link, type, citation count. This is clearly distinguishable from generic siblings like web_search or read_page.
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?
"Use it to find sources or citations for a research question" gives a concrete use context. It does not, however, state when to prefer this over the sibling web_search or note any exclusions, so it stops short of explicit alternative routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
pdf_to_textExtract Text from a PDFARead-onlyIdempotentInspect
Extract the text from a PDF file at a URL and return it as markdown, page by page. Use it to read a PDF, parse a form, report, paper, invoice, or document, or convert a PDF to text. Works on PDFs with a text layer (scanned image-only PDFs return little or no text; no OCR). Price: $0.005 per successful call; failed calls are free. Free to try: a few calls a day without a key.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The http(s) URL of the PDF file. | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | PDF URL after redirects. |
| bytes | Yes | File size in bytes. |
| pages | Yes | Number of pages. |
| title | Yes | Title from the PDF metadata, if any. |
| markdown | Yes | Text as markdown, one "## Page N" section per page. |
| truncated | Yes | True if the text was cut at the size limit. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
| likely_scanned | Yes | True if the PDF looks image-only (little extractable text). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, openWorld), and the description adds genuinely new behavioral facts: the text-layer limitation with no OCR fallback, the $0.005 per successful call price, free failures, and a keyless free trial tier. That is real context an agent cannot get from the annotations or 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?
Three tight sentences, front-loaded with the action and output format, followed by applicability, a hard limitation, and cost/auth terms. No filler and nothing buried that an agent needs to decide whether to call.
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?
An output schema exists, so return-value documentation is not required, yet the description still names the markdown/page-by-page format. Combined with the OCR limitation, pricing, and auth notes, an agent has everything needed to call this correctly or route elsewhere.
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, including maxLength constraints, so the structured fields already do the work. The description only implies the URL input and hints at keyless usage via the free-tier note; it adds no syntax or format detail beyond the schema. 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?
States a specific verb and resource ('Extract the text from a PDF file at a URL') plus the output shape ('return it as markdown, page by page'). This distinguishes it cleanly from siblings like read_page and screenshot, which operate on web pages rather than PDFs.
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?
Provides concrete use cases ('read a PDF, parse a form, report, paper, invoice, or document, or convert a PDF to text') and an explicit when-not condition: scanned image-only PDFs are unsupported because there is no OCR. It stops short of naming a sibling alternative, but the usage envelope is unambiguous.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_pageRead web pageARead-onlyIdempotentInspect
Fetch any URL and get the page's main content as clean markdown. Renders JavaScript in a real browser, so it works on modern sites where a plain fetch returns nothing. Use to read articles, docs, product pages or search results. Price: $0.005 per successful call; failed calls are free. Free to try: a few calls a day without a key.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The http(s) URL of the web page to read. | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | Page URL after redirects. |
| lang | Yes | Page language, if declared. |
| title | Yes | Page or article title. |
| byline | Yes | Author line, if found. |
| markdown | Yes | The readable content as markdown. |
| site_name | Yes | Site name, if found. |
| truncated | Yes | True if the markdown was cut at the size limit. |
| extraction | Yes | article = main content detected; body = whole page text. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, openWorld and non-destructive, yet the description adds real behavioral context beyond them: JavaScript is rendered in a real browser, so results differ from a plain fetch, plus the cost model ($0.005 per successful call, failures free) and an unauthenticated free tier. These are operational facts an agent cannot infer from structured fields.
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?
Four short sentences, each earning its place: capability, differentiator, use cases, cost/free tier. The core capability is front-loaded and nothing is redundant with the schema or annotations.
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?
An output schema exists, so return-format detail is unnecessary, and the description covers the remaining agent-relevant unknowns: rendering behavior, cost, and authentication/free-try mechanics. Nothing needed 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% and both parameters (url, api_key) are documented in the schema itself, so the description adds nothing parameter-specific. Per the baseline rule for high coverage, a 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?
States a specific verb and resource ('Fetch any URL and get the page's main content as clean markdown') and immediately differentiates from sibling readers by noting JS rendering in a real browser. An agent can distinguish it from screenshot, pdf_to_text, or web_search without opening any schema.
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?
Gives concrete usage contexts ('read articles, docs, product pages or search results') and implicitly scopes it to modern JS-heavy sites where a plain fetch fails. It does not explicitly name when to prefer a sibling like web_search or screenshot instead, so it stops short of full when-not guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
screenshotScreenshot a Web PageARead-onlyInspect
Take a screenshot of a website. Open any web page URL in a real browser and capture it as a PNG image, either the visible area or the full page. Use it to see what a site looks like, check a page layout, or capture visual proof of a web page. Price: $0.01 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The http(s) URL of the web page to capture. | |
| width | No | Viewport width in pixels (default 1280). | |
| height | No | Viewport height in pixels (default 800). | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| full_page | No | Capture the whole scrollable page instead of just the viewport (capped at 10000px tall). |
Output Schema
| Name | Required | Description |
|---|---|---|
| url | Yes | Link to the PNG, valid for 24 hours. |
| bytes | Yes | PNG size in bytes. |
| title | Yes | Page title. |
| width | Yes | Viewport width used, in pixels. |
| final_url | Yes | Page URL after redirects. |
| expires_at | Yes | When the link expires (ISO 8601). |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, openWorld, non-idempotent, non-destructive, so the safety profile is covered. The description adds genuinely new context beyond that: the pricing model ($0.01 per successful call, failed calls free) and the fact it uses a real browser, both operationally relevant. It doesn't mention rate limits or latency.
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?
Four tight sentences with the core action and output front-loaded, followed by use cases and cost. No filler; every sentence carries information an agent can act on.
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?
With an output schema present the return format needn't be described, and the description covers action, use cases, auth (via the api_key param), and cost. Slightly incomplete on failure/pagination behavior for a paid external call, but otherwise self-contained.
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%, so parameters are self-documented and the baseline is 3. The description adds meaning beyond the schema by explaining the viewport-vs-full-page choice ('either the visible area or the full page'), reinforcing the full_page flag's purpose.
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?
States a specific verb and resource (take a screenshot of a website, open any web page URL in a real browser) and names the output artifact (PNG image), with the viewport/full-page distinction. The 'capture as image' framing cleanly separates it from text-oriented siblings like read_page and web_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?
Gives clear use cases ('see what a site looks like, check a page layout, or capture visual proof'), which tells the agent when this tool fits. It stops short of naming alternatives (e.g., use read_page for extractable text) 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.
shopping_pricesCompare Shopping PricesARead-onlyIdempotentInspect
Compare what stores charge for a product right now. Returns the Google Shopping listings with price, currency, seller and link. Listings are as Google shows them and can include used, refurbished, rental and bundle offers, so check the title and seller before treating a price as the going rate. Use it to check competitor pricing or find the going rate before buying or listing something. Price: $0.25 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| product | Yes | The product to price, e.g. "sony wh-1000xm5". | |
| location | No | Country or place, e.g. "United States". Default "United States" (or the connection's default location). |
Output Schema
| Name | Required | Description |
|---|---|---|
| product | Yes | |
| results | Yes | |
| location | Yes | Location the prices are for. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, idempotent and open-world, but the description adds information the structured fields cannot: listings can include used, refurbished, rental and bundle offers, so titles and sellers must be inspected before trusting a price, plus a per-call cost model ($0.25 per successful call, failed calls free).
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?
Four sentences, each doing distinct work: purpose, return shape, data-quality caveat, intended use, cost. The core purpose is front-loaded and nothing is redundant.
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?
With an output schema present, return values need not be re-explained, yet the description still sketches the payload. Combined with the cost note and the offer-quality caveat, an agent has everything needed to decide and invoke 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%, with product, location and api_key all documented including defaults and examples, so the schema carries the parameter burden. The description adds no location/product formatting guidance beyond what the schema already says, matching the 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?
States a specific verb ('Compare') and resource ('what stores charge for a product right now') and immediately clarifies the return payload (Google Shopping listings with price, currency, seller, link). No sibling tool covers price comparison, so it is unambiguously distinct.
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?
Gives concrete usage contexts: checking competitor pricing or finding the going rate before buying or listing. However, it names no alternatives or conditions under which another sibling (e.g. web_search) would be preferable, so it falls short of an explicit when-not.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
tech_stackWebsite Tech StackARead-onlyIdempotentInspect
See what a website is built with: its store platform (Shopify, WooCommerce), CMS (WordPress), email marketing, analytics, payments, hosting and more, plus the phone numbers, emails and social profiles published on the site. Use it to qualify a sales lead, size up a competitor, or find out what software a company already pays for. Data comes from a regularly refreshed web crawl, not a live visit; last_checked says when the site was scanned, and small or new sites may show only part of their stack. Price: $0.05 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| domain | Yes | Website domain, e.g. "example.com" (a full URL also works). | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. |
Output Schema
| Name | Required | Description |
|---|---|---|
| title | Yes | The site's page title. |
| domain | Yes | |
| emails | Yes | Email addresses published on the site. |
| country | Yes | Country code the site is associated with, e.g. US. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
| description | Yes | The site's meta description. |
| last_checked | Yes | When the site was last scanned (UTC). |
| social_links | Yes | Social media profile links found on the site. |
| technologies | Yes | Technologies detected on the site. |
| phone_numbers | Yes | Phone numbers published on the site. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial behavior beyond the annotations: the data comes from a refreshed crawl rather than a live visit, 'last_checked' indicates scan time, small/new sites may show only partial stacks, and pricing is $0.05 per successful call with failed calls free. With readOnly/idempotent/openWorld already declared, this freshness, coverage, and cost disclosure is exactly the extra context an agent needs.
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?
Content is front-loaded: what the tool returns first, then use cases, then freshness caveats, then price. Sentences carry distinct information, though the dense enumeration of categories makes the opening clause long.
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?
An output schema exists so return fields need not be explained, and the description still covers data provenance, freshness caveats, partial-result risk, and cost. Nothing an agent needs to call this 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%, and the schema itself documents both 'domain' (format and URL tolerance) and 'api_key' (when to leave empty). The description adds no additional parameter semantics, so 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?
States a specific verb and resource ('See what a website is built with') and enumerates the returned categories — store platform, CMS, email marketing, analytics, payments, hosting, plus contact/social data. This clearly separates it from siblings like domain_info or leads_by_tech, though no sibling is named explicitly to sharpen the contrast.
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?
Gives concrete usage contexts: 'qualify a sales lead, size up a competitor, or find out what software a company already pays for.' That is clear when-to-use guidance, but it offers no exclusions or named alternatives (e.g., when to prefer leads_by_tech or domain_info instead).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
vulnerability_lookupCVE Vulnerability LookupARead-onlyIdempotentInspect
Look up a security vulnerability by CVE id, or search CVEs by keyword (product, library, attack; newest first): description, CVSS score and severity, published and modified dates, affected vendors/products, CWE weaknesses, known-exploited flag and reference links. Data source: NVD. This product uses data from the NVD API but is not endorsed or certified by the NVD. Price: $0.002 per successful call; failed calls are free. Free to try: a few calls a day without a key.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max results for a keyword search. Default 5, max 10. | |
| cve_id | No | Exact CVE id, e.g. "CVE-2021-44228". Give this or keyword. | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| keyword | No | Words to search CVE descriptions for, e.g. "log4j remote code execution". |
Output Schema
| Name | Required | Description |
|---|---|---|
| order | Yes | Keyword results are newest first unless NVD's rate limit forced the oldest page. |
| notice | Yes | |
| source | Yes | |
| results | Yes | |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
| total_results | Yes | Total matches in NVD (keyword searches may have more than returned). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, openWorld and non-destructive, so the safety profile is covered. The description adds genuinely useful non-structured context: the NVD data source, a per-call price of $0.002 with free failed calls, and a keyless free tier.
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 core purpose and search semantics are front-loaded in the first clause; the returned-fields list and pricing are compact. The mandatory NVD endorsement disclaimer is boilerplate that costs a sentence, but the rest 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?
An output schema exists, so return-value detail is not required, yet the description still enumerates the key fields (CVSS, severity, CWE, known-exploited). Combined with annotations covering safety and the description covering pricing and data provenance, an agent has what it needs to call 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% (limit default/max, cve_id pattern and example, keyword length and example, api_key purpose), so the schema carries the parameter burden. The description adds no parameter syntax beyond what the schema already documents, matching the 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?
States a specific verb ('look up'/'search') and resource (security vulnerability / CVEs), and clearly names both invocation modes (exact CVE id vs. keyword search). No sibling tool in the list covers CVEs, so it is trivially distinguishable.
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 two modes are named and the keyword example ('product, library, attack; newest first') hints at search semantics, but there is no explicit rule for choosing cve_id over keyword or any when-not guidance. Usage is implied rather than stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
web_searchWeb searchARead-onlyIdempotentInspect
Search the web and get the top results (title, URL, snippet) as clean JSON. Live Google results, any country or city. Use when you need current information, sources, or links. Price: $0.01 per successful call; failed calls are free.
| Name | Required | Description | Default |
|---|---|---|---|
| num | No | How many results, default 10, max 20. | |
| query | Yes | What to search for. | |
| api_key | No | Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link. | |
| location | No | Country or place to search from, e.g. "Houston, TX". Default "United States" (or the connection's default location). |
Output Schema
| Name | Required | Description |
|---|---|---|
| query | Yes | |
| results | Yes | |
| location | Yes | Location searched from. |
| balance_usd | Yes | Remaining prepaid balance, USD. |
| charged_usd | Yes | Amount charged for this call, USD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare read-only, open-world, idempotent, and non-destructive behavior. The description adds meaningful context beyond those: the output fields returned, that results are live Google results, and the pricing model ($0.01 per successful call, failed calls free). It does not cover auth requirements or rate limits, but the cost disclosure is valuable.
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?
Four short sentences, front-loaded with the core action and output, then scope, usage context, and cost. Every sentence carries distinct information and there is 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 straightforward web search tool with a full schema, rich annotations, and an output schema, the description covers purpose, output shape, scope, usage context, and cost. Nothing essential for correct invocation 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 schema already documents all four parameters. The description adds only marginal semantic detail ('any country or city' loosely maps to location), so the baseline 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 (Search), resource (the web), and output shape (title, URL, snippet as clean JSON), plus scope (live Google results, any country or city). It clearly distinguishes the tool from siblings like paper_search or read_page in practice, but does not explicitly name or contrast any sibling.
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 gives a clear when-to-use condition: 'Use when you need current information, sources, or links.' This is direct context for selecting the tool, but it offers no when-not-to-use guidance or explicit alternatives among the many sibling tools.
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.
6 tool updates
- Added
company_filings - Added
company_financials - Added
company_reviews - Added
insider_trades - Added
leads_by_tech - Added
tech_stack
14 tool updates
- Changed
business_listings1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
business_reviews1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
domain_check1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
domain_info1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
email_find1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
email_verify1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
keyword_volume1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
paper_search1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
pdf_to_text1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
read_page1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
screenshot1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
shopping_prices1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
vulnerability_lookup1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
- Changed
web_search1 field changed- added
Input schema / properties / api_keyAdded value: +{ + "description": "Your Unstuck API key, if this connection has none. Leave empty to try free tools or to get a key and payment link.", + "maxLength": 200, + "type": "string" +}
4 tool updates
- Removed
company_filings - Removed
company_financials - Removed
insider_trades - Removed
weather_forecast
6 tool updates
- Added
company_filings - Added
company_financials - Added
insider_trades - Added
paper_search - Added
vulnerability_lookup - Added
weather_forecast
2 tool updates
- Removed
google_results - Added
web_search
12 tool updates
- First observed
business_listings - First observed
business_reviews - First observed
domain_check - First observed
domain_info - First observed
email_find - First observed
email_verify - First observed
google_results - First observed
keyword_volume - First observed
pdf_to_text - First observed
read_page - First observed
screenshot - First observed
shopping_prices
Related MCP Connectors
30+ web-access and AI APIs behind one key: search, scraping, browsers, voice, OCR and LLMs.
Web search, email verify, KYC, sanctions, stocks, SEC, crypto, news, data: 63 pay-per-call tools
Pay-per-call web search, keyword trends, and evidence-backed public-page change intelligence.
One key to 1,000+ paid data APIs: enrichment, SEO/SERP, scraping, places, news. Pay per call.
Related MCP Servers
AlicenseAqualityAmaintenanceEnables AI agents to convert files, render web pages to markdown/PDF/screenshots, search the live web, extract structured data, ingest RAG-ready chunks, and monitor pages for changes through a single API key.24146 npm7MIT- AlicenseNot gradedqualityDmaintenanceWeb search, clean page reading & one-call research dossiers for AI agents. No API key — your agent does the synthesis.57 npmMIT
- AlicenseNot gradedqualityDmaintenanceEnables web search for AI agents with pay-per-search in USDC, no API keys needed.MIT
- AlicenseAqualityAmaintenanceEnables AI agents to perform web searches, fetch and extract page content, and crawl sites with caching, rate limiting, and robots.txt compliance, all without needing API keys.11200 PyPI1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.