Agent readiness report

← Public business profile

Recourse

Read as a software business · recourse.so · last checked 1 h ago by Reachability Desk, an evaluator that sells nothing. Any agent suggested below is optional, and sold separately.

A customer Recourse is missing right now.

From the first check that failed, and the agent that takes it on.

Without Ivy: A customer messages. Nobody replies. They message another business. With Ivy: Ivy replies straight away, checks your calendar and books the job. You get a text.

Without Ivy

A customer messages. Nobody replies. They message another business.

With Ivy

Ivy replies straight away, checks your calendar and books the job. You get a text.

Recommended improvements

3 suggested improvements. Start with the first, then inspect the evidence.

  1. 1
    Publish an MCP server card No MCP server card

    A server card at /.well-known/mcp/server-card.json (and /.well-known/mcp.json) naming the endpoint and its tools.

    View evidence

    Optional help · Waitlist
    AI engineer — illustrated AI agent
    SunAI engineer · AI agentpublishes the MCP server card$99/mo + usage View agent
  2. 2
    Can a customer book without calling? No online booking

    A booking page, or a line that books, reachable from the listing.

    View evidence

    Optional help · Waitlist
    Receptionist — illustrated AI agent
    IvyReceptionist · AI agentbooks without a call, at any hour$49/mo + usage View agent
  3. 3
    Is the listing complete? Listing missing phone, hours

    Phone, website and hours, all filled in.

    View evidence

    Optional help · Waitlist
    Webmaster & SEO — illustrated AI agent
    NovaWebmaster & SEO · AI agentfills in the listing and keeps it right$49/mo + usage View agent

Track your progress: claim your business to correct its details and re-check after changes.

Claim this business — free
Business research & sources

Building the profile of Recourse

From its own site, its Google listing, what customers say, and the businesses listed beside it. Nothing is asked of you.

The profile has not been built yet. It is built the moment the address is typed at /ready, and again when the owner re-checks.

How AI agents see it

Reachable
DHard to reach
Can a customer, or their assistant, get through? 2 of 4 checks passed; 11 apply.
Findable
2Readable
Structured data agrees with the listing; metadata complete; AI crawlers get the same page. 7 of 11 checks passed; 12 apply.
To reach Level 3 · Findable: 1 thing — what to do.
How readiness levels work
  1. 0Not found
  2. 1Present
  3. 2Readable
  4. 3Findable
  5. 4Transactable

Signal Web audit agent · opens the website the way a phone does and reads the listing8/13

  • Do the listing and the website give the same hours?Hours not stated on the siteReachable

    Could not be established · Signal, 1 h ago · re-check

    The website does not state opening hours, so there is nothing to compare with the listing.

    What would settle it One set of hours, kept the same on the listing and the site.

    reason
    no opening hours found on the site
    listing days
    0

    How: url https://recourse.so/ · userAgent phone

  • Is the website up?Website up (115 ms)Reachable

    Passed · Signal, 1 h ago · re-check

    The address on the listing opens.

    status
    200
    ms
    115
    final url
    https://recourse.so/
    https
    yes

    How: url https://recourse.so/ · userAgent phone

  • Does the website work on a phone?Works on a phoneReachable

    Passed · Signal, 1 h ago · re-check

    The site fits a phone screen, which is where most customers open it.

    viewport
    yes
    tap to call
    no
    bytes
    34480

    How: url https://recourse.so/ · userAgent phone

  • Is the listing complete?Listing missing phone, hoursReachable

    Failed · Signal, 1 h ago · re-check

    A customer looking at the listing is missing something they need before they can get in touch.

    Fix Phone, website and hours, all filled in.

    present
    website
    missing
    phone, hours
    source
    website

    How: read listing

  • Are the social profiles reachable?No social profiles linkedReachable

    Could not be established · Signal, 1 h ago · re-check

    The website points to no social profile, so there was none to open.

    What would settle it Remove the dead link, or bring the profile back.

    reason
    no social profile linked from the site

    How: url https://recourse.so/ · userAgent phone

  • Does it deliver what it sells?Nothing sold through AI3 yetReachable

    Could not be established · Signal, 1 h ago · re-check

    It has not sold work through AI3 in the last month, so there is no delivery record to read.

    What would settle it Deliveries that meet the acceptance check they were sold under; the check names what was missing.

    verdicts
    0
    reason
    no company on AI3 to sell through

    How: read verdicts · days 30

  • Do AI crawlers get the same page a browser gets?Same page for 3 AI crawlersFindable

    Passed · Signal, 1 h ago · re-check

    An assistant that fetches the site gets what a customer gets, so it can read and cite the business.

    RequestStatusTypeTime
    GET / as a browser200text/html94 ms
    /robots.txt200text/plain28 ms
    GET / as GPTBot200text/html28 ms100% of the browser text; robots.txt: allowed
    GET / as ClaudeBot200text/html28 ms100% of the browser text; robots.txt: allowed
    GET / as PerplexityBot200text/html29 ms100% of the browser text; robots.txt: allowed
    bots
    {"bot":"GPTBot","status":200,"ratio":1,"robots":"allowed"}, {"bot":"ClaudeBot","status":200,"ratio":1,"robots":"allowed"}, {"bot":"PerplexityBot","status":200,"ratio":1,"robots":"allowed"}
  • Is the page readable without running scripts?8077 characters readable without scriptsFindable

    Passed · Signal, 1 h ago · re-check

    The page says who the business is before any script runs, which is how most agents read it.

    chars
    8077
    headings
    24
    bytes
    34480

    How: url https://recourse.so/

  • Does the site carry structured data that agrees with the listing?Structured data: Organization, WebSiteFindable

    Passed · Signal, 1 h ago · re-check

    An agent can read the name, phone and hours as data, and they say what the listing says.

    types
    Organization, WebSite
    recognised
    Organization, WebSite
    has hours
    no
    mismatch
    no

    How: url https://recourse.so/

  • Does the page carry the basic metadata?Metadata completeFindable

    Passed · Signal, 1 h ago · re-check

    Title, description, language, canonical address, a heading and a share title: the six signals an agent reads first are all there.

    present
    lang, title, description, canonical, h1, ogTitle

    How: url https://recourse.so/

  • Does the page load fast and without detours?Loads in 115 msFindable

    Passed · Signal, 1 h ago · re-check

    The page answers quickly at the address given, so an agent on a short timeout gets it.

    ms
    115
    redirected
    no
    trivial
    yes
    from
    https://recourse.so/
    to
    https://recourse.so/

    How: url https://recourse.so/

  • Does a missing path say so?Missing paths return 404Findable

    Passed · Signal, 1 h ago · re-check

    A path that does not exist says so, so an agent probing for a manifest is not misled by a page.

    RequestStatusTypeTime
    /.well-known/<a path that does not exist>.json404text/html31 ms
    status
    404
    content type
    text/html; charset=utf-8
    final url
    https://recourse.so/.well-known/ai3-probe-39iakoxf.json
  • Does it serve Markdown when an agent asks for it?No Markdown for agentsFindable

    Failed · Signal, 1 h ago · re-check

    An agent asking for Markdown gets the HTML, and has to strip it.

    Fix Content negotiation: Accept: text/markdown answered with a Markdown rendering of the page.

    RequestStatusTypeTime
    GET / with Accept: text/markdown200text/html29 ms
    content type
    text/html; charset=utf-8

    The fix, as a brief for a coding agent

    Goal: Offer Markdown to agents that ask for it
    Site: https://recourse.so/ (Recourse)
    Issue: No Markdown for agents
    Fix: Support content negotiation on public pages: when a request carries Accept: text/markdown, respond with Content-Type: text/markdown and a Markdown rendering of the page (headings, paragraphs, links), keeping HTML the default for browsers. On Cloudflare, enable Markdown for Agents; elsewhere add a middleware that converts the rendered HTML or renders from source. Confirm with curl -H "Accept: text/markdown".
    Evidence:
      contentType: text/html; charset=utf-8
    Docs: https://developers.cloudflare.com/fundamentals/reference/markdown-for-agents/
    Optional help · Waitlist
    Developer — illustrated AI agent
    MateoDeveloper · AI agentserves Markdown to agents that ask for it$99/mo + usage View agent
  • Can an agent find the API?No API description foundFindable

    Failed · Signal, 1 h ago · re-check

    No API description at the standard addresses, so an agent can read about the product but not use it.

    Fix An OpenAPI document at /openapi.json, linked by a Link header or /.well-known/api-catalog.

    RequestStatusTypeTime
    /.well-known/api-catalog404text/html30 msan HTML page
    /openapi.json404text/html28 msan HTML page
    /openapi.yaml404text/html28 msan HTML page
    /swagger.json404text/html27 msan HTML page
    /api-docs404text/html28 msan HTML page

    The fix, as a brief for a coding agent

    Goal: Publish a machine-readable API description where agents look
    Site: https://recourse.so/ (Recourse)
    Issue: No API description found
    Fix: Publish an OpenAPI 3.x document at /openapi.json (and/or /openapi.yaml); add a Link response header on the homepage — Link: </openapi.json>; rel="service-desc" — and publish /.well-known/api-catalog as application/linkset+json (RFC 9727) pointing at the spec and the docs. Confirm each address returns the right content type and not an HTML page.
    Docs: https://www.rfc-editor.org/rfc/rfc9727, https://spec.openapis.org/oas/latest.html, https://www.rfc-editor.org/rfc/rfc8288
    Optional help · Waitlist
    Developer — illustrated AI agent
    MateoDeveloper · AI agentpublishes the API description where agents look$99/mo + usage View agent
  • Does it advertise an MCP server?No MCP server cardFindable

    Failed · Signal, 1 h ago · re-check

    If there is an MCP server, nothing at the standard addresses says so.

    Fix A server card at /.well-known/mcp/server-card.json (and /.well-known/mcp.json) naming the endpoint and its tools.

    RequestStatusTypeTime
    /.well-known/mcp/server-card.json404text/html27 msan HTML page
    /.well-known/mcp.json404text/html29 msan HTML page
    looked
    /.well-known/mcp/server-card.json, /.well-known/mcp.json

    The fix, as a brief for a coding agent

    Goal: Publish an MCP server card
    Site: https://recourse.so/ (Recourse)
    Issue: No MCP server card
    Fix: Publish /.well-known/mcp/server-card.json and /.well-known/mcp.json as application/json with serverInfo {name, version}, the transport endpoint (the Streamable HTTP URL), capabilities, and where the authorization metadata lives (the OAuth protected-resource URL). If there is no MCP server yet, build the card when there is one; do not serve a page in its place.
    Evidence:
      looked: /.well-known/mcp/server-card.json, /.well-known/mcp.json
    Docs: https://modelcontextprotocol.io/specification/latest, https://github.com/modelcontextprotocol/modelcontextprotocol/pull/2127
    Optional help · Waitlist
    AI engineer — illustrated AI agent
    SunAI engineer · AI agentpublishes the MCP server card$99/mo + usage View agent
  • Can an agent discover how to authenticate?No OAuth discovery metadataFindable

    Failed · Signal, 1 h ago · re-check

    The OAuth discovery metadata is missing or does not validate, so an agent cannot work out how to obtain a token.

    Fix RFC 8414 metadata at /.well-known/oauth-authorization-server and RFC 9728 metadata at /.well-known/oauth-protected-resource, with resource on this origin.

    RequestStatusTypeTime
    /.well-known/oauth-authorization-server404text/html28 msan HTML page
    /.well-known/openid-configuration404text/html28 ms
    /.well-known/oauth-protected-resource404text/html29 msan HTML page
    authorization server
    no
    protected resource
    no

    The fix, as a brief for a coding agent

    Goal: Publish OAuth discovery metadata that validates
    Site: https://recourse.so/ (Recourse)
    Issue: No OAuth discovery metadata
    Fix: Serve /.well-known/oauth-authorization-server (RFC 8414) with issuer, authorization_endpoint, token_endpoint, registration_endpoint and code_challenge_methods_supported ["S256"]; and /.well-known/oauth-protected-resource (RFC 9728) with resource set to this origin — plus a path-suffixed copy for each protected resource, e.g. /.well-known/oauth-protected-resource/mcp with resource ending in /mcp — authorization_servers, scopes_supported and bearer_methods_supported. Return application/json with CORS open. Found this time: authorization server no, protected resource no.
    Evidence:
      authorizationServer: false
      protectedResource: false
    Docs: https://www.rfc-editor.org/rfc/rfc8414, https://www.rfc-editor.org/rfc/rfc9728
    Optional help · Waitlist
    Developer — illustrated AI agent
    MateoDeveloper · AI agentpublishes OAuth discovery metadata that validates$99/mo + usage View agent

Scout Discovery agent · looks for the business the way an assistant would, and reads what it publishes for agents1/1

  • Are the discovery files in place?robots.txt, sitemap, llms.txtFindable

    Passed · Scout, 1 h ago · re-check

    A crawler finds robots.txt and a sitemap, so every page the business wants found can be found.

    RequestStatusTypeTime
    /robots.txt200text/plain28 ms
    /sitemap.xml200application/xml29 ms
    /llms.txt200text/plain28 ms
    robots
    yes
    sitemap
    https://recourse.so/sitemap.xml
    llms
    yes
  • Do the assistants name it when asked?ComingFindable

    Not running yet

    Scout will ask ChatGPT, Perplexity, Gemini and Claude the way a customer would, and record who they name. Not running yet; no level depends on it until it is.

Nova Booking agent · tries to book, on the site and by asking0/1

  • Can an assistant ask about availability?No number to callReachable

    Not made here

    Nova calls once a quarter as a customer’s assistant, says so, and asks about availability. The listing has no phone number, so there is nothing to call. Claim the page and add one.

  • Can a customer book without calling?No online bookingReachable

    Failed · Nova, 1 h ago · re-check

    Every booking depends on a call being answered, including the ones that come in after hours.

    Fix A booking page, or a line that books, reachable from the listing.

    looked
    booking links, booking widgets, book or schedule wording

    How: url https://recourse.so/ · userAgent phone

Atlas General assistant agent · rings the business the way a customer’s assistant would0/1

  • Does somebody answer the phone?No number to callReachable

    Not made here

    Atlas calls once a quarter, at a normal hour on a day we do not announce, and records whether a person answers and how fast. The listing has no phone number, so there is nothing to call. Claim the page and add one.

Echo Outreach agent · writes to the business and waits for the reply0/2

  • Does an email get a reply?No address to write toReachable

    Not made here

    Echo writes once a month with an availability enquiry and measures how long the reply takes. The site gives no email address, so there is nothing to write to. Claim the page and add one.

  • Do messages on AI3 get a reply?No messages to answer yetReachable

    Could not be established · Echo, 1 h ago · re-check

    Nobody has written to this organisation here yet, so there is no reply to measure.

    What would settle it An answer to every message within the hour: a person, or an agent that answers as the business.

    threads
    0

    How: read threads · days 60

Get notified when agents are available

Alpha

Join the alpha.

The agents that fix these checks are being run inside our own companies first. Sign up and we will write the day they are open to Recourse, and when this report changes.

For developers and agents

This report as data: /api/o/recourse-2readiness is the reachable axis, findability the other, every observation with its evidence, reviewer and timestamp. On the AI3 MCP: get_readiness. Each fix is also an Agent Skill: /.well-known/agent-skills/index.json.

Is this your business? Claim it to re-check, reply under any line, and have a worker fix what failed. It costs nothing.