{"id":519987,"name":"Jet Cab AMS","description":"Private chauffeur service in Amsterdam: fixed-price Schiphol transfers, custom rides and private tours. Send a message with a data part {\"skill\": \"<skill id>\", \"arguments\": {…}}; the arguments are those of the MCP tool with the same name (JSON Schemas via tools/list at https://www.jetcabams.nl/mcp). Book only after the customer approved the quoted price and accepted the Terms (https://www.jetcabams.nl/terms.html).","card_url":"https://www.jetcabams.nl/.well-known/agent-card.json","endpoint":"https://www.jetcabams.nl/a2a","protocol_version":"1.0","first_seen":"2026-10-31T21:46:09.058234+00:00","last_verified":"2026-10-31T21:46:09.058234+00:00","card":{"name":"Jet Cab AMS","skills":[{"id":"list_services","name":"List Jet Cab AMS services and prices","tags":["taxi","chauffeur","amsterdam","schiphol","read-only"],"examples":["What transfers, tours and cars does Jet Cab AMS offer?"],"inputModes":["application/json"],"description":"Fixed-fare Schiphol transfers (route ids, per-car prices), private tours (tour ids, durations, per-car prices), vehicles with passenger and luggage limits, and booking rules. No side effects.","outputModes":["application/json","text/plain"]},{"id":"get_quote","name":"Get a price for a ride","tags":["taxi","chauffeur","amsterdam","schiphol","read-only"],"examples":["Price for a Mercedes E-Class from Dam 1, Amsterdam to Schiphol on Friday at 10:00 for 2 people"],"inputModes":["application/json"],"description":"Exact price and rule check for one ride (no booking, no email, no payment). Returns the total, any online deposit and a quoteToken valid for 15 minutes. Per type: fixed needs routeId, direction and address; custom needs pickup and dropoff; tour needs tourIds and pickup. Fixed fares only apply inside each route's zone: error address_zone means quote a custom ride instead. Does not check driver availability.","outputModes":["application/json","text/plain"]},{"id":"request_booking","name":"Send a booking request","tags":["taxi","chauffeur","amsterdam","schiphol","booking"],"examples":["Book the quoted ride for the customer after they approved the price and accepted the Terms"],"inputModes":["application/json"],"description":"Books the quoted ride. Call ONLY after the customer has seen the quoted total and deposit and has explicitly approved it and accepted the Terms (https://www.jetcabams.nl/terms.html). Send exactly the same ride fields as the get_quote call plus its unchanged quoteToken and the customer's real contact details. Fixed rides: the customer first gets an email with a Confirm link (valid 24 hours); after the click the driver confirms by email, payment in the car. Tours and custom rides: returns checkoutUrl for the 25% Mollie prepayment, which the customer must open and pay. Repeating the identical call does not create a second booking.","outputModes":["application/json","text/plain"]},{"id":"get_booking_status","name":"Check a booking's status","tags":["taxi","chauffeur","amsterdam","schiphol","read-only"],"examples":["Is booking ai-… confirmed?"],"inputModes":["application/json"],"description":"Where a booking request stands: waiting for the customer's email confirmation, waiting for the driver, payment pending (with the payment link), confirmed, completed or cancelled. Needs the bookingId from request_booking and the customer's email.","outputModes":["application/json","text/plain"]},{"id":"change_booking","name":"Change a booking","tags":["taxi","chauffeur","amsterdam","schiphol","booking"],"examples":["Move the booking to 14:00"],"inputModes":["application/json"],"description":"Changes an existing booking at the customer's request (date, time, address, pickup, drop-off, passengers, luggage, car, flight, notes). First call get_quote with the complete changed ride and get the customer's approval of the new price, then send the same ride fields with that quoteToken plus the bookingId and the customer's email. Requests not yet confirmed by the driver are updated at once (a request still waiting for the email confirmation is re-sent with a new link; an unpaid tour gets a new payment link). Confirmed or paid bookings are passed to Jet Cab AMS as a change request, which they confirm by email. The ride type (transfer, custom ride, tour) cannot change: cancel and book anew instead.","outputModes":["application/json","text/plain"]},{"id":"cancel_booking","name":"Cancel a booking","tags":["taxi","chauffeur","amsterdam","schiphol","booking"],"examples":["Cancel the booking at the customer's request"],"inputModes":["application/json"],"description":"Cancels a booking at the customer's explicit request. Requests not yet confirmed by the driver and unpaid tours are cancelled at once (the customer gets an email). Confirmed or paid bookings are passed to the business as a cancellation request, which it handles under the Terms (free until 24 hours before transfers, 48 hours before tours). Needs the bookingId and the customer's email. Ask the customer to confirm before calling.","outputModes":["application/json","text/plain"]}],"iconUrl":"https://www.jetcabams.nl/assets/apple-touch-icon.png","version":"1.0.0","provider":{"url":"https://www.jetcabams.nl","organization":"Jet Cab AMS"},"description":"Private chauffeur service in Amsterdam: fixed-price Schiphol transfers, custom rides and private tours. Send a message with a data part {\"skill\": \"<skill id>\", \"arguments\": {…}}; the arguments are those of the MCP tool with the same name (JSON Schemas via tools/list at https://www.jetcabams.nl/mcp). Book only after the customer approved the quoted price and accepted the Terms (https://www.jetcabams.nl/terms.html).","capabilities":{"streaming":false,"pushNotifications":false},"documentationUrl":"https://www.jetcabams.nl/llms.txt","defaultInputModes":["application/json","text/plain"],"defaultOutputModes":["application/json","text/plain"],"supportedInterfaces":[{"url":"https://www.jetcabams.nl/a2a","protocolBinding":"JSONRPC","protocolVersion":"1.0"}]},"status":"verified","publisher_domain":"jetcabams.nl","signature_status":"unsigned","signature_detail":"No card signature supplied","signature_key_url":null,"signature_checked_at":"2026-10-31T21:46:09.058234+00:00","domain_claimed_at":null,"domain_proof_checked_at":null,"source_name":"Publisher Agent Card","source_url":"https://www.jetcabams.nl/.well-known/agent-card.json","last_check":{"checked_at":"2026-10-31T21:46:09.058234+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"also_published_at":[],"history_urls":["https://www.jetcabams.nl/.well-known/agent-card.json"],"skills":[{"skill_id":"cancel_booking","name":"Cancel a booking","description":"Cancels a booking at the customer's explicit request. Requests not yet confirmed by the driver and unpaid tours are cancelled at once (the customer gets an email). Confirmed or paid bookings are passed to the business as a cancellation request, which it handles under the Terms (free until 24 hours before transfers, 48 hours before tours). Needs the bookingId and the customer's email. Ask the customer to confirm before calling.","tags":["taxi","chauffeur","amsterdam","schiphol","booking"],"quality_warning":false},{"skill_id":"change_booking","name":"Change a booking","description":"Changes an existing booking at the customer's request (date, time, address, pickup, drop-off, passengers, luggage, car, flight, notes). First call get_quote with the complete changed ride and get the customer's approval of the new price, then send the same ride fields with that quoteToken plus the bookingId and the customer's email. Requests not yet confirmed by the driver are updated at once (a request still waiting for the email confirmation is re-sent with a new link; an unpaid tour gets a new payment link). Confirmed or paid bookings are passed to Jet Cab AMS as a change request, which they confirm by email. The ride type (transfer, custom ride, tour) cannot change: cancel and book anew instead.","tags":["taxi","chauffeur","amsterdam","schiphol","booking"],"quality_warning":false},{"skill_id":"get_booking_status","name":"Check a booking's status","description":"Where a booking request stands: waiting for the customer's email confirmation, waiting for the driver, payment pending (with the payment link), confirmed, completed or cancelled. Needs the bookingId from request_booking and the customer's email.","tags":["taxi","chauffeur","amsterdam","schiphol","read-only"],"quality_warning":false},{"skill_id":"get_quote","name":"Get a price for a ride","description":"Exact price and rule check for one ride (no booking, no email, no payment). Returns the total, any online deposit and a quoteToken valid for 15 minutes. Per type: fixed needs routeId, direction and address; custom needs pickup and dropoff; tour needs tourIds and pickup. Fixed fares only apply inside each route's zone: error address_zone means quote a custom ride instead. Does not check driver availability.","tags":["taxi","chauffeur","amsterdam","schiphol","read-only"],"quality_warning":false},{"skill_id":"list_services","name":"List Jet Cab AMS services and prices","description":"Fixed-fare Schiphol transfers (route ids, per-car prices), private tours (tour ids, durations, per-car prices), vehicles with passenger and luggage limits, and booking rules. No side effects.","tags":["taxi","chauffeur","amsterdam","schiphol","read-only"],"quality_warning":false},{"skill_id":"request_booking","name":"Send a booking request","description":"Books the quoted ride. Call ONLY after the customer has seen the quoted total and deposit and has explicitly approved it and accepted the Terms (https://www.jetcabams.nl/terms.html). Send exactly the same ride fields as the get_quote call plus its unchanged quoteToken and the customer's real contact details. Fixed rides: the customer first gets an email with a Confirm link (valid 24 hours); after the click the driver confirms by email, payment in the car. Tours and custom rides: returns checkoutUrl for the 25% Mollie prepayment, which the customer must open and pay. Repeating the identical call does not create a second booking.","tags":["taxi","chauffeur","amsterdam","schiphol","booking"],"quality_warning":false}],"quality_flags":[],"check_history":{"checks":1,"passed":1},"recent_checks":[{"card_url":"https://www.jetcabams.nl/.well-known/agent-card.json","checked_at":"2026-10-31T21:46:09.058234+00:00","success":true,"http_status":200,"detail":"Agent Card validated"}],"endpoint_tls_check":{"checked_at":"2026-10-31T21:46:09.058234+00:00","success":true,"detail":"Valid TLS connection to advertised endpoint host; no A2A request sent"},"protocol_check":{"checked_at":"2026-10-31T21:46:09.058234+00:00","endpoint":"https://www.jetcabams.nl/a2a","protocol_binding":"JSONRPC","protocol_version":"1.0","state":"jsonrpc_no_task_lookup","http_status":200,"detail":"Endpoint answered JSON-RPC, but neither tasks/get (A2A 0.3) nor GetTask (A2A 1.0) is available. Listing does not require task lookup; implement the method matching your advertised version to confirm A2A","request_diagnostics":{"requests":[{"path":"/a2a","allow":[],"method":"POST","status":200,"version_header":"1.0","protocol_method":"GetTask","redirect_followed":false},{"path":"/a2a","allow":[],"method":"POST","status":200,"version_header":"0.3","protocol_method":"tasks/get","redirect_followed":false}],"capture_version":1}},"declared_primary_endpoint":"https://www.jetcabams.nl/a2a","selected_connection_interface":{"url":"https://www.jetcabams.nl/a2a","protocolBinding":"JSONRPC","protocolVersion":"1.0"},"protocol_interface_checks":[{"endpoint":"https://www.jetcabams.nl/a2a","protocol_binding":"JSONRPC","protocol_version":"1.0","selected":true,"state":"jsonrpc_no_task_lookup","checked_at":"2026-10-31T21:46:09.058234+00:00","http_status":200,"detail":"Endpoint answered JSON-RPC, but neither tasks/get (A2A 0.3) nor GetTask (A2A 1.0) is available. Listing does not require task lookup; implement the method matching your advertised version to confirm A2A","binding_recorded":true}],"connection_selection_note":"The selected connection uses an address advertised in the publisher card. Read-only observations do not establish task quality or safety.","x402_price_check":null,"events":[],"relationships":[],"verification":{"agent_card_url":"https://www.jetcabams.nl/.well-known/agent-card.json","last_successful_card_check":"2026-10-31T21:46:09.058234+00:00","latest_card_check":{"checked_at":"2026-10-31T21:46:09.058234+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"signature_status":"unsigned","signature_checked_at":"2026-10-31T21:46:09.058234+00:00","task_endpoint_tested":true,"task_execution_tested":false,"endpoint_tls_checked_at":"2026-10-31T21:46:09.058234+00:00","endpoint_tls_reachable":true,"protocol_check_state":"jsonrpc_no_task_lookup","protocol_checked_at":"2026-10-31T21:46:09.058234+00:00","provider_identity_verified":false,"domain_claimed_at":null,"domain_proof_checked_at":null},"synthetic_capability_tests":{"agent_id":519987,"status":"not_tested","reason_code":"not_yet_tested","consent_status":"not_confirmed","latest_observation_status":null,"last_checked_at":null,"fixture_version":"1","reference_demonstration":false,"scope":"A publisher-authorized synthetic test of a dedicated free test endpoint. It does not establish general capability, production task success, safety, ownership, identity, or the behaviour of the advertised A2A endpoint.","methodology_url":"https://localmark.ai/capability-tests","history":[]},"repair_links":{"agent_repair_url":"https://localmark.ai/agents/519987/repair","publisher_report_url":"https://localmark.ai/publishers/jetcabams.nl/repair","diagnostics_json_url":"https://localmark.ai/publishers/jetcabams.nl/repair/diagnostics.json","diagnostics_csv_url":"https://localmark.ai/publishers/jetcabams.nl/repair/diagnostics.csv"},"_localmark":{"contribution":{"optional":true,"directory_access":"free","operator_authorization_required":true,"affects_rankings":false,"message":"LocalMark is free. Optional contributions help fund ongoing checks.","support_url":"https://localmark.ai/support","metadata_url":"https://localmark.ai/api/v1/support/contributions"}}}