{"serverId":"mcp-registry/com.roofingquotesuk/site","tools":[{"name":"dataset_compare","fixed":{"name":"dataset_compare","description":"The rows of the Roofing Quotes UK dataset whose column is any of the given values, in the order given — for \"X vs Y\" questions.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["column","values"],"properties":{"column":{"type":"string","minLength":1},"values":{"type":"array","items":{"type":"string","minLength":1},"maxItems":10,"minItems":2}},"additionalProperties":false},"annotations":{"readOnlyHint":true},"title":"Compare rows side by side"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":130,"tokensAfter":130},{"name":"dataset_search","fixed":{"name":"dataset_search","description":"Rows of the Roofing Quotes UK dataset whose cells contain the query (case-insensitive), up to 50.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["query"],"properties":{"limit":{"type":"integer","maximum":50,"minimum":1},"query":{"type":"string","minLength":1,"description":"text to look for in any cell"}},"additionalProperties":false},"annotations":{"readOnlyHint":true},"title":"Search the dataset"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":119,"tokensAfter":119},{"name":"dataset_stats","fixed":{"name":"dataset_stats","description":"count, min, max, mean, median and sum of a numeric column of the Roofing Quotes UK dataset (grouping commas and currency are handled; non-numeric rows are excluded and counted).","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["column"],"properties":{"column":{"type":"string","minLength":1}},"additionalProperties":false},"annotations":{"readOnlyHint":true},"title":"Summary statistics for a numeric column"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":114,"tokensAfter":114},{"name":"enquiry_describe","fixed":{"name":"enquiry_describe","description":"Read first. States plainly what submit_enquiry does on Roofing Quotes UK: it starts an enquiry with human providers who quote directly. Nothing is bought, ordered or paid; no quote is guaranteed; it is free. Also returns who receives the details, the consent wording, and how the person confirms.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"annotations":{"readOnlyHint":true},"title":"What you get: an ENQUIRY with a human (not a purchase, not a guaranteed quote)"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":123,"tokensAfter":123},{"name":"entities_export","fixed":{"name":"entities_export","description":"Every entity of Roofing Quotes UK register, 200 a page, with provenance. Needs an access key (Authorization: Bearer); export pages are metered per key per day. Without a key the answer says how to get one.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"page":{"type":"integer","minimum":1},"pageSize":{"type":"integer","maximum":200,"minimum":1}},"additionalProperties":false},"annotations":{"readOnlyHint":true},"title":"The whole register, in pages (access key required)"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":131,"tokensAfter":131},{"name":"entities_schema","fixed":{"name":"entities_schema","description":"Which fields the Roofing Quotes UK register register carries and on how many entities, the regions and services, the identifier schemes, and how to cite it. Call this first.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{}},"annotations":{"readOnlyHint":true},"title":"The register's shape, counts and provenance"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":88,"tokensAfter":88},{"name":"entities_search","fixed":{"name":"entities_search","description":"Entities of Roofing Quotes UK register whose name, commercial name, website, address or authority contains the query, optionally within a region (id or name) and a service (slug or name). Up to 50 rows.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"q":{"type":"string","maxLength":120},"limit":{"type":"integer","maximum":50,"minimum":1},"region":{"type":"string","maxLength":60},"service":{"type":"string","maxLength":80}},"additionalProperties":false},"annotations":{"readOnlyHint":true},"title":"Search the register"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":153,"tokensAfter":153},{"name":"entity_lookup","fixed":{"name":"entity_lookup","description":"The Roofing Quotes UK register entry for a firm, by its register identifier (scheme + value, e.g. lei) or by the slug of its page. Exact match; returns the whole record with its page.","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","properties":{"slug":{"type":"string","maxLength":120,"minLength":1},"value":{"type":"string","maxLength":80,"minLength":1},"scheme":{"type":"string","maxLength":24,"minLength":2,"description":"identifier scheme, e.g. lei, fca_frn, tdlr_license"}},"additionalProperties":false},"annotations":{"readOnlyHint":true},"title":"One entity by its register identifier or slug"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":163,"tokensAfter":163},{"name":"submit_enquiry","fixed":{"name":"submit_enquiry","description":"Submits an enquiry to Roofing Quotes UK — NOT a purchase, NOT a guaranteed quote. Step 1: call with the answers (keyed by field key from enquiry_fields) and consent=true; it validates and returns a summary, the consent line and a confirmation token — show the person the summary and the consent line. Step 2: only if the person agrees, call again with the same answers, consent=true and the confirmation token; the enquiry is then submitted, and the person receives an email with a link they must cli","inputSchema":{"type":"object","$schema":"http://json-schema.org/draft-07/schema#","required":["answers","consent"],"properties":{"answers":{"type":"object","description":"the person's answers, keyed by field key","additionalProperties":{"type":["string","number","boolean"]}},"consent":{"type":"boolean","description":"true only when the person has agreed to: By submitting you agree Roofing Quotes UK passes your details to roofing contractors covering your area."},"confirmation":{"type":"string","description":"the confirmation token from step 1, after the person has approved the summary"}},"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false},"title":"Submit an ENQUIRY to human providers (two steps; not a purchase)"},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":325,"tokensAfter":325}],"toolsChanged":9,"tokensSaved":0,"todo":[{"tool":"dataset_compare","params":["column","values"]},{"tool":"dataset_row","params":["value","column"]},{"tool":"dataset_search","params":["limit"]},{"tool":"dataset_stats","params":["column"]},{"tool":"dataset_top","params":["limit","column"]},{"tool":"entities_export","params":["page","pageSize"]},{"tool":"entities_in","params":["page","region","service","pageSize"]},{"tool":"entities_search","params":["q","limit","region","service"]},{"tool":"entity_lookup","params":["slug","value"]}],"note":"Deterministic fixes. Changes marked verify need a human look before shipping (renames, inferred annotations, inferred types, removed text). Parameter descriptions in `todo` need to be written by someone who knows the API."}