Launchfiles hosted MCP: free page radars (design UX, search repair, deploy trust) + workspace tools.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Create provider-agnostic agent checkout. Returns payment_url and/or x402 challenge plus poll_url. Poll until paid to receive agent_api_key once. Does not debit credits or publish.
Commercial SKU id (page_draft_long or pack_starter_40). Hunt-shaped ids (hunt, hunt_for_hire, product_hunt, hunt-meter) are founder-only and not for sale.
Optional provider id (stripe|xmoney|x402).
Buyer email (required for card/link; optional for pure x402).
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Create provider-agnostic agent checkout. Returns payment_url and/or x402 challenge plus poll_url. Poll until paid to receive agent_api_key once. Does not debit credits or publish.
| Argument | Type | Description |
|---|---|---|
| offerId* | string | Commercial SKU id (page_draft_long or pack_starter_40). Hunt-shaped ids (hunt, hunt_for_hire, product_hunt, hunt-meter) are founder-only and not for sale. |
| provider | string | Optional provider id (stripe|xmoney|x402). |
| customerEmail | string | Buyer email (required for card/link; optional for pure x402). |
| preferredRail | string | |
| idempotencyKey | string |
{
"type": "object",
"required": [
"offerId"
],
"properties": {
"offerId": {
"type": "string",
"minLength": 1,
"description": "Commercial SKU id (page_draft_long or pack_starter_40). Hunt-shaped ids (hunt, hunt_for_hire, product_hunt, hunt-meter) are founder-only and not for sale."
},
"provider": {
"type": "string",
"description": "Optional provider id (stripe|xmoney|x402)."
},
"customerEmail": {
"type": "string",
"description": "Buyer email (required for card/link; optional for pure x402)."
},
"preferredRail": {
"enum": [
"card_checkout",
"payment_link",
"x402",
"auto"
],
"type": "string"
},
"idempotencyKey": {
"type": "string"
}
},
"additionalProperties": false
}List payment providers available for agent checkout (id, enabled, mode, rails). Discover-only; does not spend or mutate ledger.
No arguments.
{
"type": "object",
"properties": {},
"additionalProperties": false
}Poll an agent checkout until settled. When paid, returns agent_api_key once and, for page_draft_long, an unlock_token. Does not spend.
| Argument | Type | Description |
|---|---|---|
| provider | string | |
| paymentId* | string | |
| payment_id | string |
{
"type": "object",
"required": [
"paymentId"
],
"properties": {
"provider": {
"type": "string"
},
"paymentId": {
"type": "string",
"minLength": 1
},
"payment_id": {
"type": "string"
}
},
"additionalProperties": false
}Collect the lf_agent_ key once after the approve link is opened. Pending until then. Second poll redacts the secret.
| Argument | Type | Description |
|---|---|---|
| pollToken | string | |
| poll_token* | string |
{
"type": "object",
"required": [
"poll_token"
],
"properties": {
"pollToken": {
"type": "string"
},
"poll_token": {
"type": "string",
"minLength": 8
}
},
"additionalProperties": false
}Primary agentic mint. Emails a one-time approve link to an allowlisted or approved-waitlist address. Returns poll_token. Does not mint a key until the link is opened. Rejects other addresses. Optional partner_id mints an lf_agent_ key whose scopes carry that partner claim (allowlist only). Omit partner_id for a generic agent key. Developer keys are not minted here. Founder UI is backup.
| Argument | Type | Description |
|---|---|---|
| email* | string | |
| partner_id | string | Optional partner id. Must be on LAUNCHFILES_PARTNER_ALLOWLIST or the call returns UNKNOWN_PARTNER and sends no email. The minted secret stays lf_agent_ and stores partner_id:<id> in scopes. |
{
"type": "object",
"required": [
"email"
],
"properties": {
"email": {
"type": "string",
"minLength": 3
},
"partner_id": {
"type": "string",
"description": "Optional partner id. Must be on LAUNCHFILES_PARTNER_ALLOWLIST or the call returns UNKNOWN_PARTNER and sends no email. The minted secret stays lf_agent_ and stores partner_id:<id> in scopes."
}
},
"additionalProperties": false
}Public free Deployment Trust Radar packet (free-full demand probe; no paid tier). Requires deployment URL, use-case description, autonomy level, and data sensitivity. Rate-limited.
| Argument | Type | Description |
|---|---|---|
| url* | string | Target https URL. |
| autonomy* | string | |
| notify_email | string | Optional. If you want a link back to this report later, send an email. Not required. |
| use_case_plain* | string | Plain-language AI job description (≥ ~20 chars). |
| idempotency_key | string | |
| data_sensitivity* | string | |
| success_looks_like_plain | string |
{
"type": "object",
"required": [
"url",
"use_case_plain",
"autonomy",
"data_sensitivity"
],
"properties": {
"url": {
"type": "string",
"minLength": 1,
"description": "Target https URL."
},
"autonomy": {
"enum": [
"suggest_only",
"draft_with_approval",
"act_with_approval",
"fully_auto"
],
"type": "string"
},
"notify_email": {
"type": "string",
"description": "Optional. If you want a link back to this report later, send an email. Not required."
},
"use_case_plain": {
"type": "string",
"minLength": 20,
"description": "Plain-language AI job description (≥ ~20 chars)."
},
"idempotency_key": {
"type": "string"
},
"data_sensitivity": {
"enum": [
"public",
"internal",
"pii",
"regulated"
],
"type": "string"
},
"success_looks_like_plain": {
"type": "string"
}
},
"additionalProperties": false
}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. Does not edit or publish the site. Rate-limited. Optional partner leave-behind fields add structured zones on this JSON response only (not public /cro chrome). client_ref is echoed so the caller can file the pair in their own DB; Launchfiles does not list runs by client. hide_lf_chrome is honored only for an authenticated lf_agent_ key; otherwise the response sets hide_lf_chrome false and wl_entitlement needs_auth. logo_url is an https URL shape check only (no fetch); a bad shape returns LOGO_URL_INVALID and no leave-behind.
| Argument | Type | Description |
|---|---|---|
| url* | string | Public https URL to analyze (preview mode only). |
| role | string | |
| device | string | |
| locale | string | |
| logo_url | string | Absolute https URL. Shape is checked; this path does not fetch the image. Invalid shape returns LOGO_URL_INVALID. |
| brand_name | string | Partner display name. Empty keeps Launchfiles labels. Do not invent a name. |
| client_ref | string | Opaque client tag echoed next to run_id. Distro files this pair in Distro's DB. Launchfiles does not isolate or list clients from this echo. |
Paid Page Draft after a settled page_draft_long checkout, or a founder-issued developer key (no Stripe). Same writer door as the web buyer. Pass unlock_token from billing poll, or Authorization: Bearer with the developer key, plus a brief (who, and proof or proof_mode=no_proof). length=short|medium|long. Optional piece_kind: blog_post | landing_page | essay | social_post | seo_page | other. Omitted piece_kind keeps today's inference (short social/X stays cognition). A developer key may request short. Not a credit debit. Nothing is published. Writer failure is named — never an outline template.
| Argument | Type | Description |
|---|---|---|
| url | string | |
| who | string | |
| proof | string | |
| topic | string | |
| length | string | |
| next_step | string | |
| paymentId | string | |
| payment_id | string | |
| piece_kind | string | Surface. blog_post/essay/landing_page/seo_page with an owned URL can exit cognition even at length=short. social_post stays cognition. Omit to keep today's short→cognition default. |
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. Send the developer key as Authorization: Bearer (hosted MCP also accepts x-api-key or JSON-RPC _meta). Pass a brief (who, and proof or proof_mode=no_proof). Optional piece_kind: blog_post | landing_page | essay | social_post | seo_page | other. Omitted piece_kind keeps today's short→cognition social/X path. Owned blog/essay + piece_kind can return a pasteable dek. Nothing is published. Writer failure is named — never an outline template.
| Argument | Type | Description |
|---|---|---|
| url | string | |
| who | string | |
| proof | string | |
| topic | string | |
| next_step | string | |
| piece_kind | string | Surface. blog_post/essay with an owned URL can exit cognition and emit a card dek. Omit for today's cognition short. |
| proof_mode | string |
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"who": {
"type": "string"
},
"proof": {
"type": "string"
},
"topic": {
"type": "string"
},
"next_step": {
"type": "string"
},
"piece_kind": {
"enum": [
"blog_post",
"landing_page",
"essay",
"social_post",
"seo_page",
"other"
],
"type": "string",
"description": "Surface. blog_post/essay with an owned URL can exit cognition and emit a card dek. Omit for today's cognition short."
},
"proof_mode": {
"type": "string"
}
},
"additionalProperties": false
}Public free Search Repair Radar teaser. Preview only — never unlocks the $29/mo paid repair packet. Owned product properties that already declare Search Console on their adapter use that bind (no access_token). Other sites need a Google access_token or return needs_auth + human connect URL. Rate-limited.
| Argument | Type | Description |
|---|---|---|
| site_url | string | |
| access_token | string | Optional. OAuth access token with webmasters.readonly for sites that are not an owned adapter property. Not required for an already-bound product GSC property. |
| gsc_site_url | string | GSC property e.g. sc-domain:example.com or https://example.com/ |
| notify_email | string | Optional. If you want a link back to this report later, send an email. Not required. |
| idempotency_key | string |
{
"type": "object",
"properties": {
"site_url": {
"type": "string"
},
"access_token": {
"type": "string",
"description": "Optional. OAuth access token with webmasters.readonly for sites that are not an owned adapter property. Not required for an already-bound product GSC property."
},
"gsc_site_url": {
"type": "string",
"description": "GSC property e.g. sc-domain:example.com or https://example.com/"
},
"notify_email": {
"type": "string",
"description": "Optional. If you want a link back to this report later, send an email. Not required."
},
"idempotency_key": {
"type": "string"
}
},
"additionalProperties": false
}| partner_id | string | Optional. Must match the partner_id claim on the lf_agent_ key. A mismatch or an anonymous claim returns UNAUTHORIZED_PARTNER or NEEDS_AUTH. Omit to use the key's claim. Partner keys also consume the daily runs quota. |
| notify_email | string | Optional. If you want a link back to this report later, send an email. Not required. |
| primary_color | string | Optional #RGB or #RRGGBB header accent. Invalid values are ignored. |
| hide_lf_chrome | boolean | When true, Launchfiles wordmark and powered-by are removed only if the caller authenticated with lf_agent_ (including a partner-scoped key). Otherwise hide_lf_chrome is false and wl_entitlement is needs_auth. |
| idempotency_key | string |
{
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"minLength": 1,
"description": "Public https URL to analyze (preview mode only)."
},
"role": {
"type": "string"
},
"device": {
"enum": [
"mobile",
"desktop"
],
"type": "string"
},
"locale": {
"type": "string"
},
"logo_url": {
"type": "string",
"description": "Absolute https URL. Shape is checked; this path does not fetch the image. Invalid shape returns LOGO_URL_INVALID."
},
"brand_name": {
"type": "string",
"description": "Partner display name. Empty keeps Launchfiles labels. Do not invent a name."
},
"client_ref": {
"type": "string",
"description": "Opaque client tag echoed next to run_id. Distro files this pair in Distro's DB. Launchfiles does not isolate or list clients from this echo."
},
"partner_id": {
"type": "string",
"description": "Optional. Must match the partner_id claim on the lf_agent_ key. A mismatch or an anonymous claim returns UNAUTHORIZED_PARTNER or NEEDS_AUTH. Omit to use the key's claim. Partner keys also consume the daily runs quota."
},
"notify_email": {
"type": "string",
"description": "Optional. If you want a link back to this report later, send an email. Not required."
},
"primary_color": {
"type": "string",
"description": "Optional #RGB or #RRGGBB header accent. Invalid values are ignored."
},
"hide_lf_chrome": {
"type": "boolean",
"description": "When true, Launchfiles wordmark and powered-by are removed only if the caller authenticated with lf_agent_ (including a partner-scoped key). Otherwise hide_lf_chrome is false and wl_entitlement is needs_auth."
},
"idempotency_key": {
"type": "string"
}
},
"additionalProperties": false
}| proof_mode | string |
| unlockToken | string |
| unlock_token | string |
{
"type": "object",
"properties": {
"url": {
"type": "string"
},
"who": {
"type": "string"
},
"proof": {
"type": "string"
},
"topic": {
"type": "string"
},
"length": {
"enum": [
"short",
"medium",
"long"
],
"type": "string"
},
"next_step": {
"type": "string"
},
"paymentId": {
"type": "string"
},
"payment_id": {
"type": "string"
},
"piece_kind": {
"enum": [
"blog_post",
"landing_page",
"essay",
"social_post",
"seo_page",
"other"
],
"type": "string",
"description": "Surface. blog_post/essay/landing_page/seo_page with an owned URL can exit cognition even at length=short. social_post stays cognition. Omit to keep today's short→cognition default."
},
"proof_mode": {
"type": "string"
},
"unlockToken": {
"type": "string"
},
"unlock_token": {
"type": "string"
}
},
"additionalProperties": false
}