Hagglyai
Server Details
Find the best pay-per-call API for any task: price, uptime and real usage across 19,000+ APIs.
The last two health checks of this connector failed. If this server requires authentication, missing or expired test credentials may be the cause. A test profile lets Glama authenticate for health checks and discover tools; it is separate from your personal connections.
If you are the author, claim ownership, then add or update a test profile under Admin → Test Profile.
- Status
- Unhealthy
- Uptime
- 95.8% over 15 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 5 tools
find_best, compare_category, and most_popular all operate over the same category-ranked corpus, so an agent could plausibly hesitate between them, but each description states its distinct output shape (single pick vs. full ranked list vs. top-3 by paying users). check_endpoint and list_categories are clearly separate. The boundaries are good, though the three recommendation tools share enough machinery to warrant careful reading.
Four of five names follow a clean verb_noun pattern (check_endpoint, compare_category, find_best, list_categories). most_popular breaks the pattern by using an adjective+noun phrase with no verb, a minor deviation that is still readable and unambiguous.
Five tools is well-scoped for an API directory/discovery service, and each one covers a genuinely different query mode (single recommendation, ranked comparison, popularity, category index, trust check). Nothing looks padded or redundant.
The discovery-and-trust lifecycle is largely covered: enumerate categories, recommend, compare, gauge popularity, and vet an arbitrary URL. Minor gaps remain — there is no way to look up a specific API by id/name (only by URL via check_endpoint), and no way to submit or read user feedback beyond aggregate usage counts.
Available Tools
5 toolscheck_endpointCheck an API before paying itARead-onlyInspect
Call this before paying a specific API URL you were given or found elsewhere, to see whether it can be trusted: Hagglyai's reliability score and recent check history, its price per call, how many paying users it has, and any warnings (for example a payment wallet that does not match the seller). It never calls the URL. Hagglyai API documentation: https://hagglyai.com/openapi.json
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | The API's URL, exactly as you would call it |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered; the description adds a genuinely valuable guarantee that it never calls the URL, dispelling the assumption that this probes the endpoint live. It also discloses the shape of the verdict (score, history, price, warnings such as a mismatched payment wallet). It omits what happens for an unvetted or unknown URL and any auth or rate-limit constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One front-loaded sentence opens with the imperative "Call this before paying," then packs the return contents and the non-invocation guarantee without waste. The documentation link sits at the end where it does not interrupt the decision-making content.
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 no output schema, the description carries the burden of describing return values and does so explicitly, which is the main gap it needed to fill. Minor omission: no statement of behavior when the URL has never been checked or is not in the registry.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the schema itself explains the url format ("exactly as you would call it"), so the single parameter is fully documented. The description's "you were given or found elsewhere" only adds the sourcing scenario, not new syntax.
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 (check) plus a specific resource (a given API URL), and it enumerates exactly what comes back: reliability score, recent check history, price per call, paying-user count, and warnings. That clearly separates it from the discovery siblings (find_best, most_popular, list_categories, compare_category), which operate on categories rather than a known URL.
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?
"Call this before paying a specific API URL you were given or found elsewhere" supplies a concrete trigger condition and scopes the input to a known URL rather than a category. It never names a sibling as the alternative, so the routing to find_best/most_popular is left implicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_categoryCompare APIs in a categoryARead-onlyInspect
Call this to weigh the options in one area instead of taking find_best's single recommendation, or when the user asks "which is the cheapest / most reliable X API?". Returns every tracked API in the category ranked by score, with price per call, reliability, usage and any warnings. Category ids: web-search, web-extraction, llm-inference, crypto-prices, onchain-data, enrichment, weather, news, social-media, jobs, ecommerce, maps-places, translation, messaging, travel, stocks, pdf-generation, captcha-solving, sports-data. Narrow by platform or task ids from list_categories. Free, read-only and quick: it never calls or pays the APIs it describes.
| Name | Required | Description | Default |
|---|---|---|---|
| rail | No | Paid rails to include, e.g. ["x402"] for pay-per-call only (default both) | |
| task | No | Sub-category task ids, any of, e.g. ["comments"]. See list_categories | |
| limit | No | ||
| recent | No | true = only endpoints checked in the last 7 days | |
| category | Yes | Category id, e.g. 'web-search' | |
| platform | No | Sub-category platform ids, any of, e.g. ["instagram","tiktok"]. See list_categories | |
| hide_flags | No | Warnings to leave out, e.g. ["wallet-mismatch", "few-repeat-buyers"] | |
| max_price_usd | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds useful behavior beyond the readOnlyHint/openWorldHint annotations: it is free, read-only, quick, and never calls or pays the APIs it describes. It also summarizes the return contents, though it does not describe pagination or how limit interacts with the claim of returning every tracked API.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the primary use case and alternative tool, then moves to return values, valid categories, narrowing guidance and cost/safety behavior. The long category list is practical because category is required and the schema does not enumerate valid values.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema and only basic annotations, the description does a good job explaining what is returned and why to call it. It is not fully complete because it omits several optional filters and their effects, but that gap is partly mitigated by the schema descriptions.
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 75%, so the schema already documents several filters. The description adds meaningful semantics by enumerating valid category ids and explaining that platform/task ids should come from list_categories, though it does not cover limit, max_price_usd, recent, rail or hide_flags.
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 and resource: compare APIs in a category and return every tracked API ranked by score with price, reliability, usage and warnings. It also explicitly distinguishes this from find_best's single recommendation, so an agent can identify the tool's role 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?
It gives clear usage contexts: weigh options in one area instead of taking find_best's single recommendation, or when the user asks which API is cheapest or most reliable. It names the alternative tool and points to list_categories for platform/task ids, leaving little inference needed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_bestFind the best API for a taskARead-onlyInspect
Call this when a task needs an outside API or data source and you have not picked one, e.g. "search the web", "scrape this page to markdown", "get the BTC price", "Instagram comments for a post", "flight prices", "generate a PDF", "solve a captcha", "translate this text". Returns the recommended pay-per-call API with its price per call, reliability score and real usage, plus ranked alternatives and a link to each. Covers Web search; Web page extraction; LLM inference; Crypto prices & market data; On-chain data; People & company enrichment; Weather; News; Social media data; Job listings; Products & prices; Maps & places; Translation; Email, SMS & messaging; Flights & travel; Stocks & forex; PDF generation; Captcha solving; Sports data. Free, read-only and quick: it never calls or pays the APIs it describes.
| Name | Required | Description | Default |
|---|---|---|---|
| task | Yes | The job in plain words, as the user would put it, e.g. "scrape TikTok comments" or "weather forecast for a city" | |
| recent | No | true = only endpoints checked in the last 7 days | |
| hide_flags | No | Warnings to leave out, e.g. ["wallet-mismatch", "few-repeat-buyers"] | |
| max_price_usd | No | Budget per call in USD, e.g. 0.01 |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, but the description adds real value: 'never calls or pays the APIs it describes' clarifies there is no cost or side effect on third-party services, and it describes the return contents (price per call, reliability score, usage, ranked alternatives, links). It could still say more about failure modes when no match is found, so not a 5.
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 routing condition is front-loaded and the return explanation follows logically; every part is relevant. The long enumerated category list is the one slightly bloated section, though it does usefully signal coverage breadth.
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?
There is no output schema, so the description must explain the return value, and it does so concretely (recommended API plus price, reliability, real usage, ranked alternatives and links). Combined with its usage trigger and coverage list, an agent has everything needed to call and interpret this tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each of the four parameters (task, recent, hide_flags, max_price_usd) is already documented in the schema itself. The description adds no parameter-level 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?
The description gives a specific verb and resource ('find/recommend the best API for a task') and frames the situation precisely: a task needs an outside API and the agent has not yet picked one. That framing implicitly separates it from the check_endpoint/compare_category siblings, and the concrete example tasks make the scope unmistakable.
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 states exactly when to call it ('when a task needs an outside API or data source and you have not picked one') and backs that up with a dozen representative example tasks. It does not explicitly name alternative siblings or when-not to use it, which keeps it 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.
list_categoriesWhat Hagglyai coversARead-onlyInspect
Call this to see whether Hagglyai can help with a need, or to get ids for compare_category and most_popular: every category with how many APIs it tracks, the cheapest price per call, and its platform and task sub-categories (e.g. instagram, comments).
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered; the description adds that this returns the entire catalog with counts, pricing, and sub-categories, which tells the agent what a call yields. It does not discuss result size, ordering, or freshness, but for a zero-parameter read that is a minor gap.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that leads with the action and reason before enumerating returned fields. It is dense but every clause (coverage check, id source, returned fields, example sub-category) 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?
With no output schema, the description must convey the return shape, and it does: categories with API counts, cheapest price, platform and task sub-categories. It stops short of stating whether the whole catalog is returned in one call or how large the response is, which is the only missing operational 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?
The tool takes no parameters, so there is nothing to disambiguate; the description correctly spends no space on inputs. Baseline 4 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 the specific resource (the full category catalog) and what each entry contains: API counts, cheapest price per call, platform and task sub-categories. It also distinguishes itself from siblings by naming the two tools that consume the ids it returns (compare_category, most_popular).
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 two explicit use cases — checking whether Hagglyai can serve a need, and obtaining category ids for compare_category / most_popular. That is a clear when-to-use statement with named downstream alternatives, leaving little to infer.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
most_popularMost popular APIs in a categoryARead-onlyInspect
Call this when the user asks what other people use, or wants a safe, proven choice: the 3 APIs in a category with the most paying users in the last 30 days, "Most popular" first. APIs with warnings are held back and named. Category ids: web-search, web-extraction, llm-inference, crypto-prices, onchain-data, enrichment, weather, news, social-media, jobs, ecommerce, maps-places, translation, messaging, travel, stocks, pdf-generation, captcha-solving, sports-data. Free, read-only and quick: it never calls or pays the APIs it describes.
| Name | Required | Description | Default |
|---|---|---|---|
| rail | No | Paid rails to include, e.g. ["x402"] for pay-per-call only (default both) | |
| task | No | Sub-category task ids, any of, e.g. ["comments"]. See list_categories | |
| recent | No | true = only endpoints checked in the last 7 days | |
| category | Yes | Category id, e.g. 'web-search' | |
| platform | No | Sub-category platform ids, any of, e.g. ["instagram","tiktok"]. See list_categories | |
| hide_flags | No | Warnings to leave out, e.g. ["wallet-mismatch", "few-repeat-buyers"] | |
| max_price_usd | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnlyHint/openWorldHint annotations, it discloses cost ('free'), latency ('quick'), and a key non-obvious behavior: it never calls or pays the APIs it describes. It also explains that flagged APIs are held back and named rather than silently dropped, and pins the ranking window to 30 days.
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 trigger and ranking rule are front-loaded, and the closing cost/read-only sentence earns its place. The 19-item category enumeration is useful but bulky and the middle sentences run long, making it denser than ideal.
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 7-parameter, 1-required read tool with no output schema, it covers ranking definition, ordering, flag handling, cost, and valid category values. It does not describe what each returned entry contains or how the filter parameters reshape the result set, leaving a modest 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 coverage is 86%, so the baseline is 3, and the description earns an upgrade by enumerating the valid category ids, which the schema only illustrates with a single example. It also ties hide_flags to the 'warnings held back and named' behavior, though rail, task, platform, recent, and max_price_usd go unmentioned.
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 names a specific resource and ranking rule: the 3 APIs in a category with the most paying users in the last 30 days, ordered 'Most popular' first. That is concrete enough to separate it from find_best or compare_category in practice, but it never names those siblings, so the differentiation is inferred rather than stated.
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 an explicit trigger ('when the user asks what other people use, or wants a safe, proven choice'), which is a clear usage context. It offers no when-not guidance and no named alternative for cases like price comparison or single-endpoint inspection, which the sibling tools would cover.
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.
2 tool updates
- Changed
check_endpoint1 field changed- changed
Input schema / properties / url / descriptionPrevious value: -"The endpoint URL, exactly as listed"New value: +"The API's URL, exactly as you would call it"
- Changed
find_best2 fields changed- changed
Input schema / properties / max_price_usd / descriptionPrevious value: -"Budget per call in USD"New value: +"Budget per call in USD, e.g. 0.01" - changed
Input schema / properties / task / descriptionPrevious value: -"What the agent needs to do"New value: +"The job in plain words, as the user would put it, e.g. \"scrape TikTok comments\" or \"weather forecast for a city\""
1 tool update
- Added
most_popular
1 tool update
- Changed
compare_category3 fields changed- added
Input schema / properties / platformAdded value: +{ + "description": "Sub-category platform ids, any of, e.g. [\"instagram\",\"tiktok\"]. See list_categories", + "items": { + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / railAdded value: +{ + "description": "Paid rails to include, e.g. [\"x402\"] for pay-per-call only (default both)", + "items": { + "enum": [ + "x402", + "apify" + ], + "type": "string" + }, + "type": "array" +} - added
Input schema / properties / taskAdded value: +{ + "description": "Sub-category task ids, any of, e.g. [\"comments\"]. See list_categories", + "items": { + "type": "string" + }, + "type": "array" +}
4 tool updates
- First observed
check_endpoint - First observed
compare_category - First observed
find_best - First observed
list_categories
Publisher details
- Operator
- hagglyai.com · Publisher source
- Operator website
- https://hagglyai.com · Publisher source
- Vendor relationship
- Not available
- Documentation
- https://hagglyai.com/for-agents · Publisher source
- Trust center
- Not applicable
- Restrictions
- Not applicable
Related MCP Connectors
Discover and call pay-per-request (x402) APIs, ranked by reliability, latency and price.
20+ pay-per-use APIs: image gen, crypto data, email verify, SSL check, web scraping, and more.
Search 1,500+ public APIs with docs, code and auth/free-tier filters; list or sponsor your API.
Discover, compare, and monitor 1,400+ APIs directly from your AI coding agent.
Related MCP Servers
- AlicenseAqualityBmaintenanceThe API layer for AI agents. World's biggest API index with 22,000+ APIs and growing. Agents discover and call APIs at runtime with semantic search, structured metadata, and 18 Direct Call APIs including AI providers.14602 npm8MIT
- FlicenseNot gradedqualityCmaintenancePay-per-use tool marketplace for AI agents. Search, price-check, and call APIs via MCP.-
- AlicenseBqualityDmaintenancePay-per-use API tools and LLM gateway for AI agents. 15 services (DART, Tabelog, Google Maps, Brave Search, Firecrawl, DeepL, ElevenLabs, and more) + smart LLM routing. No API keys needed, pay with USDC on Base.2517 npm2MIT
- AlicenseNot gradedqualityDmaintenanceStripe-native marketplace where AI agents autonomously discover and purchase API services via MCP. Pay-per-call, no accounts needed. 6 live services including Phone Validator, Web Scraper, PDF Generator and Screenshot API.1MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.