Formquote
Server Details
Published prices and licence fit for email verification, sound effect packs and font licences.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- Repository
- Keith-CY/formquote-mcp
- GitHub Stars
- 0
- Server Listing
- Formquote MCP Server
TDQS
Scored across 4 tools
Each tool targets a clearly distinct domain: three compare_* tools for email verification, fonts, and sound effects, plus one catalog-listing tool. There is no meaningful overlap, and the descriptions reinforce the boundaries (the catalog tool even points users to the compare_* tools for specific needs).
All four tools use a consistent verb_noun snake_case pattern: compare_email_verification_prices, compare_font_licenses, compare_sound_effects_licenses, list_formquote_catalog. The parallel compare_* prefix makes the related tools obviously grouped while remaining distinguishable.
Four tools is well-scoped for a focused price-evidence service covering three verticals plus a catalog overview. Each tool earns its place with no redundancy or filler.
The surface covers all three advertised verticals (email verification, fonts, sound effects) with a compare tool each and a master catalog, giving good lifecycle coverage for a read-only price service. Minor gap: no cross-category or generic lookup, and coverage is explicitly limited to hand-checked subsets, which is disclosed rather than hidden.
Available Tools
4 toolscompare_email_verification_pricesCompare email verification pricesARead-onlyIdempotentInspect
Compare what it costs to verify (clean, validate) a list of email addresses with MillionVerifier, Reoon, DeBounce and Emailable, from their published credit packs and monthly plans. Use this when the user asks how much it costs to verify a number of emails, which email verification service is cheapest for their list size, or how many credit packs to buy. Give only the number of emails, never the addresses. Credits the user already holds with a supplier can be counted. Returns the packs ranked within comparable groups (one-time packs vs monthly plans, per currency), the price for this request, the cost allocated to this job, what is unconfirmed, the date each price was checked and the seller’s page. These are published list prices, not live checkout quotes; it does not verify emails or buy anything.
| Name | Required | Description | Default |
|---|---|---|---|
| goal | No | How to rank: lowest_cash_now = least money to pay now for whole packs or plans; lowest_job_cost = lowest cost allocated to this job (leftover credits keep their value); best_requirement_fit = best match to the stated use first. | lowest_cash_now |
| lang | No | Language of the Formquote page linked in the answer (en, zh, ja, fr, de). The figures are the same; notes recorded by Formquote stay in their original language (mostly Chinese). | en |
| emails | Yes | How many email addresses need verifying (1 to 10,000,000). Only the count, never the addresses. | |
| existing_credits | No | Unexpired verification credits the user already holds, by supplier (optional), e.g. {"reoon": 5000}. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, it discloses that results are published list prices rather than live checkout quotes, that existing supplier credits can be counted, and enumerates the returned fields (ranked packs within comparable groups, cost for this job, unconfirmed items, price-check date, seller page). The date-staleness caveat is exactly the kind of behavioral context annotations cannot carry.
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 the when-to-use triggers are front-loaded in the first two sentences, and every later sentence carries distinct information (input constraint, credit handling, return shape, caveats). It is on the long side and could tighten the returns enumeration, but there is no redundant 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?
With no output schema, the description takes on the burden of describing return values and does so concretely, including ranking groups and unconfirmed fields. Combined with the schema's full parameter documentation and the safety annotations, an agent has everything needed to invoke 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 coverage is 100%, so the baseline is 3; the description earns extra credit by clarifying intent behind two parameters: the count-only rule for 'emails' and the fact that pre-held credits ('existing_credits') are factored into the comparison. It does not restate the goal/lang enum semantics, which the schema already handles well.
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 verb (compare) and resource (email verification prices), lists the exact suppliers covered, and scopes the input to a count of addresses. This clearly separates it from siblings like compare_font_licenses and compare_sound_effects_licenses.
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 explicit triggers ('when the user asks how much it costs to verify a number of emails, which service is cheapest for their list size, or how many credit packs to buy') plus an operational constraint ('Give only the number of emails, never the addresses'). It also states what the tool does not do (verify emails, buy anything), which routes the agent away from a purchase/verification sibling.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_font_licensesCompare font licencesARead-onlyIdempotentInspect
Check which licence a use needs, and what it costs, for a small, hand-checked set of fonts: Pangram Pangram’s Font Starter Packs, Fontwerk Push, Grilli Type GT Cinetype and Fontfabric Nexa (6 offers). Use this when the user asks whether one of these fonts can be used on a website, on desktop, in print, in an app or game, in a logo or in paid ads, and what licence and price that needs: users, websites, monthly pageviews or unique visitors per site, years of use. Returns each offer’s published price where one applies, which requirements fail or are unconfirmed (for example pageview caps, PV versus UV, styles chosen at the foundry) and the foundry’s page. Other typefaces are not covered; say so instead of guessing. Published prices; nothing is bought.
| Name | Required | Description | Default |
|---|---|---|---|
| goal | No | How to rank: lowest_cash_now = least money to pay now for whole packs or plans; lowest_job_cost = lowest cost allocated to this job (leftover credits keep their value); best_requirement_fit = best match to the stated use first. | best_requirement_fit |
| lang | No | Language of the Formquote page linked in the answer (en, zh, ja, fr, de). The figures are the same; notes recorded by Formquote stay in their original language (mostly Chinese). | en |
| seats | No | People who will use the font (default 1). | |
| medium | No | Where it is used. A plain website licence does not cover a web app, app, game, logo or paid ads. | |
| websites | No | Websites the font will be used on (default 1). | |
| term_years | No | Years the font will be used (default 1). Yearly plans only confirm the first year’s price. | |
| license_use | Yes | web (webfonts on a site), desktop (installed for design work) or both. | |
| print_units | No | Printed units (optional). | |
| commercial_use | No | Commercial use? (optional) | |
| print_projects | No | Print projects (optional). | |
| traffic_metric | No | pv = pageviews, uv = unique visitors. They are not converted into each other. | pv |
| monthly_pageviews | No | Traffic cap needed per website per month, in the unit of traffic_metric (default 5,000). | |
| commercial_projects | No | Commercial projects per year (optional). | |
| requires_all_styles | No | Does the user need every weight and style of the family? (optional) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so safety is covered. The description adds genuinely non-obvious behaviour: results expose which requirements fail or are unconfirmed (pageview caps, PV vs UV, styles chosen at the foundry), that prices are published-only and 'nothing is bought', and that some dimensions are only partially confirmed. It stops short of describing price-source freshness or ranking effects of the goal parameter.
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 before caveats, and the closing 'Published prices; nothing is bought' is a well-placed boundary statement. The first sentence is dense and stacks enumeration inside a clause, but nothing is padding for a 14-parameter tool.
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 14 parameters and no output schema, the description carries the return-value burden and does: it says the answer contains per-offer published prices, failing or unconfirmed requirements, and the foundry page. Combined with the covered-fonts boundary and the no-purchase statement, an agent needs nothing more to 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%, so every parameter including goal, lang, traffic_metric and medium is already documented in the schema itself, and the baseline is 3. The description restates the input dimensions (users, websites, pageviews/unique visitors, years) but adds no syntax, units or interaction detail beyond the schema.
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 which licence a use needs and what it costs) and pins the exact covered corpus: six named offers from Pangram Pangram, Fontwerk, Grilli Type and Fontfabric. It also draws a hard boundary — 'Other typefaces are not covered' — so an agent can separate it from any broader pricing 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?
Gives explicit trigger conditions ('Use this when the user asks whether one of these fonts can be used on a website, on desktop, in print, in an app or game, in a logo or in paid ads') and an explicit exclusion with a fallback behaviour ('say so instead of guessing'). The when-not case is stated as an instruction, not left to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_sound_effects_licensesCompare sound effect pack licencesARead-onlyIdempotentInspect
Check prices and licence fit for a small, hand-checked set of sound effect packs: UI clicks and snaps, motion-graphics sounds, desert wind and train ambiences, and a kettle whistle, from SoundMorph, HISSandaROAR and Thomas Rex Beverly Audio (8 packs). Use this when the user wants sound effects for an app, game, video or interface and asks what a pack costs or whether its licence allows their use: commercial work, number of seats, AI training or generation, reselling the sounds, or a product where the sounds are a large share. Returns each pack’s price, whether it fits (eligible, conditional or not eligible) and which licence points still need the seller’s confirmation. It covers only these packs, not whole sound libraries; say so if none fits. Published prices; nothing is bought.
| Name | Required | Description | Default |
|---|---|---|---|
| goal | No | How to rank: lowest_cash_now = least money to pay now for whole packs or plans; lowest_job_cost = lowest cost allocated to this job (leftover credits keep their value); best_requirement_fit = best match to the stated use first. | best_requirement_fit |
| lang | No | Language of the Formquote page linked in the answer (en, zh, ja, fr, de). The figures are the same; notes recorded by Formquote stay in their original language (mostly Chinese). | en |
| seats | No | People or workstations that will use the sounds (default 1). | |
| ai_use | No | Will the audio itself be used to train or generate with AI? (Asking an AI chat for prices is not AI use.) Default false. | |
| intent | Yes | What the sounds are for: ui (interface clicks, snaps), motion (motion graphics), nature (ambiences such as wind), train, kettle, or any. | |
| commercial_use | No | Will the sounds be used in commercial work? Default true. | |
| pure_sfx_percent | No | Optional: the share (0–100) of the finished product’s total duration that is this supplier’s sound effects alone, with no voice or music. Some licences restrict products where it reaches 25%. | |
| standalone_resale | No | Will the sounds be resold or redistributed on their own (as a sound pack)? Default false. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint/idempotentHint/non-destructive, so the safety profile is covered; the description usefully reinforces it with 'Published prices; nothing is bought' and adds context the annotations do not: a hand-checked set of 8 packs, an explicit return shape (price, eligible/conditional/not eligible, and licence points awaiting seller confirmation). It stops short of describing latency or freshness of pricing.
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 on purpose and scope, then usage conditions, then output contract, in a single tight paragraph. The catalogue of sound types ('UI clicks and snaps, motion-graphics sounds, desert wind and train ambiences, and a kettle whistle') is somewhat redundant with the intent enum, costing a little density.
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 an 8-parameter, read-only comparison tool with no output schema, the description supplies the missing return contract and an explicit failure-mode instruction ('say so if none fits'), plus the scope ceiling. An agent has everything needed to select and 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%, including all enums and defaults, so the schema already carries the parameter meaning and a 3 is the baseline. The description echoes the licence factors that map to seats, ai_use, commercial_use, standalone_resale and pure_sfx_percent but adds no syntax, format or precedence detail beyond the schema.
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/check) and resource (prices and licence fit for named sound effect packs), enumerates the exact scope (8 packs, three vendors) and says what comes back. It is unmistakably distinct from compare_font_licenses and compare_email_verification_prices.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives a clear trigger: 'Use this when the user wants sound effects for an app, game, video or interface and asks what a pack costs or whether its licence allows their use', with the decision factors (commercial work, seats, AI training, resale, proportion) spelled out. It also sets a when-not boundary ('covers only these packs, not whole sound libraries'), though it does not name a sibling tool to use instead.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_formquote_catalogList the Formquote catalogueARead-onlyIdempotentInspect
List everything Formquote has price evidence for: email verification credit packs and plans (MillionVerifier, Reoon, DeBounce, Emailable), sound effect packs (SoundMorph, HISSandaROAR, Thomas Rex Beverly Audio) and font licences (Pangram Pangram, Fontwerk, Grilli Type, Fontfabric), with each listed price, billing period, the date it was checked and the seller’s page. Use this to see what is covered, or when the user asks for one of these suppliers’ listed prices. To price a specific need, use the compare_* tools instead.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language of the Formquote page linked in the answer (en, zh, ja, fr, de). The figures are the same; notes recorded by Formquote stay in their original language (mostly Chinese). | en |
| category | No | Only this category (optional; default all three). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, openWorldHint=false and destructiveHint=false, so safety is covered. The description adds real behavioural context beyond that: it discloses the return payload (each listed price, billing period, date checked, seller's page) and that Formquote's own notes stay in their original language, which explains the lang parameter's partial effect.
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 is front-loaded and the trailing sentence handles routing. The middle enumeration of suppliers is long, but each name earns its place by telling the agent whether a given query is in scope; the parenthetical lists are the only mild density cost.
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 carries the burden of describing returns, and it does: prices, billing period, check date and seller page. Combined with the routing guidance and the two documented parameters, an agent has everything needed to 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 coverage is 100% and both parameters carry their own descriptions, so the baseline is 3. The description's enumeration of email verification, sound effects and font licences loosely mirrors the category enum, but it adds no new semantics and never mentions the lang parameter.
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 the Formquote catalogue) and enumerates exactly which supplier families are covered, so an agent can tell it apart from the compare_* siblings at a glance. The scope statement 'price evidence' is precise rather than generic.
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 names both the use case ('see what is covered', 'user asks for one of these suppliers' listed prices') and the alternative with the selecting condition ('To price a specific need, use the compare_* tools instead'). Nothing is left to inference.
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.
4 tool updates
- First observed
compare_email_verification_prices - First observed
compare_font_licenses - First observed
compare_sound_effects_licenses - First observed
list_formquote_catalog
Related MCP Connectors
Published prices of OG-image and screenshot APIs, each with the vendor page it was read from.
Verified pricing, hidden costs, negotiation data, price changes & TCO for 3,390+ software products.
Live SaaS pricing: current plans, verified price changes, and comparisons for 33,000+ products.
Audited indie product business cases with source-backed pricing, revenue and pricing benchmarks.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides verified pricing data for SaaS, AI tools, and LLMs across 490+ tools. No API key required, returns sourced records with attribution links.3-
- AlicenseNot gradedqualityCmaintenanceProvides AI agents with verified, monthly software pricing data for categories like VPNs and cloud backup, enabling price comparisons and identifying cheapest providers.MIT
- FlicenseNot gradedqualityAmaintenanceSearch and retrieve researched indie product cases, published pricing and revenue disclosures, acquisition notes, and source links. Compute pricing benchmarks from the available dataset. Undisclosed revenue is returned as unknown; research and translation coverage vary by case.-
- AlicenseNot gradedqualityAmaintenanceProvides read-only access to verified French software price benchmarks, including public procurement contracts and private market rates, enabling budget estimates and quote positioning.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.