{"id":7008,"name":"AstraNL","description":"Give AstraNL one real thing you need changed. It coordinates the rest. AstraNL is the neutral coordination and evidence layer between intent and real-world execution. It connects existing systems, agents and organisations to the right real-world capability - human, company, machine, robot, stock, transport or service - and returns a typed record of what was actually observed, agreed, executed and settled. AstraNL turns an intent into verified real-world execution: a KvK-registered executor performs the work; the client pays that provider directly on the agreed provider-owned business rail. Stripe is optional. AstraNL never receives or controls the work amount and invoices only its separate 1% coordination fee after a paid, confirmed outcome. Fee: 1% coordination fee - only on a paid outcome, in force since 2026-09-01. Status: controlled pilot. Canonical facts: https://astranl.com/.well-known/astranl-facts.json","card_url":"https://astranl.com/.well-known/agent-card.json","endpoint":"https://astranl.com/a2a","protocol_version":"1.0","first_seen":"2026-10-10T06:28:35.435714+00:00","last_verified":"2026-10-10T07:58:22.230596+00:00","card":{"name":"AstraNL","skills":[{"id":"construction_facts","name":"Dutch construction facts","tags":["construction","netherlands","permits","tenders","cbs","read-only","capability:construction_facts","maturity:LIVE"],"examples":["metadata: {\"skill\": \"construction_facts\", \"fact\": \"permits\", \"gemeente\": \"Utrecht\", \"days\": 30}"],"description":"Read-only aggregates of official Dutch construction registers. Send message/send (or SendMessage) with metadata.skill=construction_facts and metadata.fact one of summary, permits, leadtimes, tenders, laws, cbs, economy, zones, natura, sources (optional gemeente, days, upcoming_days, site). Permit publications per issuing body and kind with measured accuracy (manual gate B); counts below 5 are shown as <5. Lead times are CLOSED until validation gate C passes. Every answer carries source provenance; no permit rows, identifiers, titles, addresses, points or names. Same data over HTTP: https://astranl.com/api/construction"},{"id":"construction_signals","name":"Dutch construction signals feed","tags":["construction","netherlands","cloudevents","feed","read-only","capability:construction_facts","maturity:LIVE"],"examples":["metadata: {\"skill\": \"construction_signals\", \"type\": \"nl.astranl.construction.tender.published\", \"limit\": 10}"],"description":"CloudEvents 1.0 events, oldest first after since_id: daily permit aggregate cells (min-cell <5, with gate B accuracy), newly published public works tenders (AAO), construction laws coming up. Send metadata.skill=construction_signals with optional since_id, type and limit (default 25, max 500); continue with next_since_id. Read-only. Same feed over HTTP: https://astranl.com/api/construction/events"},{"id":"provider_network_search","name":"Search the provider network","tags":["provider_search","astranl","coordination","netherlands","capability:provider_network","maturity:PILOT"],"description":"Read the same provider index the human site uses - by trade, service word or company name. Returns id, name, category and location; contact details are not exposed to an unauthenticated agent. Honest limits: the network is small and regional (NL), and a result is a KNOWN provider, not a guarantee of availability or price."},{"id":"coordination_open_work","name":"Read open coordination work","tags":["coordination_open_work","astranl","coordination","netherlands","capability:read_open_work","maturity:LIVE"],"description":"Public requests with a NAMED buyer and a real deadline, kept strictly apart from measured euro gaps that nobody has asked for yet. Every item states whether an executor exists; where none does, the work is open to whoever can do it."},{"id":"coordination_open_case","name":"Open a coordination case","tags":["coordination_open_case","astranl","coordination","netherlands","capability:open_coordination_case","maturity:PILOT"],"description":"State a need in plain language and the protocol finds the other side. Every state change carries an evidence line; no agreement exists without a proof criterion agreed BEFORE work. Same source_ref twice returns the same case."},{"id":"coordination_case_status","name":"Read a case audit trail and subscribe to it","tags":["coordination_case_status","astranl","coordination","netherlands","capability:read_case_status_and_evidence","maturity:LIVE"],"description":"Full state history with the evidence behind every transition. Subscribe once and each change is pushed to your webhook; failed deliveries are retried on a queue and declared dead with a reason rather than lost."}],"version":"4.0","provider":{"btw":"NL004604224B69","kvk":"88449335","url":"https://astranl.com","controls":{"basis":"self-assessed controls, reviewed 2026-09-04; not a certification","money":"AstraNL never holds third-party funds; no Wwft-regulated custody activity is performed; payment contract https://astranl.com/.well-known/payment-truth.json","ai_disclosure":"EU AI Act Art. 50: AI-assisted drafting is disclosed in every interaction; classification documented as limited-risk (self-assessed, not certified)","data_minimisation":"GDPR: AstraNL is controller for coordination metadata only; provider records carry no PII beyond registry identifiers; see https://astranl.com/privacy.html"},"jurisdiction":"NL","organization":"AstraNL"},"security":[{"none":[]},{"agentKey":[]}],"signatures":[{"header":{"kid":"01e0853e1c28b6fb"},"protected":"eyJhbGciOiJFZERTQSIsImprdSI6Imh0dHBzOi8vYXN0cmFubC5jb20vLndlbGwta25vd24vandrcy5qc29uIiwia2lkIjoiMDFlMDg1M2UxYzI4YjZmYiIsInR5cCI6IkpPU0UifQ","signature":"F6NzhcRTatTzmR62V9gK4cyg5VyxIs38Uhx5chf60zShphd0o1aORoBcF2Oa5-x0dzY1dVQ1PHG2AAXxQgCJBQ"}],"description":"Give AstraNL one real thing you need changed. It coordinates the rest. AstraNL is the neutral coordination and evidence layer between intent and real-world execution. It connects existing systems, agents and organisations to the right real-world capability - human, company, machine, robot, stock, transport or service - and returns a typed record of what was actually observed, agreed, executed and settled. AstraNL turns an intent into verified real-world execution: a KvK-registered executor performs the work; the client pays that provider directly on the agreed provider-owned business rail. Stripe is optional. AstraNL never receives or controls the work amount and invoices only its separate 1% coordination fee after a paid, confirmed outcome. Fee: 1% coordination fee - only on a paid outcome, in force since 2026-09-01. Status: controlled pilot. Canonical facts: https://astranl.com/.well-known/astranl-facts.json","capabilities":{"streaming":false,"extensions":[{"uri":"https://astranl.com/.well-known/astranl-agent-extensions.json","required":false,"description":"AstraNL non-standard fields (habitat, pain map, delegation, pricing, offers, links, conformance, identity hash) moved out of the strict card"}],"extendedAgentCard":false,"pushNotifications":false,"stateTransitionHistory":false},"securitySchemes":{"none":{"type":"none","description":"discovery and public reads"},"agentKey":{"in":"header","name":"X-Agent-Key","type":"apiKey","description":"POST https://astranl.com/api/agents/register"}},"documentationUrl":"https://astranl.com/llms.txt","defaultInputModes":["text","json"],"defaultOutputModes":["text","json"],"supportedInterfaces":[{"url":"https://astranl.com/a2a","protocolBinding":"JSONRPC","protocolVersion":"1.0"}]},"signature_status":"verified","signature_detail":"Card signature matches a key at its advertised or same-host key source","signature_key_url":"https://astranl.com/.well-known/jwks.json","signature_checked_at":"2026-10-10T07:58:22.230596+00:00","domain_claimed_at":null,"domain_proof_checked_at":null,"source_name":"Agent Tools Catalog","source_url":"https://agent-tools.cloud","last_check":{"checked_at":"2026-10-10T07:58:22.230596+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"also_published_at":[],"history_urls":["https://astranl.com/.well-known/agent-card.json"],"skills":[{"skill_id":"construction_facts","name":"Dutch construction facts","description":"Read-only aggregates of official Dutch construction registers. Send message/send (or SendMessage) with metadata.skill=construction_facts and metadata.fact one of summary, permits, leadtimes, tenders, laws, cbs, economy, zones, natura, sources (optional gemeente, days, upcoming_days, site). Permit publications per issuing body and kind with measured accuracy (manual gate B); counts below 5 are shown as <5. Lead times are CLOSED until validation gate C passes. Every answer carries source provenance; no permit rows, identifiers, titles, addresses, points or names. Same data over HTTP: https://astranl.com/api/construction","tags":["construction","netherlands","permits","tenders","cbs","read-only","capability:construction_facts","maturity:LIVE"],"quality_warning":false},{"skill_id":"construction_signals","name":"Dutch construction signals feed","description":"CloudEvents 1.0 events, oldest first after since_id: daily permit aggregate cells (min-cell <5, with gate B accuracy), newly published public works tenders (AAO), construction laws coming up. Send metadata.skill=construction_signals with optional since_id, type and limit (default 25, max 500); continue with next_since_id. Read-only. Same feed over HTTP: https://astranl.com/api/construction/events","tags":["construction","netherlands","cloudevents","feed","read-only","capability:construction_facts","maturity:LIVE"],"quality_warning":false},{"skill_id":"coordination_open_case","name":"Open a coordination case","description":"State a need in plain language and the protocol finds the other side. Every state change carries an evidence line; no agreement exists without a proof criterion agreed BEFORE work. Same source_ref twice returns the same case.","tags":["coordination_open_case","astranl","coordination","netherlands","capability:open_coordination_case","maturity:PILOT"],"quality_warning":false},{"skill_id":"coordination_case_status","name":"Read a case audit trail and subscribe to it","description":"Full state history with the evidence behind every transition. Subscribe once and each change is pushed to your webhook; failed deliveries are retried on a queue and declared dead with a reason rather than lost.","tags":["coordination_case_status","astranl","coordination","netherlands","capability:read_case_status_and_evidence","maturity:LIVE"],"quality_warning":false},{"skill_id":"coordination_open_work","name":"Read open coordination work","description":"Public requests with a NAMED buyer and a real deadline, kept strictly apart from measured euro gaps that nobody has asked for yet. Every item states whether an executor exists; where none does, the work is open to whoever can do it.","tags":["coordination_open_work","astranl","coordination","netherlands","capability:read_open_work","maturity:LIVE"],"quality_warning":false},{"skill_id":"provider_network_search","name":"Search the provider network","description":"Read the same provider index the human site uses - by trade, service word or company name. Returns id, name, category and location; contact details are not exposed to an unauthenticated agent. Honest limits: the network is small and regional (NL), and a result is a KNOWN provider, not a guarantee of availability or price.","tags":["provider_search","astranl","coordination","netherlands","capability:provider_network","maturity:PILOT"],"quality_warning":false}],"quality_flags":[],"check_history":{"checks":6,"passed":6},"recent_checks":[{"card_url":"https://astranl.com/.well-known/agent-card.json","checked_at":"2026-10-10T07:58:22.230596+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://astranl.com/.well-known/agent-card.json","checked_at":"2026-10-10T07:52:05.069456+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://astranl.com/.well-known/agent-card.json","checked_at":"2026-10-10T07:13:07.530266+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://astranl.com/.well-known/agent-card.json","checked_at":"2026-10-10T06:47:43.205861+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://astranl.com/.well-known/agent-card.json","checked_at":"2026-10-10T06:39:49.915467+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},{"card_url":"https://astranl.com/.well-known/agent-card.json","checked_at":"2026-10-10T06:28:35.435714+00:00","success":true,"http_status":200,"detail":"Agent Card validated"}],"endpoint_tls_check":{"checked_at":"2026-10-10T07:58:22.230596+00:00","success":true,"detail":"Valid TLS connection to advertised endpoint host; no A2A request sent"},"protocol_check":{"checked_at":"2026-10-10T06:39:49.915467+00:00","state":"a2a_response","http_status":200,"detail":"A2A task-not-found response to a read-only task lookup"},"events":[],"relationships":[],"verification":{"agent_card_url":"https://astranl.com/.well-known/agent-card.json","last_successful_card_check":"2026-10-10T07:58:22.230596+00:00","latest_card_check":{"checked_at":"2026-10-10T07:58:22.230596+00:00","success":true,"http_status":200,"detail":"Agent Card validated"},"signature_status":"verified","signature_checked_at":"2026-10-10T07:58:22.230596+00:00","task_endpoint_tested":true,"task_execution_tested":false,"endpoint_tls_checked_at":"2026-10-10T07:58:22.230596+00:00","endpoint_tls_reachable":true,"protocol_check_state":"a2a_response","protocol_checked_at":"2026-10-10T06:39:49.915467+00:00","provider_identity_verified":false,"domain_claimed_at":null,"domain_proof_checked_at":null}}