Findable

Public website audits and sourced SEO/AEO content drafts, ready for your review.

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
100%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,685Tokens (tool definitions)
~7.0 KBTypical response size
Moderate attention impact (1.32% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "findable": {
      "url": "https://thefindable.co/mcp"
    }
  }
}

Remote endpoints

https://thefindable.co/mcpstreamable-http

What it can do

Tool inventory

Tools (2)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟡start_audit(site, goals, hosting, priority_urls, competitor_urls, ...)

Create a stored SEO/AEO audit of a public business website without an account or data connection. Accepts optional dated provider reports. Reads the homepage, up to four internal pages, robots.txt, sitemap.xml and up to five relevant competitor websites discovered from public market research or supplied by the client. Samples three unbranded customer questions about the category, a task and a problem through live OpenAI API web searches when available. Newly audited competitors use the same questions and source-check rubric. Recent public research may be reused with its original dates; private client data is excluded from that cache. Returns an audit ID for retrieving progress and the completed report. Tool results omit contact tables, email addresses and phone numbers. Results include sourced findings, exact target URLs, up to three priorities, relevant content drafts, expected impact, realistic review points and measurement steps. The service cannot access other MCP connections, infer private metrics or edit websites. Starts the work and returns an id. It usually takes several minutes.

Input Schema

{
  "type": "object",
  "properties": {
    "site": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000,
      "description": "The client's public HTTPS website, such as https://lightsource.ai/."
    },
    "goals": {
      "description": "The target customer and desired customer action, when known.",
      "type": "string",
      "maxLength": 2000
    },
    "hosting": {
      "description": "Where the client publishes the website, such as Framer, Webflow or WordPress.",
      "type": "string",
      "maxLength": 100
    },
    "priority_urls": {
      "description": "Up to three priority pages on the client's website. These replace the automatic page selection.",
      "maxItems": 3,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 2000,
        "format": "uri"
      }
    },
    "competitor_urls": {
      "description": "Optional public competitor websites. Findable checks relevance to the same buyers and market before comparing them.",
      "maxItems": 5,
      "type": "array",
      "items": {
        "type": "string",
        "maxLength": 2000,
        "format": "uri"
      }
    },
    "refresh_public_research": {
      "description": "Fetch fresh public evidence and analysis even when recent research exists, for example after website changes.",
      "type": "boolean"
    },
    "research_competitors": {
      "description": "Whether the public audit includes relevant competitor discovery and comparisons. Defaults to true.",
      "type": "boolean"
    },
    "shared_data": {
      "description": "Optional snapshots collected with the client's permission through their own tools. Snapshots contain report data rather than credentials. The audit can run without them.",
      "maxItems": 3,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "provider": {
            "type": "string",
            "minLength": 1,
            "maxLength": 100,
            "description": "Search Console, Semrush, Profound, analytics, or another source."
          },
          "site": {
            "type": "string",
            "maxLength": 2000,
            "format": "uri",
            "description": "The client website this data describes."
          },
          "property": {
            "type": "string",
            "minLength": 1,
            "maxLength": 2000,
            "description": "The selected property, project or domain in that provider."
          },
          "collected_at": {
            "type": "string",
            "format": "date-time",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d(?:\\.\\d+)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$"
          },
          "start_date": {
            "type": "string",
            "format": "date",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
          },
          "end_date": {
            "type": "string",
            "format": "date",
            "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$"
          },
          "scope": {
            "type": "string",
            "minLength": 1,
            "maxLength": 1000,
            "description": "Report, filters, country, device, search type, engine coverage, date completeness, and any unknown scope details."
          },
          "totals": {
            "maxItems": 12,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "name": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 100
                },
                "value": {
                  "anyOf": [
                    {
                      "type": "number",
                      "minimum": 0
                    },
                    {
                      "type": "null"
                    }
                  ]
                },
                "unit": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 80
                },
                "definition": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 500
                }
              },
              "required": [
                "name",
                "value",
                "unit",
                "definition"
              ]
            },
            "description": "Actual provider-reported totals. Partial query/page rows are not totals. Unknown values are null."
          },
          "rows": {
            "maxItems": 50,
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "label": {
                  "type": "string",
                  "minLength": 1,
                  "maxLength": 1000
                },
                "url": {
                  "type": "string",
                  "maxLength": 2000,
                  "format": "uri"
                },
                "metrics": {
                  "maxItems": 8,
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "name": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 100
                      },
                      "value": {
                        "anyOf": [
                          {
                            "type": "number",
                            "minimum": 0
                          },
                          {
                            "type": "null"
                          }
                        ]
                      },
                      "unit": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 80
                      },
                      "definition": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 500
                      }
                    },
                    "required": [
                      "name",
                      "value",
                      "unit",
                      "definition"
                    ]
                  }
                }
              },
              "required": [
                "label",
                "metrics"
              ]
            }
          },
          "notes": {
            "type": "string",
            "maxLength": 3000,
            "description": "Coverage, missing rows, indexing verdicts or citation observations. No credentials or personal customer data."
          }
        },
        "required": [
          "provider",
          "site",
          "property",
          "collected_at",
          "start_date",
          "end_date",
          "scope",
          "totals",
          "rows",
          "notes"
        ],
        "description": "A dated, client-authorized read-only snapshot from their own connected tool or export. Findable does not inherit that connection or independently verify the snapshot."
      }
    }
  },
  "required": [
    "site"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢check_audit(id)

Where a Website SEO/AEO audit stands. When it is ready, the full result as text and a link to it on Findable's site.

Input Schema

{
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200,
      "description": "The id start returned."
    }
  },
  "required": [
    "id"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded2 tools