{"serverId":"mcp-registry/ai.latlong/map-mcp","tools":[{"name":"get_capabilities","fixed":{"name":"get_capabilities","description":"Return the server's capability matrix: supported map types, geo types, output formats, classification methods, and the list of tools available in this process (which varies by configuration). Call this first to discover what the server can do.","inputSchema":{"type":"object","additionalProperties":false,"properties":{}},"annotations":{"readOnlyHint":true}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: true (inferred from the name).","verify":true}],"tokensBefore":97,"tokensAfter":102},{"name":"upload_file","fixed":{"name":"upload_file","description":"Upload a CSV or XLSX file for server-side ingestion under policy (auth, size cap, malware scan, injected-intent scan) and receive a file_key. This is the first step before calling question_to_map with your own data.\n\nStep 1: Call upload_file with file_name, file_size, and question. The response contains a signed upload_url and a curl command — run the curl command to POST the file bytes. The curl response contains file_key, columns, a row preview, and optionally 'intent' (geo-match service detec","inputSchema":{"type":"object","required":["file_name","file_size"],"properties":{"sheet":{"type":"string"},"file_key":{"type":"string"},"question":{"type":"string"},"file_name":{"type":"string"},"file_size":{"type":"integer"}},"additionalProperties":false},"annotations":{"readOnlyHint":false,"destructiveHint":false,"idempotentHint":false}},"changes":[{"kind":"annotations","detail":"Added readOnlyHint: false, destructiveHint: false, idempotentHint: false (inferred from the name).","verify":true}],"tokensBefore":222,"tokensAfter":222}],"toolsChanged":2,"tokensSaved":0,"todo":[{"tool":"geocode","params":["sheet","job_id","file_key","force_new","address_column","address_columns","compose_columns"]},{"tool":"question_to_map","params":["data","sheet","style","table","file_key","map_type","question","geo_level","geo_column","state_hint","enrich_with","detected_geo","value_column","output_format","render_params"]},{"tool":"reverse_geocode","params":["sheet","job_id","file_key","force_new","latlong_column","latitude_column","coordinate_pairs","longitude_column","accept_low_precision"]},{"tool":"upload_file","params":["sheet","file_key","question","file_name","file_size"]}],"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."}