A2A Agent Card · kulalabs-ch

JOBFLOW

Provider: kulalabs-ch Card identifies: Kula Labs Conformance: Conformant Protocol: 0.3.0 Transport: JSONRPC Version: 1.0.0 Host: agents.kulalabs.ch Skills: 14
Discovery

An A2A client finds this agent by fetching the well-known path on the provider's own host. That is what makes an agent card different from every other agent artifact in this catalog: it is provider-published by construction — it cannot be derived, generated, or reconstructed on a provider's behalf.

https://agents.kulalabs.ch/.well-known/agent-card.json
Interfaces
https://agents.kulalabs.ch/api/a2a · transport JSONRPC · protocol
https://agents.kulalabs.ch/v1 · transport HTTP+JSON · protocol
Skills (14)

Check whether the flow exists intent.match

The first call: says whether the user's request is a flow JOBFLOW already runs. A match answers do_not_build true, the capabilities it touches and the next call; no match answers 404 OUT_OF_SCOPE. Never: Guess: it names the words it matched. Free.

jobflowapsreadtradesfield-service

Discover JOBFLOW discover

Catalog, schemas, fees, gate, error codes; with a trade, the field knowledge for it. Never: —. Free.

jobflowapsreadtradesfield-service

Quote a platform fee quote

The hard platform fee for a capability before it is called, with what is left of the daily cap. Never: Estimate the value of a job. Free.

jobflowapsreadtradesfield-service

Compare with building it compare

Build-vs-buy next to the hard fee, the estimate marked NOT_A_QUOTE. Never: Present a token count or an estimate as a fact. Free.

jobflowapsreadtradesfield-service

Create a mandate mandate.create

Creates a mandate and the out-of-band approval link for the owner. Never: Activate production. Free.

jobflowapsproposetradesfield-service

Propose the flow flow.configure

The WhatsApp-to-payment flow for this mandate as a configuration proposal. Never: Bind a channel or an account without an approved mandate. Free.

jobflowapsproposetradesfield-service

Classify a request intake.classify

Classifies a customer request and opens the flow (REQUEST → CLASSIFIED). Never: Set an emergency tariff. Platform fee CHF 0.05 per accepted call: quote first, then send quote_id, mandate_token and idempotency_key.

jobflowapsmutatetradesfield-service

Create the order job.create

Creates the order from the classification. Needs state CLASSIFIED. Never: Take a price from the request body. Platform fee CHF 0.05 per accepted call: quote first, then send quote_id, mandate_token and idempotency_key.

jobflowapsmutatetradesfield-service

Assign a technician assign

Assigns a technician by the business's rule. Needs state ORDER. Never: Treat free text as dispatching. Platform fee CHF 0.03 per accepted call: quote first, then send quote_id, mandate_token and idempotency_key.

jobflowapsmutatetradesfield-service

Book the appointment schedule

Books the earliest free slot in the business's working windows. Needs state ASSIGNED. Never: Use the agent's calendar as the source. Platform fee CHF 0.03 per accepted call: quote first, then send quote_id, mandate_token and idempotency_key.

jobflowapsmutatetradesfield-service

Seal the proof pack proof.seal

Hashes and closes the proof pack after the work is completed. Needs state WORK_COMPLETED. Never: Issue the invoice. Platform fee CHF 0.05 per accepted call: quote first, then send quote_id, mandate_token and idempotency_key.

jobflowapsmutatetradesfield-service

Issue the invoice invoice.issue

Issues the invoice from the business's tariff and the reported work, only after the proof pack. Needs state PROOF_PACK. Never: Invent a price or skip the gate. Platform fee CHF 0.18 per accepted call: quote first, then send quote_id, mandate_token and idempotency_key.

jobflowapsmoneytradesfield-service

Request payment payment.collect

Creates the payment request for the invoice (QR bill, TWINT, card). The flow reaches PAYMENT only on the signed event of the payment provider. Needs state INVOICE. Never: Mark anything paid or pay out without a settled status. Platform fee CHF 0.10 per accepted call: quote first, then send quote_id, mandate_token and idempotency_key.

jobflowapsmoneytradesfield-service

Verify a chain verify

Checks a chain: links, payload hashes and signatures. Never: Require a UI. Free.

jobflowapsreadtradesfield-service
Documentation
Evidence. Fetched 2026-10-30 from https://agents.kulalabs.ch/.well-known/agent-card.json, HTTP 200. The body was saved verbatim and is the sole source for everything on this page — no field is inferred. View the captured card. Providers change what they serve; if this card has moved or changed shape, the provider profile carries the current state as of the last build.

Work with this as data

Every agent card here is available over the APIs.io API and to AI agents over MCP. A2A Agent Cards is not yet its own endpoint on the v1 API. Reach it through catalog search and the tag graph, or the MCP server.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for a2a agent cards

3 MCP tools reach this
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
Search the catalog
curl "https://apis.io/api/v1/search?q=kulalabs-ch&limit=10"
Everything under a tag
curl "https://apis.io/api/v1/tags/kulalabs-ch"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.