{
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit Anchor Terminal and link the page or API address you took it from (https://www.anchorterminal.com/terms/#data)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-11-07",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.7",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "tool": {
    "slug": "fone-me",
    "name": "fone.me",
    "vendor": "Fone",
    "vendorUrl": "https://www.fone.me",
    "kind": "platform",
    "category": "voice-agents",
    "summary": "fone.me is a hosted AI agent at a personal link that answers calls and messages for a person or small business over web chat, voice, WhatsApp, Telegram and a Premium number. Other agents reach it through keyless MCP and A2A.",
    "url": "https://www.anchorterminal.com/tools/fone-me",
    "markdownUrl": "https://www.anchorterminal.com/tools/fone-me.md",
    "slimMarkdownUrl": "https://www.anchorterminal.com/tools/fone-me.min.md",
    "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/fone-me.json",
    "dns": "fone-me.grade.anchorterminal.com",
    "license": "Proprietary hosted service. Terms of service at https://www.fone.me/terms, whose text draws by script and could not be read on 5 November 2026; no company is named on any page read. No source, SDK or package is published",
    "transports": [
      "streamable-http"
    ],
    "remoteUrl": "https://www.fone.me/mcp",
    "packages": [],
    "auth": "none",
    "authNotes": "No credential for callers. llms.txt gives the MCP server at https://www.fone.me/mcp as Streamable HTTP with auth 'none', and the README of the GitHub repository spearisa/fone-me-mcp says 'public, like the links themselves'. The A2A agent cards read (demo and maxr) declare no securitySchemes or security. The search API at /api/agents/search takes a query with no key per llms.txt. Owners sign in with Apple, Google or email to set up an agent; no owner API key, scopes or tokens are documented.",
    "pricing": "freemium",
    "pricingNotes": "The agent, the first link and the website chat button are free. Premium is $9.99 a month (llms.txt and https://www.fone.me/alternatives/smith-ai) and adds the agent's own phone number, calling minutes and more links, with cancellation at any time; no page read gives the minute allowance, the number of links, the countries for numbers or the payment method. Outbound calls use Premium minutes and international calls use more minutes per minute. Callers and outside agents pay nothing (checked 2026-11-05).",
    "priceSummary": "$9.99 / mo",
    "where": "hosted",
    "x402": {
      "level": "no",
      "evidence": "No x402, MPP or L402 in llms.txt, the guide pages read, the MCP repository README and server.json, or the two agent cards (checked 2026-11-05). The MCP server and A2A endpoints are free and keyless; Premium is a monthly subscription with no payment route stated.",
      "endpoints": []
    },
    "toolCount": 4,
    "popularity": {
      "githubStars": null,
      "npmWeekly": null,
      "pypiWeekly": null,
      "asOf": "2026-11-05"
    },
    "docsUrl": "https://www.fone.me/llms.txt",
    "mcpTools": {
      "url": "https://www.fone.me/mcp",
      "checkedAt": "2026-11-07T01:44:39.315960369Z",
      "status": "ok",
      "note": "answered without the initialize handshake",
      "tools": [
        {
          "name": "find_agents",
          "title": "Find people and businesses on fone.me",
          "description": "Search fone.me for people's and businesses' AI agents by what they do or offer (e.g. 'dog walker', 'real estate agent in Miami', 'Spanish tutor'). Returns their fone.me links.",
          "inputSchema": {
            "properties": {
              "limit": {
                "description": "How many results (1-10). Default 5.",
                "type": "number"
              },
              "query": {
                "description": "What you're looking for, in plain words.",
                "type": "string"
              }
            },
            "required": [
              "query"
            ],
            "type": "object"
          },
          "annotations": {
            "openWorldHint": true,
            "readOnlyHint": true,
            "title": "Find people and businesses on fone.me"
          }
        },
        {
          "name": "get_agent",
          "title": "Look up a fone.me agent",
          "description": "Get who is behind a fone.me link (e.g. fone.me/samspearin) and what their agent can help with, before messaging it.",
          "inputSchema": {
            "properties": {
              "link": {
                "description": "A fone.me link or name, e.g. 'fone.me/sam' or 'sam'.",
                "type": "string"
              }
            },
            "required": [
              "link"
            ],
            "type": "object"
          },
          "annotations": {
            "openWorldHint": true,
            "readOnlyHint": true,
            "title": "Look up a fone.me agent"
          }
        },
        {
          "name": "message_agent",
          "title": "Message a fone.me agent",
          "description": "Send a message to the AI agent at a fone.me link and get its reply — ask a question, request a booking or a quote, or leave a message for the person. The conversation continues across calls. Say who you're asking for in on_behalf_of.",
          "inputSchema": {
            "properties": {
              "link": {
                "description": "A fone.me link or name, e.g. 'fone.me/samspearin'.",
                "type": "string"
              },
              "message": {
                "description": "What to say to the agent.",
                "type": "string"
              },
              "on_behalf_of": {
                "description": "The name of the person you're asking for (shown to the owner).",
                "type": "string"
              }
            },
            "required": [
              "link",
              "message"
            ],
            "type": "object"
          },
          "annotations": {
            "destructiveHint": false,
            "idempotentHint": false,
            "openWorldHint": true,
            "readOnlyHint": false,
            "title": "Message a fone.me agent"
          }
        },
        {
          "name": "add_chat_to_website",
          "title": "Add an AI chat button to a website",
          "description": "Get the one-line code that puts a fone.me AI agent on a website: a chat button in the corner where visitors chat, call by voice, or continue on WhatsApp or Telegram, and the agent answers questions, takes messages and booking requests for the owner. Use it when someone building or editing a website (HTML, Next.js, React, WordPress, Shopify, Wix, Squarespace, Webflow, Framer) wants a chatbot, AI receptionist, live chat or contact widget. Free to start. Give the person's fone.me link if they have one.",
          "inputSchema": {
            "properties": {
              "link": {
                "description": "The site owner's fone.me link, e.g. 'fone.me/joes-plumbing' or 'joes-plumbing'. Leave out if they don't have one yet.",
                "type": "string"
              },
              "site": {
                "description": "What the site is built with: html, nextjs, react, wordpress, shopify, wix, squarespace, webflow, framer. Default html.",
                "type": "string"
              }
            },
            "type": "object"
          },
          "annotations": {
            "openWorldHint": true,
            "readOnlyHint": true,
            "title": "Add an AI chat button to a website"
          }
        }
      ],
      "schemaTokens": 725,
      "changedAt": "2026-11-07T01:44:39.315960369Z",
      "check": {
        "checker": "anchor-check/1.0",
        "totalTokens": 725,
        "counts": {
          "error": 0,
          "note": 1,
          "warn": 1
        },
        "findings": [
          {
            "rule": "TC18",
            "severity": "warn",
            "tool": "add_chat_to_website",
            "message": "readOnlyHint is true but the name says \"add\"",
            "fix": "If it changes anything, readOnlyHint must be false."
          },
          {
            "rule": "TC24",
            "severity": "note",
            "message": "4 of 4 tools have no outputSchema",
            "fix": "Declare outputSchema for tools that return structured data, and return structuredContent that matches it."
          }
        ]
      }
    },
    "llmsTxt": "https://www.fone.me/llms.txt",
    "capabilities": [
      "voice.agent",
      "voice.telephony",
      "voice.calls",
      "messaging.whatsapp",
      "messaging.inbound"
    ],
    "tags": [
      "hosted",
      "official",
      "closed-source",
      "mcp",
      "remote-mcp",
      "no-auth",
      "keyless",
      "a2a",
      "llms-txt",
      "whatsapp",
      "telegram",
      "ios",
      "freemium",
      "free-tier",
      "no-status-page"
    ],
    "lastRelease": "2026-10-05",
    "graded": true,
    "anchor": {
      "graded": true,
      "score": 28.3,
      "grade": "F",
      "agentReady": false,
      "rank": 1406,
      "ranked": true,
      "rankOf": 1486,
      "categoryRank": 26,
      "methodology": "0.7",
      "run": "2026-10-01",
      "scores": {
        "ergonomics": 29,
        "maintenance": 23,
        "payments": 50,
        "reliability": 15,
        "schema": 31,
        "security": 30,
        "transparency": 23
      },
      "pending": [
        "performance",
        "tasks"
      ],
      "breakdown": [
        {
          "key": "reliability",
          "name": "Reliability",
          "weight": 16,
          "effectiveWeight": 20,
          "score": 15,
          "points": 3,
          "reason": "Hosted reading, for the MCP server and A2A endpoints and the service behind them. No status page is linked from llms.txt, the home page or any guide page read, and https://www.fone.me/status failed to load (0). No readable incident history, so the floor (5). No request rate limit for the MCP server, the search API or A2A is published; the only limits are on the agent's own outbound calls (8 am to 9 pm in the callee's time zone, 'limited per day' with no number), which are not request limits (0 of 15). No 429, overload or retry guidance and no idempotency key for message_agent or message/send (0 of 15). No SLA (0). Nothing on the MCP server, the agent cards or llms.txt is marked beta or preview, and the MCP repository's server.json is version 1.0.0 (10). 0+5+0+0+0+10 = 15.",
          "checked": "2026-11-05"
        },
        {
          "key": "performance",
          "name": "Performance",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
        },
        {
          "key": "schema",
          "name": "Schema \u0026 documentation",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 31,
          "points": 5.04,
          "reason": "MCP reading, since the MCP server is what an outside agent calls. No tool arguments or input schemas are published in llms.txt, the guide pages or the GitHub README, and robots.txt disallows /mcp, so no session was opened and tools/list was not read. Per-link A2A agent cards are machine-readable JSON (protocol 0.3.0, JSONRPC, input and output modes, skills with examples) and server.json names the remote, but neither types the MCP tools (8 of 25). llms.txt is a real document for agents covering the MCP server, A2A, the search API and the widget (10). Each tool has a one-line purpose in llms.txt and the README, and the how-it-works page states what the agent will and won't do; nothing says when not to use a tool (6 of 20). No typed inputs, enums, constraints or required fields published (0 of 15). Example prompts in the README, per-skill examples in agent cards and widget code for eight site builders; no error response is documented (4 of 15). server.json and the agent cards carry version 1.0.0 and the cards a protocol version; no changelog (3 of 15). 8+10+6+0+4+3 = 31.",
          "checked": "2026-11-05"
        },
        {
          "key": "ergonomics",
          "name": "Agent ergonomics",
          "weight": 13,
          "effectiveWeight": 16.25,
          "score": 29,
          "points": 4.71,
          "reason": "MCP reading. Four tools named in llms.txt, a small set, but their definitions were not read, so short of full marks (18 of 25). find_agents searches by what someone does and the search API takes a query; no limit, paging or output-size controls are documented (3 of 20). No error codes or messages documented for the MCP server, the search API or A2A (0 of 20). No readOnlyHint or destructiveHint seen and no idempotency key; the three lookups are read-only by name and description, while message_agent writes to a real person's inbox and continues the conversation across calls (2 of 20). No credentials, no configuration beyond the URL, and few stated inputs; no SDK in any language (6 of 15). 18+3+0+2+6 = 29.",
          "checked": "2026-11-05"
        },
        {
          "key": "security",
          "name": "Security \u0026 auth",
          "weight": 14,
          "effectiveWeight": 17.5,
          "score": 30,
          "points": 5.25,
          "reason": "No credential exists for callers. llms.txt gives auth 'none', the README says the server is 'public, like the links themselves', and the two agent cards read declare no security scheme. There is nothing to leak or rotate, but fone.me and an owner can tell callers apart only by the name they give ('Maria via ChatGPT' in the README) and by traffic, and no caller identity or verification is documented (10 of 30). Three of four MCP tools are lookups; message_agent and A2A message/send reach any owner's agent. On the owner's side the vendor says the agent asks before agreeing to anything or spending money, the owner approves what it will say before a call, outbound calls run only 8 am to 9 pm local, pause when reported and stop permanently on request, and the owner can take over any chat. No read-only mode and no confirmation on the caller's side (8 of 20). message_agent returns text generated from what the owner taught the agent, and every agent on the platform reads messages from anyone; the only guidance is the how-it-works statement that the agent keeps relationship status, health, money and address private, with no documented prompt-injection or spam handling for the open channel, and the call-screening page says it does not promise to block calls (4 of 15). Owners see every call and chat with a transcript in one inbox; nothing is logged for the calling agent (8 of 15). /.well-known/security.txt answers with the app shell, and no disclosure policy, bug bounty or certification appears on any page read (0 of 20). 10+8+4+8+0 = 30.",
          "checked": "2026-11-05"
        },
        {
          "key": "payments",
          "name": "Payments \u0026 pricing",
          "weight": 10,
          "effectiveWeight": 12.5,
          "score": 50,
          "points": 6.25,
          "reason": "No x402, MPP or L402 on any page read (0). Premium is $9.99 a month on llms.txt and the Smith.ai comparison page, with no minute allowance or per-call price (10 of 20). The MCP server, search API and A2A endpoints are free with no account, and the agent, first link and chat button are free for owners; no page mentions a card for any of these (20). An outside agent needs no sign-up, key or payment to find and message an agent (20). 0+10+20+20 = 50.",
          "checked": "2026-11-05"
        },
        {
          "key": "tasks",
          "name": "Task success",
          "weight": 10,
          "effectiveWeight": 0,
          "pending": true,
          "points": 0,
          "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
        },
        {
          "key": "maintenance",
          "name": "Maintenance \u0026 community",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 23,
          "points": 2.01,
          "reason": "Closed service. The newest dated change to the agent surface found is the MCP repository github.com/spearisa/fone-me-mcp, created 5 October 2026 with server.json version 1.0.0, 31 days ago (20). The comparison page marked 'Checked October 28, 2026' and the profile lastmods in the sitemap are content, not releases. No changelog, release notes or three dated changes in 90 days (0 of 20). The support page and FAQ draw by script and no support email, forum or community channel was found; responsiveness unchecked (3 of 15). server.json names the server me.fone.www/agents, a namespace that needs proof of the domain, but the official MCP registry could not be read, so presence is scored absent (0 of 15). No package, public code or CI (0 of 10). 20+0+3+0+0 = 23.",
          "checked": "2026-11-05"
        },
        {
          "key": "transparency",
          "name": "Transparency \u0026 trust",
          "weight": 7,
          "effectiveWeight": 8.75,
          "score": 23,
          "points": 2.01,
          "note": "editorial 13, provenance 32",
          "reason": "Closed service. Terms of service exist at /terms but draw by script, so their content, governing law and the company they name are unchecked; no company, address or country of incorporation appears on any page read, llms.txt says San Francisco, and the MCP repository has no licence (5 of 30). Data handling was read only from guide pages, which say only the owner sees their calls and messages, calls are transcribed and callers told so, and private categories are withheld. The privacy policy and data-deletion page draw by script, so no retention period, recording statement, DPA or AI-training statement was read (8 of 30). No deprecation policy or dated notices (0). No subprocessors, telephony, model or hosting providers or data locations are named on any page read; the demo agent card's icon is served from Cloudinary (0 of 20). 5+8+0+0 = 13.",
          "checked": "2026-11-05"
        }
      ],
      "assessment": {
        "date": "2026-11-05",
        "basis": "public evidence",
        "confidence": "low",
        "notes": {
          "ergonomics": "MCP reading. Four tools named in llms.txt, a small set, but their definitions were not read, so short of full marks (18 of 25). find_agents searches by what someone does and the search API takes a query; no limit, paging or output-size controls are documented (3 of 20). No error codes or messages documented for the MCP server, the search API or A2A (0 of 20). No readOnlyHint or destructiveHint seen and no idempotency key; the three lookups are read-only by name and description, while message_agent writes to a real person's inbox and continues the conversation across calls (2 of 20). No credentials, no configuration beyond the URL, and few stated inputs; no SDK in any language (6 of 15). 18+3+0+2+6 = 29.",
          "maintenance": "Closed service. The newest dated change to the agent surface found is the MCP repository github.com/spearisa/fone-me-mcp, created 5 October 2026 with server.json version 1.0.0, 31 days ago (20). The comparison page marked 'Checked October 28, 2026' and the profile lastmods in the sitemap are content, not releases. No changelog, release notes or three dated changes in 90 days (0 of 20). The support page and FAQ draw by script and no support email, forum or community channel was found; responsiveness unchecked (3 of 15). server.json names the server me.fone.www/agents, a namespace that needs proof of the domain, but the official MCP registry could not be read, so presence is scored absent (0 of 15). No package, public code or CI (0 of 10). 20+0+3+0+0 = 23.",
          "payments": "No x402, MPP or L402 on any page read (0). Premium is $9.99 a month on llms.txt and the Smith.ai comparison page, with no minute allowance or per-call price (10 of 20). The MCP server, search API and A2A endpoints are free with no account, and the agent, first link and chat button are free for owners; no page mentions a card for any of these (20). An outside agent needs no sign-up, key or payment to find and message an agent (20). 0+10+20+20 = 50.",
          "reliability": "Hosted reading, for the MCP server and A2A endpoints and the service behind them. No status page is linked from llms.txt, the home page or any guide page read, and https://www.fone.me/status failed to load (0). No readable incident history, so the floor (5). No request rate limit for the MCP server, the search API or A2A is published; the only limits are on the agent's own outbound calls (8 am to 9 pm in the callee's time zone, 'limited per day' with no number), which are not request limits (0 of 15). No 429, overload or retry guidance and no idempotency key for message_agent or message/send (0 of 15). No SLA (0). Nothing on the MCP server, the agent cards or llms.txt is marked beta or preview, and the MCP repository's server.json is version 1.0.0 (10). 0+5+0+0+0+10 = 15.",
          "schema": "MCP reading, since the MCP server is what an outside agent calls. No tool arguments or input schemas are published in llms.txt, the guide pages or the GitHub README, and robots.txt disallows /mcp, so no session was opened and tools/list was not read. Per-link A2A agent cards are machine-readable JSON (protocol 0.3.0, JSONRPC, input and output modes, skills with examples) and server.json names the remote, but neither types the MCP tools (8 of 25). llms.txt is a real document for agents covering the MCP server, A2A, the search API and the widget (10). Each tool has a one-line purpose in llms.txt and the README, and the how-it-works page states what the agent will and won't do; nothing says when not to use a tool (6 of 20). No typed inputs, enums, constraints or required fields published (0 of 15). Example prompts in the README, per-skill examples in agent cards and widget code for eight site builders; no error response is documented (4 of 15). server.json and the agent cards carry version 1.0.0 and the cards a protocol version; no changelog (3 of 15). 8+10+6+0+4+3 = 31.",
          "security": "No credential exists for callers. llms.txt gives auth 'none', the README says the server is 'public, like the links themselves', and the two agent cards read declare no security scheme. There is nothing to leak or rotate, but fone.me and an owner can tell callers apart only by the name they give ('Maria via ChatGPT' in the README) and by traffic, and no caller identity or verification is documented (10 of 30). Three of four MCP tools are lookups; message_agent and A2A message/send reach any owner's agent. On the owner's side the vendor says the agent asks before agreeing to anything or spending money, the owner approves what it will say before a call, outbound calls run only 8 am to 9 pm local, pause when reported and stop permanently on request, and the owner can take over any chat. No read-only mode and no confirmation on the caller's side (8 of 20). message_agent returns text generated from what the owner taught the agent, and every agent on the platform reads messages from anyone; the only guidance is the how-it-works statement that the agent keeps relationship status, health, money and address private, with no documented prompt-injection or spam handling for the open channel, and the call-screening page says it does not promise to block calls (4 of 15). Owners see every call and chat with a transcript in one inbox; nothing is logged for the calling agent (8 of 15). /.well-known/security.txt answers with the app shell, and no disclosure policy, bug bounty or certification appears on any page read (0 of 20). 10+8+4+8+0 = 30.",
          "transparency": "Closed service. Terms of service exist at /terms but draw by script, so their content, governing law and the company they name are unchecked; no company, address or country of incorporation appears on any page read, llms.txt says San Francisco, and the MCP repository has no licence (5 of 30). Data handling was read only from guide pages, which say only the owner sees their calls and messages, calls are transcribed and callers told so, and private categories are withheld. The privacy policy and data-deletion page draw by script, so no retention period, recording statement, DPA or AI-training statement was read (8 of 30). No deprecation policy or dated notices (0). No subprocessors, telephony, model or hosting providers or data locations are named on any page read; the demo agent card's icon is served from Cloudinary (0 of 20). 5+8+0+0 = 13."
        },
        "sources": [
          {
            "what": "llms.txt (MCP server, tools, A2A, search API, widget, Premium price, location)",
            "url": "https://www.fone.me/llms.txt",
            "seen": "2026-11-05"
          },
          {
            "what": "robots.txt (disallows /mcp, /api/, /*/a2a; allows agent cards)",
            "url": "https://www.fone.me/robots.txt",
            "seen": "2026-11-05"
          },
          {
            "what": "home page (channels, owner controls, three FAQ entries, App Store link)",
            "url": "https://www.fone.me/",
            "seen": "2026-11-05"
          },
          {
            "what": "how fone.me works (disclosure, call hours, daily limit, do-not-call, privacy, free and Premium)",
            "url": "https://www.fone.me/how-fone-me-works",
            "seen": "2026-11-05"
          },
          {
            "what": "AI that makes the call for you (approval before calls, minutes, countries, voicemail)",
            "url": "https://www.fone.me/ai-that-calls-for-you",
            "seen": "2026-11-05"
          },
          {
            "what": "AI answering service (disclosure, inbox and transcripts, FAQ)",
            "url": "https://www.fone.me/ai-answering-service",
            "seen": "2026-11-05"
          },
          {
            "what": "missed-call forwarding (Premium number, ring my phone first)",
            "url": "https://www.fone.me/missed-call-forwarding",
            "seen": "2026-11-05"
          },
          {
            "what": "call screening (no promise to block spam, iPhone and Mac apps)",
            "url": "https://www.fone.me/call-screening",
            "seen": "2026-11-05"
          },
          {
            "what": "add to your website (widget, attributes, platform guides, add_chat_to_website)",
            "url": "https://www.fone.me/add-to-your-website",
            "seen": "2026-11-05"
          },
          {
            "what": "Smith.ai comparison (Premium $9.99 a month, languages, apps, checked 28 October 2026)",
            "url": "https://www.fone.me/alternatives/smith-ai",
            "seen": "2026-11-05"
          },
          {
            "what": "for business (headline and description only)",
            "url": "https://www.fone.me/for-business",
            "seen": "2026-11-05"
          },
          {
            "what": "demo agent card (A2A 0.3.0, six skills, no security scheme)",
            "url": "https://www.fone.me/demo/.well-known/agent-card.json",
            "seen": "2026-11-05"
          },
          {
            "what": "maxr agent card (one skill, no security scheme)",
            "url": "https://www.fone.me/maxr/.well-known/agent-card.json",
            "seen": "2026-11-05"
          },
          {
            "what": "sitemap (truncated; earliest lastmod 5 November 2025)",
            "url": "https://www.fone.me/sitemap.xml",
            "seen": "2026-11-05"
          },
          {
            "what": "MCP repository README (three tools, setup for ChatGPT, Claude and Cursor, 'Operated by zwilio')",
            "url": "https://github.com/spearisa/fone-me-mcp",
            "seen": "2026-11-05"
          },
          {
            "what": "MCP repository server.json (me.fone.www/agents, version 1.0.0)",
            "url": "https://raw.githubusercontent.com/spearisa/fone-me-mcp/main/server.json",
            "seen": "2026-11-05"
          },
          {
            "what": "terms of service (title only; text drawn by script)",
            "url": "https://www.fone.me/terms",
            "seen": "2026-11-05"
          },
          {
            "what": "privacy policy (title only; text drawn by script)",
            "url": "https://www.fone.me/privacy",
            "seen": "2026-11-05"
          },
          {
            "what": "data deletion (title only; text drawn by script)",
            "url": "https://www.fone.me/data-deletion",
            "seen": "2026-11-05"
          }
        ],
        "openQuestions": [
          "Kind is `platform`. The home page, for-business page and guides lead with the personal link, inbox, iPhone app and Premium number; MCP, A2A and the widget appear in llms.txt and one guide as ways other agents and websites reach the links. The MCP server is graded with the MCP reading; `mcp` would not move the scores.",
          "Category is `voice-agents`, beside fresha-ai-concierge as a hosted answering agent. personal-assistants is the nearest alternative, since the vendor calls it 'your personal agent', but fone.me holds no mail, calendar or file accounts and its main job is answering and placing calls and messages.",
          "unchecked: the MCP tools/list, tool arguments, input schemas, annotations and error shapes, the search API response and the A2A message/send behaviour. robots.txt disallows /mcp, /api/ and /*/a2a, so none was fetched, not even one GET.",
          "unchecked: the text of /terms, /privacy, /data-deletion, /faq, /support, /api-docs, /premium and /blog, which draw by script and showed only titles. No Markdown or plain-text twin is linked, and /llms-full.txt answers with the app shell. The legal entity, retention, call recording, caller consent beyond the spoken disclosure, subprocessors and support email depend on these.",
          "Legal entity. No fone.me page read names a company. The GitHub README of spearisa/fone-me-mcp, whose server.json and homepage point at www.fone.me, ends 'Operated by zwilio'; no fone.me page names zwilio or links the repository, and three web searches found no company of that name. Left empty, not deducted. A person could check the App Store listing's seller and the terms.",
          "unchecked: RDAP for fone.me, the Wayback Machine, the official MCP registry (whether me.fone.www/agents is published) and the App Store listing (id 6759304762), whose fetches needed approvals that did not come. GitHub's API refused the spearisa repositories for this session; their dates and star counts come from GitHub search results, and the README and server.json from raw.githubusercontent.com.",
          "The 'asks you before agreeing to anything' and 'only you see your calls and messages' statements are the vendor's claims. No page read says how message_agent and A2A traffic is rate-limited, filtered for spam or reported, which matters for a keyless channel into any person's agent.",
          "llms.txt advertises /mcp, /api/agents/search and /{link}/a2a to agents while robots.txt disallows the same paths as 'not pages'. Recorded as a fact, not deducted.",
          "firstReleased is 2025-11-05, the earliest sitemap lastmod (/sha_krux), a lower bound only; it falls one year to the day before this check, so the sitemap may cap its dates. The Product Hunt page, about five months old per the 5 November listing check, describes an earlier creator-profile product with voice cloning. lastRelease is 2026-10-05, the MCP repository's creation date, from an account no fone.me page ties to the company.",
          "The sitemap our reader saw was cut off mid-entry; the listing check counted 427 URLs and 356 personal links. Profile pages are listed from New York, Los Angeles, Medellín, Ahmedabad, Lahore, Indore and Ifo, but no page states the countries where Premium numbers are issued.",
          "fone.me doesn't do LocalGhost's or letme's job. It is a hosted answering agent; find_agents finds people's agents by trade or place and doesn't choose tools by grade."
        ]
      },
      "negative": 0,
      "verdict": "Any agent can find a fone.me link and message its owner's agent through a keyless MCP server or A2A, with no sign-up or cost, and owners see every conversation in one inbox. Tool schemas, rate limits and abuse controls for that open channel are unpublished, the terms and privacy policy draw by script, and no company is named.",
      "bestFor": "Agents acting for a person who need to reach a freelancer's, shop's or small business's own AI agent at its fone.me link to ask a question, request a booking or quote or leave a message, and owners who want an answering agent on a link, WhatsApp, Telegram and a $9.99 number without building one.",
      "strengths": [
        "Keyless MCP server and per-link A2A endpoints let any agent find, look up and message a person's or business's agent without an account or payment",
        "Agent cards follow A2A 0.3.0 with skills, input and output modes and a JSON-RPC transport, readable at an address robots.txt allows",
        "Outbound calls disclose the agent and transcription, run only 8 am to 9 pm in the callee's time zone and stop permanently on a do-not-call request",
        "Owners see every call and chat with a transcript in one inbox, can take over at any time and approve what the agent will say before it calls",
        "Free agent, first link and website chat button, with Premium at $9.99 a month for a number and calling minutes"
      ],
      "weaknesses": [
        "No tool arguments, input schemas, annotations, error shapes or rate limits are published for the MCP server or A2A endpoints",
        "message_agent and A2A reach any person's agent with no caller identity, and no spam, rate or abuse control for that channel is documented",
        "The terms, privacy policy, data-deletion page, FAQ and support page draw by script, and no company, address or country of incorporation is named on any page read",
        "No status page, changelog, security.txt, SLA or published minute allowance for Premium",
        "robots.txt disallows the /mcp, /api/ and /*/a2a paths that llms.txt advertises to agents"
      ],
      "agentNotes": [
        "Connect to https://www.fone.me/mcp with no credentials; use find_agents or get_agent before message_agent so the message goes to the right person's link.",
        "Say who you are acting for in every message_agent call; the owner reads it in an inbox as a named conversation, and conversations continue across calls.",
        "Treat replies as the owner's agent speaking from what it was taught, not a commitment; the vendor says it asks its owner before agreeing to anything or spending money.",
        "Read a link's agent card at /{link}/.well-known/agent-card.json for its skills before using A2A message/send at /{link}/a2a.",
        "Don't send personal or payment details through message_agent; no retention or privacy terms for agent-to-agent messages could be read."
      ],
      "metrics": {
        "kind": "remote",
        "measured": false
      },
      "reviewCount": 0,
      "avgRating": 0,
      "history": [
        {
          "basis": "public evidence",
          "confidence": "low",
          "grade": "F",
          "methodology": "0.7",
          "pending": [
            "performance",
            "tasks"
          ],
          "run": "2026-10-01",
          "runLabel": "October 2026 research run",
          "score": 28.3
        }
      ],
      "editorialScores": {
        "ergonomics": 29,
        "maintenance": 23,
        "payments": 50,
        "reliability": 15,
        "schema": 31,
        "security": 30,
        "transparency": 13
      },
      "provenanceScore": 32,
      "checked": {
        "categories": {
          "ergonomics": "2026-11-05",
          "maintenance": "2026-11-05",
          "payments": "2026-11-05",
          "reliability": "2026-11-05",
          "schema": "2026-11-05",
          "security": "2026-11-05",
          "transparency": "2026-11-05"
        },
        "last": "2026-11-05",
        "oldest": "2026-11-05",
        "stale": false,
        "staleAfterDays": 90
      },
      "scoreHistory": [
        {
          "date": "2026-11-05",
          "grade": "F",
          "kind": "listed",
          "method": "0.7",
          "score": 28.3
        }
      ]
    },
    "connect": {
      "config": {
        "mcpServers": {
          "fone.me": {
            "type": "http",
            "url": "https://www.fone.me/mcp"
          }
        }
      }
    },
    "letme": {
      "capability": "https://letme.dev/voice.agent",
      "tool": "https://letme.dev/fone-me"
    },
    "notable": [
      "llms.txt lists the MCP server at https://www.fone.me/mcp (Streamable HTTP, no auth) with four tools, find_agents (search by what someone does), get_agent (who is behind a link), message_agent (message the agent at a link and get its reply) and add_chat_to_website (the code to put an agent on a website); no arguments or limits are given (https://www.fone.me/llms.txt)",
      "Every link has an A2A endpoint at https://www.fone.me/{link}/a2a (JSON-RPC message/send) and an agent card at /{link}/.well-known/agent-card.json. The demo card ('Dottie', a dog walker in Medellín) declares protocol 0.3.0, JSONRPC, no streaming or push, text in, text and audio/mpeg out, six skills and no security scheme (https://www.fone.me/demo/.well-known/agent-card.json)",
      "robots.txt disallows /mcp, /api/ and /*/a2a while allowing agent cards, so the MCP server, the search API and the A2A endpoints were read only from documentation (https://www.fone.me/robots.txt)",
      "The outbound-call rules page says the agent says it is an agent and that calls are transcribed, calls only between 8 am and 9 pm in the other person's time zone, limits calls per day without giving a number, pauses on unanswered or reported calls, keeps a request not to be called permanently and asks the owner before spending money (https://www.fone.me/how-fone-me-works)",
      "The 'call for me' page says the owner sees what the agent will say before tapping Call, that it leaves a voicemail at the beep, and that without a fone.me number it drafts a WhatsApp message for the owner to send (https://www.fone.me/ai-that-calls-for-you)",
      "The README of github.com/spearisa/fone-me-mcp says message_agent conversations continue across calls and show in the owner's inbox as, for example, 'Maria via ChatGPT', and ends 'Operated by zwilio'; no fone.me page read names zwilio or links that repository (https://github.com/spearisa/fone-me-mcp)",
      "The same repository's server.json names the server me.fone.www/agents, version 1.0.0, with the remote https://www.fone.me/mcp and website https://www.fone.me/for-business; whether it is published in the official MCP registry was not checked",
      "Premium is $9.99 a month per llms.txt and a comparison page marked 'Checked October 28, 2026', which also says the agent replies in the language the customer writes in and names iPhone, Android, web and desktop apps (https://www.fone.me/alternatives/smith-ai)",
      "/terms, /privacy, /data-deletion, /faq, /support, /api-docs, /premium and /blog draw their text by script and showed only titles to our reader, so the legal terms, privacy policy, retention, recordings, subprocessors and support routes are unchecked"
    ],
    "area": "voice",
    "details": [
      {
        "label": "Surface listed",
        "value": "The hosted agent at www.fone.me (personal links, inbox, iPhone app, Premium number) and its agent surfaces, the remote MCP server, per-link A2A endpoints and agent cards, the search API and the website widget. Read on 5 November 2026 from robots.txt, llms.txt, the sitemap, the home page, nine guide pages (how it works, AI answering service, call for me, missed-call forwarding, call screening, add to your website, for business, who it is for, the Smith.ai comparison), two agent cards (demo and maxr) and the README and server.json of github.com/spearisa/fone-me-mcp. No account was made, no MCP session opened, and nothing under /mcp, /api/ or /*/a2a was fetched"
      },
      {
        "label": "Kind",
        "value": "Listed as `platform`. The home page, the for-business page and every guide lead with the personal link, the inbox, the iPhone app and the Premium number for people and small businesses; the MCP server, A2A and the widget appear in llms.txt and on one guide page as ways other agents and websites reach those links. The MCP server is graded with the MCP reading because it is the surface an outside agent calls"
      },
      {
        "label": "MCP server",
        "value": "https://www.fone.me/mcp, Streamable HTTP, no authentication, on the vendor's own domain. Four tools per llms.txt (find_agents, get_agent, message_agent, add_chat_to_website); the GitHub README lists the first three. Tool arguments, input schemas and annotations are not published and were not read, since robots.txt disallows /mcp"
      },
      {
        "label": "A2A",
        "value": "JSON-RPC message/send at https://www.fone.me/{link}/a2a, with an agent card at /{link}/.well-known/agent-card.json. Cards read declare protocol 0.3.0, version 1.0.0, preferred transport JSONRPC, streaming and push notifications false, no security scheme, and the link's owner as provider organisation. demo has six skills (ask a question, two site links, the iOS app, book a call, continue on WhatsApp) with text/plain and audio/mpeg output; maxr has one skill and text only"
      },
      {
        "label": "Search API and widget",
        "value": "Search at https://www.fone.me/api/agents/search?q=... per llms.txt, under the /api/ path robots.txt disallows, so not fetched. The website widget is one script tag, https://www.fone.me/widget.js with data-agent set to the link, plus optional data-position and data-color, with guides for HTML, Next.js, WordPress, Shopify, Wix, Squarespace, Webflow and Framer. Visitors can type, call by voice or continue on WhatsApp or Telegram"
      },
      {
        "label": "Channels",
        "value": "The personal link (web chat or voice in a browser, no app for callers), WhatsApp, Telegram and, on Premium, the agent's own phone number, which can be given out or receive forwarded missed calls with an optional 'ring my phone first' step. iMessage is listed as coming soon. Owner apps for iPhone and Mac are named on guide pages and Android on the comparison page. Countries for numbers are not stated"
      },
      {
        "label": "Outbound calls",
        "value": "On request the agent calls or messages people, such as booking a table, getting a quote or moving an appointment. The owner sees what it will say before tapping Call. Calls go out from the owner's fone.me number between 8 am and 9 pm in the other person's time zone, to mobiles and landlines in 'most countries', use Premium minutes (international calls use more), are limited per day with no number given, pause when unanswered or reported, and stop permanently for anyone who asks not to be called"
      },
      {
        "label": "Owner controls",
        "value": "Every call and chat lands in the owner's inbox with a transcript, and the owner can take over any chat from the app or the web. The vendor says the agent asks before agreeing to anything or spending money, keeps relationship status, health, money and address private, and shares only work, base location and availability. These are the vendor's statements; none could be tested"
      },
      {
        "label": "Disclosure and recording",
        "value": "The agent says it is an assistant and that the call is transcribed, per five guide pages. Recording of audio is not mentioned on any page read; the privacy policy, which may cover it, draws by script and was not read"
      },
      {
        "label": "Plans",
        "value": "Free agent, first link and chat button. Premium $9.99 a month with the agent's own number, calling minutes and more links, cancel any time. Minute allowance, link count, number countries, refund terms and payment method are not published on any page read"
      },
      {
        "label": "Data handling",
        "value": "The how-it-works page says only the owner sees their calls and messages and that they go to the owner's account only. The privacy policy, terms and data-deletion page draw by script and were not read, so retention, recording, subprocessors, data locations and training on conversations are unchecked. The demo card's icon is served from res.cloudinary.com"
      },
      {
        "label": "Status and support",
        "value": "No status page is linked from any page read and https://www.fone.me/status failed to load. /.well-known/security.txt answers with the app shell. The support page and FAQ draw by script; no support email was found"
      }
    ],
    "unitPrices": [
      {
        "item": "Premium",
        "unit": "month",
        "usd": 9.99,
        "note": "own fone.me number, calling minutes (allowance not published) and more links; the agent, first link and chat button are free"
      }
    ],
    "provenance": {
      "legalEntity": "",
      "domain": "fone.me",
      "domainRegistered": "",
      "endpointOnVendorDomain": true,
      "terms": "https://www.fone.me/terms",
      "privacy": "https://www.fone.me/privacy",
      "statusPage": "",
      "changelog": "",
      "securityTxt": "none",
      "checked": "2026-11-05",
      "notes": [
        "No legal entity is named on any page read. Page metadata gives the author and site name as 'Fone', and llms.txt gives San Francisco, CA, USA as a location. The terms, privacy policy and data-deletion page draw their text by script and showed only titles, so whether they name a company is unchecked, not absent.",
        "The README of github.com/spearisa/fone-me-mcp ends 'Operated by zwilio'. No fone.me page read names zwilio or links the repository, and three web searches found no company of that name, so it is not recorded as the legal entity.",
        "The MCP server, the search API and the A2A endpoints are on www.fone.me, the vendor's own domain. robots.txt disallows /mcp, /api/ and /*/a2a, so none was fetched; the agent cards it allows were read for two links.",
        "No status page or changelog found. /.well-known/security.txt answers with the app's HTML shell, recorded as none. /status failed to load.",
        "RDAP for fone.me, the Wayback Machine, the official MCP registry and the App Store listing (id 6759304762) were not read; each fetch needed an approval that did not come. firstReleased 2025-11-05 is the earliest sitemap lastmod (/sha_krux), a lower bound only, and falls one year to the day before the check, so the sitemap may cap its dates."
      ],
      "score": 32,
      "checks": [
        {
          "check": "Legal entity named",
          "value": "not found",
          "points": 0,
          "max": 20,
          "state": "no"
        },
        {
          "check": "Domain age",
          "value": "fone.me, no registry record we could read",
          "points": 0,
          "max": 15,
          "state": "no"
        },
        {
          "check": "Endpoint on the vendor's domain",
          "value": "www.fone.me",
          "points": 15,
          "max": 15,
          "state": "ok"
        },
        {
          "check": "Terms of service",
          "value": "published, but our reader couldn't read it",
          "points": 7,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Privacy policy",
          "value": "published, but our reader couldn't read it",
          "points": 7,
          "max": 10,
          "state": "part"
        },
        {
          "check": "Status page",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "Changelog",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "security.txt",
          "value": "not found",
          "points": 0,
          "max": 10,
          "state": "no"
        },
        {
          "check": "People named",
          "value": "not researched yet",
          "points": 0,
          "max": 0,
          "state": "na"
        },
        {
          "check": "Support route",
          "value": "help pages",
          "points": 5,
          "max": 5,
          "state": "ok"
        }
      ],
      "policies": [
        {
          "kind": "terms",
          "url": "https://www.fone.me/terms",
          "state": "unreadable",
          "reason": "the page has 0 words of text without a browser, so the document is drawn by script or sits elsewhere",
          "readAt": "2026-11-06",
          "points": 7,
          "max": 10
        },
        {
          "kind": "privacy",
          "url": "https://www.fone.me/privacy",
          "state": "unreadable",
          "reason": "the page has 0 words of text without a browser, so the document is drawn by script or sits elsewhere",
          "readAt": "2026-11-06",
          "points": 7,
          "max": 10
        }
      ]
    },
    "humans": {
      "slug": "fone-me",
      "checked": "2026-11-05",
      "company": "Fone",
      "peopleNote": "No person is named with a role on any first-hand page read on 5 November 2026. The home page, llms.txt, nine guide pages and the two agent cards name nobody; page metadata gives the author only as 'Fone'; the terms, privacy policy, data-deletion, support, FAQ and blog pages draw by script and showed only titles, so any names there are unchecked. The README of github.com/spearisa/fone-me-mcp ends 'Operated by zwilio' and its demo messages a link named after a person, and the Product Hunt poster per the 5 November listing check is 'Sam S'; none of these is a role, and neither the GitHub account nor the request's display name was used. Ownership is unknown because no legal entity is named on any page read. Investors were looked for in the fone.me sitemap (no press, about or funding page) and in six web searches (two for fone.me with funding, founder, seed, raises or accelerator, three for zwilio and one for the App Store app name), which found only other companies (Fonio, Superfone and similar) and no round or backer; Crunchbase-style databases were not used.",
      "companySocial": {},
      "support": {
        "urls": [
          "https://www.fone.me/support",
          "https://www.fone.me/faq"
        ]
      },
      "sources": [
        "https://www.fone.me/",
        "https://www.fone.me/llms.txt",
        "https://www.fone.me/how-fone-me-works",
        "https://www.fone.me/support",
        "https://www.fone.me/terms",
        "https://www.fone.me/privacy",
        "https://www.fone.me/sitemap.xml",
        "https://github.com/spearisa/fone-me-mcp"
      ],
      "ownership": {
        "status": "unknown",
        "checked": "2026-11-05",
        "sources": [
          "https://www.fone.me/llms.txt",
          "https://www.fone.me/terms",
          "https://www.fone.me/privacy"
        ]
      }
    },
    "pageJsonUrl": "https://www.anchorterminal.com/tools/fone-me.json",
    "live": {
      "slug": "fone-me",
      "probe": {
        "target": "https://www.fone.me/mcp",
        "method": "get",
        "lastAt": "2026-11-07T18:20:25.611446017Z",
        "lastOk": true,
        "lastStatus": 405,
        "lastMs": 233,
        "authRequired": false,
        "uptime24h": 100,
        "uptime30d": 100,
        "p50ms24h": 215,
        "p95ms24h": 511,
        "samples24h": 200,
        "samples30d": 200,
        "days": [
          {
            "date": "2026-11-06",
            "probes": 13,
            "ok": 13
          },
          {
            "date": "2026-11-07",
            "probes": 187,
            "ok": 187
          }
        ]
      },
      "securityTxt": {
        "url": "https://fone.me/.well-known/security.txt",
        "state": "none",
        "checkedAt": "2026-11-07T15:59:59.997697627Z"
      },
      "llmsTxt": {
        "url": "https://www.fone.me/llms.txt",
        "ok": true,
        "status": 200,
        "checkedAt": "2026-11-07T15:32:32.136376991Z"
      },
      "pages": [
        {
          "url": "https://www.fone.me/privacy",
          "kind": "privacy",
          "status": 200,
          "checkedAt": "2026-11-07T14:28:42.001987885Z",
          "changedAt": "0001-01-01T00:00:00Z",
          "fingerprint": "e3b0c44298fc"
        },
        {
          "url": "https://www.fone.me/terms",
          "kind": "terms",
          "status": 200,
          "checkedAt": "2026-11-07T14:28:44.174787172Z",
          "changedAt": "0001-01-01T00:00:00Z",
          "fingerprint": "e3b0c44298fc"
        }
      ],
      "mcpTools": {
        "url": "https://www.fone.me/mcp",
        "checkedAt": "2026-11-07T01:44:39.315960369Z",
        "status": "ok",
        "note": "answered without the initialize handshake",
        "tools": [
          {
            "name": "find_agents",
            "title": "Find people and businesses on fone.me",
            "description": "Search fone.me for people's and businesses' AI agents by what they do or offer (e.g. 'dog walker', 'real estate agent in Miami', 'Spanish tutor'). Returns their fone.me links.",
            "inputSchema": {
              "properties": {
                "limit": {
                  "description": "How many results (1-10). Default 5.",
                  "type": "number"
                },
                "query": {
                  "description": "What you're looking for, in plain words.",
                  "type": "string"
                }
              },
              "required": [
                "query"
              ],
              "type": "object"
            },
            "annotations": {
              "openWorldHint": true,
              "readOnlyHint": true,
              "title": "Find people and businesses on fone.me"
            }
          },
          {
            "name": "get_agent",
            "title": "Look up a fone.me agent",
            "description": "Get who is behind a fone.me link (e.g. fone.me/samspearin) and what their agent can help with, before messaging it.",
            "inputSchema": {
              "properties": {
                "link": {
                  "description": "A fone.me link or name, e.g. 'fone.me/sam' or 'sam'.",
                  "type": "string"
                }
              },
              "required": [
                "link"
              ],
              "type": "object"
            },
            "annotations": {
              "openWorldHint": true,
              "readOnlyHint": true,
              "title": "Look up a fone.me agent"
            }
          },
          {
            "name": "message_agent",
            "title": "Message a fone.me agent",
            "description": "Send a message to the AI agent at a fone.me link and get its reply — ask a question, request a booking or a quote, or leave a message for the person. The conversation continues across calls. Say who you're asking for in on_behalf_of.",
            "inputSchema": {
              "properties": {
                "link": {
                  "description": "A fone.me link or name, e.g. 'fone.me/samspearin'.",
                  "type": "string"
                },
                "message": {
                  "description": "What to say to the agent.",
                  "type": "string"
                },
                "on_behalf_of": {
                  "description": "The name of the person you're asking for (shown to the owner).",
                  "type": "string"
                }
              },
              "required": [
                "link",
                "message"
              ],
              "type": "object"
            },
            "annotations": {
              "destructiveHint": false,
              "idempotentHint": false,
              "openWorldHint": true,
              "readOnlyHint": false,
              "title": "Message a fone.me agent"
            }
          },
          {
            "name": "add_chat_to_website",
            "title": "Add an AI chat button to a website",
            "description": "Get the one-line code that puts a fone.me AI agent on a website: a chat button in the corner where visitors chat, call by voice, or continue on WhatsApp or Telegram, and the agent answers questions, takes messages and booking requests for the owner. Use it when someone building or editing a website (HTML, Next.js, React, WordPress, Shopify, Wix, Squarespace, Webflow, Framer) wants a chatbot, AI receptionist, live chat or contact widget. Free to start. Give the person's fone.me link if they have one.",
            "inputSchema": {
              "properties": {
                "link": {
                  "description": "The site owner's fone.me link, e.g. 'fone.me/joes-plumbing' or 'joes-plumbing'. Leave out if they don't have one yet.",
                  "type": "string"
                },
                "site": {
                  "description": "What the site is built with: html, nextjs, react, wordpress, shopify, wix, squarespace, webflow, framer. Default html.",
                  "type": "string"
                }
              },
              "type": "object"
            },
            "annotations": {
              "openWorldHint": true,
              "readOnlyHint": true,
              "title": "Add an AI chat button to a website"
            }
          }
        ],
        "schemaTokens": 725,
        "changedAt": "2026-11-07T01:44:39.315960369Z",
        "check": {
          "checker": "anchor-check/1.0",
          "totalTokens": 725,
          "counts": {
            "error": 0,
            "note": 1,
            "warn": 1
          },
          "findings": [
            {
              "rule": "TC18",
              "severity": "warn",
              "tool": "add_chat_to_website",
              "message": "readOnlyHint is true but the name says \"add\"",
              "fix": "If it changes anything, readOnlyHint must be false."
            },
            {
              "rule": "TC24",
              "severity": "note",
              "message": "4 of 4 tools have no outputSchema",
              "fix": "Declare outputSchema for tools that return structured data, and return structuredContent that matches it."
            }
          ]
        }
      },
      "updatedAt": "2026-11-07T18:20:25.611446017Z"
    }
  }
}
