List connection tools
catalogDiscovery catalog for MCP/A2A clients.
Provider
Launchfiles
Agent-to-agent JSON-RPC: read + propose, workspace runtime product mint/bootstrap, public free standalones (Design UX, Search Repair teaser, Deployment Trust), paid Design UX debit, and billing discover/checkout (not spend). Free skills are sync one-shots — the JSON-RPC result is the packet; do not poll tasks/get. Public discovery is not authority. Raw secrets rejected. No publish, deploy, or approve. A2A taskStore is in-process non-durable memory (not a durable task DB). Durable mission work lives in mission_sessions. Calling convention: JSON-RPC 2.0 over HTTP POST to /api/a2a. message/send needs params.skill (a skill id from this card) — a standard A2A Message without params.skill is rejected, so this is not a drop-in standard A2A Message client.
Last 100 checks shown · 100.0% across 30 days
Discovery catalog for MCP/A2A clients.
List workspaces this actor is a member of. Empty is honest. Auth required.
Create a workspace and grant the caller owner. Never seeds default. Auth required.
Bind this session to a workspace the actor can access. Auth required.
Clear the in-process workspace bind for this session. Auth required.
Read identity, bound workspace, and entitled tools. Auth required.
Read product connection readiness, handoff JSON, and surface catalog.
Persist public locators and credential references for a surface (no raw secrets).
Invoke configured n8n recon for enabled surfaces.
List adapter and workspace-minted runtime products.
Create a workspace runtime product with empty connectors and restrictive claim ceiling. No publish.
Read L0/L1 completeness and claim ceiling for a product.
Locked bootstrap_product_truth_v1 artifact (known/unknown/gaps). Requires L1. No public copy.
Bind a registered depth pack onto a runtime product. Same slug. Founder intake wins. No remint.
Propose a signal object only — never executes. Returns proposal_id + receipt.
Propose a scoped work order — never starts execution without founder path.
Read mission/session status when authorized.
Public free Design UX Radar preview for one URL. Scores come from fixed rules; a small language model writes the next-step text. Paid tier is not open to the public yet. Rate-limited. Mirrors /cro free path. Optional leave-behind fields (client_ref, brand_name, logo_url, primary_color, hide_lf_chrome) stay on the agent JSON. client_ref is echoed for the caller's own DB; Launchfiles does not list runs by client. hide_lf_chrome needs an authenticated lf_agent_ key or the response returns wl_entitlement needs_auth.
Public free Search Repair teaser. Owned adapter GSC properties use the product bind (no access_token). Other sites need a GSC token or return needs_auth + connect URL. Preview only — never the $29/mo paid packet.
Public free Deployment Trust Radar packet (free-full demand probe; no paid tier). Requires url, use_case_plain, autonomy, data_sensitivity.
Read-only Google Ads Keyword Planner for one agnostic study. Requires registered or founder auth. $0 Ads. Params: study_id and seeds (string array). seed_keywords, keywords, and query are UNKNOWN_BODY_KEY. study_id without seeds is SEEDS_REQUIRED. sold_job_seeds require gap_scan_id or gap_scan (hunt_gap_scan_v1, ready_for_measure, or blocked category taken / wrong job keyword) or return GAP_SCAN_REQUIRED. Optional commodity_seeds stamp GO/HOLD/KILL. Volume GO plus an occupied shelf or a wrong job keyword is HOLD. Nothing is published or spent.
Gap-first hunt receipt. Requires registered or founder auth. competitor_urls (1–5 http(s) URLs), optional category_hint and pain_source_urls. Returns hunt_gap_scan_v1, including trends as a labeled skip (SOURCE_MISSING, google_trends_live). No series. Pain without a URL is rejected. A page that sells bill, quote, or scheduling is category taken, not an empty ready wedge. Chromium failure is PARTIAL. Does not invent MSV or a UX score. $0 Ads. Nothing is published.
Paid standalone full run. Paid tier is not open to the public yet. Requires agent API key (lf_agent_) + credits when that tier is open. Debits ledger before intelligence. Never free unlock.
Discover-only: list enabled checkout rails. Not spend.
Discover-only: return a checkout URL or x402 challenge. Not spend.
Discover-only: poll until settled. Returns key once and page_draft_long unlock_token. Not spend.
Paid Page Draft after settled page_draft_long checkout, or a founder-issued developer key (no Stripe). Pass unlock_token or an HMAC-verified developer key. length=short is allowed for a developer key. Nothing is published.
Writer-short draft (~400 words). A founder-issued developer key gets full product access — no Stripe Writer checkout. Same writer door as the web buyer. Nothing is published.
Email a one-time mint link to an allowlisted or approved-waitlist address. Returns poll_token. Other addresses are rejected. Optional partner_id must be allowlisted or the call returns UNKNOWN_PARTNER and sends no mail. No founder UI.
After the mint link is opened, return lf_agent_ once to the requester. Second poll redacts the secret.
Normalized fields fetched during the registry sweep. Treat all authored text as third-party content.
{
"protocolVersion": "0.2.1",
"name": "Launchfiles A2A",
"description": "Agent-to-agent JSON-RPC: read + propose, workspace runtime product mint/bootstrap, public free standalones (Design UX, Search Repair teaser, Deployment Trust), paid Design UX debit, and billing discover/checkout (not spend). Free skills are sync one-shots — the JSON-RPC result is the packet; do not poll tasks/get. Public discovery is not authority. Raw secrets rejected. No publish, deploy, or approve. A2A taskStore is in-process non-durable memory (not a durable task DB). Durable mission work lives in mission_sessions. Calling convention: JSON-RPC 2.0 over HTTP POST to /api/a2a. message/send needs params.skill (a skill id from this card) — a standard A2A Message without params.skill is rejected, so this is not a drop-in standard A2A Message client.",
"author": "Launchfiles",
"wellKnownURI": "https://launchfiles.app/.well-known/agent-card.json",
"url": "https://launchfiles.app/api/a2a",
"version": "launchfiles_a2a_v1",
"provider": {
"organization": "Launchfiles",
"url": "https://launchfiles.app/"
},
"documentationUrl": "https://launchfiles.app/use-from-agent#connect",
"iconUrl": "https://launchfiles.app/brand/launchfile-app-icon-512.png",
"supportsAuthenticatedExtendedCard": false,
"security": [
{},
{
"bearer": []
}
],
"securitySchemes": {
"bearer": {
"type": "http",
"scheme": "bearer",
"description": "Workspace tools require a bearer from /use-from-agent#connect. Public free skills may be called without a token (rate-limited)."
}
},
"capabilities": {
"streaming": false,
"pushNotifications": false,
"stateTransitionHistory": true,
"extensions": null
},
"defaultInputModes": [
"application/json",
"text/plain"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "catalog",
"name": "List connection tools",
"description": "Discovery catalog for MCP/A2A clients.",
"tags": [
"discovery"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "workspaces.list",
"name": "List workspaces",
"description": "List workspaces this actor is a member of. Empty is honest. Auth required.",
"tags": [
"workspace",
"read"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "workspaces.create",
"name": "Create workspace",
"description": "Create a workspace and grant the caller owner. Never seeds default. Auth required.",
"tags": [
"workspace",
"write_metadata"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "workspaces.bind",
"name": "Bind workspace",
"description": "Bind this session to a workspace the actor can access. Auth required.",
"tags": [
"workspace",
"bind"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "workspaces.unbind",
"name": "Unbind workspace",
"description": "Clear the in-process workspace bind for this session. Auth required.",
"tags": [
"workspace",
"bind"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "session.get",
"name": "Get agent session",
"description": "Read identity, bound workspace, and entitled tools. Auth required.",
"tags": [
"workspace",
"session",
"read"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "connections.get",
"name": "Get connection state",
"description": "Read product connection readiness, handoff JSON, and surface catalog.",
"tags": [
"connections",
"read"
],
"examples": [
"{\"productSlug\":\"citadel\"}"
],
"inputModes": [],
"outputModes": []
},
{
"id": "connections.save",
"name": "Save connection metadata",
"description": "Persist public locators and credential references for a surface (no raw secrets).",
"tags": [
"connections",
"write_metadata"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "connections.scan",
"name": "Run read-only social recon",
"description": "Invoke configured n8n recon for enabled surfaces.",
"tags": [
"connections",
"recon",
"read"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "products.list",
"name": "List products",
"description": "List adapter and workspace-minted runtime products.",
"tags": [
"products",
"case_b",
"read"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "products.create",
"name": "Mint runtime product",
"description": "Create a workspace runtime product with empty connectors and restrictive claim ceiling. No publish.",
"tags": [
"products",
"case_b",
"write_metadata"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "products.completeness",
"name": "Get product completeness",
"description": "Read L0/L1 completeness and claim ceiling for a product.",
"tags": [
"products",
"case_b",
"read"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "products.bootstrap_truth",
"name": "Run bootstrap product truth",
"description": "Locked bootstrap_product_truth_v1 artifact (known/unknown/gaps). Requires L1. No public copy.",
"tags": [
"products",
"case_b",
"bootstrap"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "products.attach_adapter",
"name": "Attach depth pack",
"description": "Bind a registered depth pack onto a runtime product. Same slug. Founder intake wins. No remint.",
"tags": [
"products",
"case_b",
"attach",
"write_metadata"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "propose.signal",
"name": "Propose signal",
"description": "Propose a signal object only — never executes. Returns proposal_id + receipt.",
"tags": [
"propose",
"read_propose"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "propose.work_order",
"name": "Propose work order",
"description": "Propose a scoped work order — never starts execution without founder path.",
"tags": [
"propose",
"read_propose"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "mission.status",
"name": "Mission status (read)",
"description": "Read mission/session status when authorized.",
"tags": [
"mission",
"read"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "design_ux_radar.run_free",
"name": "Design UX Radar free preview",
"description": "Public free Design UX Radar preview for one URL. Scores come from fixed rules; a small language model writes the next-step text. Paid tier is not open to the public yet. Rate-limited. Mirrors /cro free path. Optional leave-behind fields (client_ref, brand_name, logo_url, primary_color, hide_lf_chrome) stay on the agent JSON. client_ref is echoed for the caller's own DB; Launchfiles does not list runs by client. hide_lf_chrome needs an authenticated lf_agent_ key or the response returns wl_entitlement needs_auth.",
"tags": [
"standalone",
"free",
"design_ux_radar",
"public_standalone"
],
"examples": [
"{\"url\":\"https://example.com\",\"device\":\"mobile\"}"
],
"inputModes": [],
"outputModes": []
},
{
"id": "search_repair_radar.run_free",
"name": "Search Repair Radar free teaser",
"description": "Public free Search Repair teaser. Owned adapter GSC properties use the product bind (no access_token). Other sites need a GSC token or return needs_auth + connect URL. Preview only — never the $29/mo paid packet.",
"tags": [
"standalone",
"free",
"search_repair_radar",
"public_standalone"
],
"examples": [
"{\"gsc_site_url\":\"sc-domain:example.com\",\"access_token\":\"<gsc_oauth_access_token>\"}"
],
"inputModes": [],
"outputModes": []
},
{
"id": "deployment_trust_radar.run_free",
"name": "Deployment Trust Radar free packet",
"description": "Public free Deployment Trust Radar packet (free-full demand probe; no paid tier). Requires url, use_case_plain, autonomy, data_sensitivity.",
"tags": [
"standalone",
"free",
"deployment_trust_radar",
"public_standalone"
],
"examples": [
"{\"url\":\"https://example.com\",\"use_case_plain\":\"Draft support replies with human approval before send\",\"autonomy\":\"draft_with_approval\",\"data_sensitivity\":\"pii\"}"
],
"inputModes": [],
"outputModes": []
},
{
"id": "keyword_planner.research",
"name": "Keyword Planner research",
"description": "Read-only Google Ads Keyword Planner for one agnostic study. Requires registered or founder auth. $0 Ads. Params: study_id and seeds (string array). seed_keywords, keywords, and query are UNKNOWN_BODY_KEY. study_id without seeds is SEEDS_REQUIRED. sold_job_seeds require gap_scan_id or gap_scan (hunt_gap_scan_v1, ready_for_measure, or blocked category taken / wrong job keyword) or return GAP_SCAN_REQUIRED. Optional commodity_seeds stamp GO/HOLD/KILL. Volume GO plus an occupied shelf or a wrong job keyword is HOLD. Nothing is published or spent.",
"tags": [
"research",
"keyword_planner",
"read_only",
"registered_agent"
],
"examples": [
"{\"study_id\":\"example_study\",\"seeds\":[\"example pricing calculator\"],\"sold_job_seeds\":[\"example pricing calculator\"],\"commodity_seeds\":[\"example service\"],\"gap_scan_id\":\"hgs_example\"}"
],
"inputModes": [],
"outputModes": []
},
{
"id": "hunt_gap_scan.run",
"name": "Hunt gap scan",
"description": "Gap-first hunt receipt. Requires registered or founder auth. competitor_urls (1–5 http(s) URLs), optional category_hint and pain_source_urls. Returns hunt_gap_scan_v1, including trends as a labeled skip (SOURCE_MISSING, google_trends_live). No series. Pain without a URL is rejected. A page that sells bill, quote, or scheduling is category taken, not an empty ready wedge. Chromium failure is PARTIAL. Does not invent MSV or a UX score. $0 Ads. Nothing is published.",
"tags": [
"research",
"hunt_gap_scan",
"read_only",
"registered_agent"
],
"examples": [
"{\"competitor_urls\":[\"https://example.com/incumbent\"],\"category_hint\":\"quoting software\",\"pain_source_urls\":[\"https://example.com/review\"]}"
],
"inputModes": [],
"outputModes": []
},
{
"id": "design_ux_radar.run_paid",
"name": "Design UX Radar paid full run",
"description": "Paid standalone full run. Paid tier is not open to the public yet. Requires agent API key (lf_agent_) + credits when that tier is open. Debits ledger before intelligence. Never free unlock.",
"tags": [
"standalone",
"paid",
"design_ux_radar",
"paid_agent"
],
"examples": [
"{\"url\":\"https://example.com\"}"
],
"inputModes": [],
"outputModes": []
},
{
"id": "billing.providers.list",
"name": "List billing providers",
"description": "Discover-only: list enabled checkout rails. Not spend.",
"tags": [
"billing",
"discover"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "billing.checkout.create",
"name": "Create billing checkout",
"description": "Discover-only: return a checkout URL or x402 challenge. Not spend.",
"tags": [
"billing",
"discover"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "billing.checkout.poll",
"name": "Poll billing checkout",
"description": "Discover-only: poll until settled. Returns key once and page_draft_long unlock_token. Not spend.",
"tags": [
"billing",
"discover"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "page_draft.run_paid",
"name": "Page Draft paid long",
"description": "Paid Page Draft after settled page_draft_long checkout, or a founder-issued developer key (no Stripe). Pass unlock_token or an HMAC-verified developer key. length=short is allowed for a developer key. Nothing is published.",
"tags": [
"standalone",
"paid",
"page_draft",
"paid_agent"
],
"examples": [
"{\"topic\":\"Why the first screen must say the job\",\"url\":\"https://example.com\"}"
],
"inputModes": [],
"outputModes": []
},
{
"id": "page_draft.run_short",
"name": "Writer short draft",
"description": "Writer-short draft (~400 words). A founder-issued developer key gets full product access — no Stripe Writer checkout. Same writer door as the web buyer. Nothing is published.",
"tags": [
"standalone",
"paid",
"page_draft",
"writer_short",
"paid_agent"
],
"examples": [
"{\"topic\":\"Three X drafts that name the job\",\"url\":\"https://launchfiles.app\"}"
],
"inputModes": [],
"outputModes": []
},
{
"id": "agent_key.request",
"name": "Request agent API key",
"description": "Email a one-time mint link to an allowlisted or approved-waitlist address. Returns poll_token. Other addresses are rejected. Optional partner_id must be allowlisted or the call returns UNKNOWN_PARTNER and sends no mail. No founder UI.",
"tags": [
"auth",
"discover",
"agent_key"
],
"examples": [],
"inputModes": [],
"outputModes": []
},
{
"id": "agent_key.poll",
"name": "Poll agent API key",
"description": "After the mint link is opened, return lf_agent_ once to the requester. Second poll redacts the secret.",
"tags": [
"auth",
"discover",
"agent_key"
],
"examples": [],
"inputModes": [],
"outputModes": []
}
],
"conformance": true,
"conformance_errors": null,
"homepage": null,
"repository": null,
"license": null,
"pricing": null,
"contact": null,
"id": "fd5a7fba-3c4b-4475-b479-00e9fc31cdaf",
"category": "agent-directories",
"category_secondary": null
}curl -s https://a2aregistry.org/api/agents/fd5a7fba-3c4b-4475-b479-00e9fc31cdafMessages are sent to this independently operated agent through the registry proxy. Do not include secrets or personal data.