mcpField
S
Site Search Opener

Site Search Opener

Local
bestseo.tipsBusiness & Marketing1Updated 2d ago

About Site Search Opener

Site Search Opener is an MCP server for SEO, content, sales and other teams researching their own and competitors’ sites. It reads sitemaps and RSS or Atom feeds, organizes findings through recipes, and provides browser-search links when site data is unavailable.

Key features

  1. 01Read sitemaps and RSS or Atom feeds
  2. 02Offer 34 research recipes
  3. 03Filter pages and check HTTP status
  4. 04Create Google or Bing search links
  5. 05Build website project files
  6. 06Save CSV, JSON or Markdown locally

Use cases

  1. 01Compare competitor topics and site structure
  2. 02Find recent launches, case studies or job listings
  3. 03Identify owned pages not updated recently
  4. 04Check domains and organize a project list

MCP support

As an MCP server, it exposes tools to MCP clients for recipe lookup, site inventory, search-link generation, URL checks and project-file creation.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"albertalbs-site-search-opener": {
"command": "npx",
"args": [
"-y",
"site-search-opener-mcp"
],
"env": {
"SSO_OUTPUT_DIR": "<SSO_OUTPUT_DIR>"
}
}
}
}
Run commandnpx -y site-search-opener-mcp
Environment variables to set
SSO_OUTPUT_DIRFolder where save-file writes files. Default: Documents/Site Search Opener in your home folder.

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmsite-search-opener-mcp1.1.1

Tools

7

Saved tool list · updated 1d ago

ParameterTypeRequiredDescription
allbooleanNoEvery recipe for every team
teamenumNoOnly this team's recipesseo | product | sales | pr | research | hr | links

Details

From the project README

Site Search Opener MCP

Research your own site and many competitor sites from inside your AI app. Ask a question in plain words, and get a table of real pages: URL, title, description, last modified date and HTTP status.

It reads what websites publish for search engines: their sitemaps and RSS or Atom feeds. It checks robots.txt first, goes slowly, and says who it is. When a site has nothing to read, you get Google search links to open in your own browser instead.

Works with Claude (Desktop, Code and claude.ai), ChatGPT, Gemini CLI, Gemini Enterprise, OpenAI Codex, Cursor, VS Code with GitHub Copilot, Windsurf and any other app that supports MCP.

This is the AI companion to the free Site Search Opener web app by bestSEO.tips. Project files move between the two.


What you can ask

Which of my competitors have pages about maintenance backlog? Show me a table.

How is competitor.com's content organised? Which folders are biggest?

What did my competitors publish in the last 90 days?

Find case studies on rival-a.com and rival-b.com for the food industry.

Build a project file from the competitors we talked about before, and check they all work.

Which of my own pages haven't been updated in a year?

Is anyone on Reddit talking about our product category? Give me links.

How it works

  1. You ask in plain words. The AI picks a recipe, such as content-gap or case-studies, and your domains.
  2. The server reads each site's own files. robots.txt first, then the sitemaps it lists (or the usual places, like /sitemap.xml), then the site's RSS or Atom feed. Pages that robots.txt asks bots to avoid are left out.
  3. You get a table. Matching pages with URL, title, description, date and HTTP status, plus folder counts or pages per month for some recipes.
  4. No sitemap? You get links. If a site has no usable sitemap, blocks bots, or nothing matched, the server makes Google site: search links for that site. They open in your browser, the same as typing the search yourself.

What it never does:

  • It never searches Google or reads Google results. The links are for you to click.
  • It never tries to get past a CAPTCHA, a bot check or a robots.txt rule.
  • It never sends your data to bestseo.tips or anyone else. The local version runs on your computer. The hosted version runs in your own Cloudflare account.

Site owners can opt out at any time by adding this to their robots.txt:

User-agent: SiteSearchOpenerMCP
Disallow: /

Install

WayForGuide
Claude Code pluginClaude Code/plugin marketplace add albertalbs/site-search-opener-mcp, then /plugin install site-search-opener@bestseo-tips
Local MCP serverClaude Desktop, Claude Code, Gemini CLI, Codex, Cursor, VS Code, WindsurfInstall guide, section B
SkillClaude, Codex, Gemini CLI, Cursor, CopilotInstall guide, section C
Hosted on Cloudflare (free)claude.ai, ChatGPT, Gemini Enterprise, teamsHosting guide

The quickest local setup: install Node.js 18.17 or newer, and point your app at:

npx -y site-search-opener-mcp

Prefer no downloads at start-up? Download this repository once and use node <folder>/plugin/server/site-search-opener.mjs instead.

Tools

ToolWhat it does
list-recipesShows a start-here list of recipes, or every recipe for a team
run-recipeRuns a recipe across your domains and returns one table, with search links for sites that have no sitemap data
site-inventoryLists one site's pages from its sitemap and feeds, with filters for keyword, URL text and dates
google-linksMakes Google (or Bing) site: search links for you to open
check-urlsChecks domains or URLs work (HTTP 200) and shows redirects
build-project-fileChecks your own and competitor domains and builds a project file for the web app
save-fileSaves a CSV, JSON or Markdown file on your computer (local version only)

Recipes

34 recipes for seven teams. Not sure where to begin? Start with one of these:

TeamStart hereWhat it finds
SEO and contentcontent-gapCompetitor pages whose URL or title matches your keyword
Productfeature-launchesLaunch and announcement pages from the last 6 months
Sales and marketingcase-studiesCase studies and customer stories, narrowed by industry if you like
PR and brandbrand-mentionsPages that mention a brand outside its own site
Customer researchforum-threadsReddit and Quora discussions on a topic
HR and talenthiring-signalsOpen roles for a company on the big job boards
Link buildingguest-post-sitesWrite-for-us pages on your topic

Everything, by team:

TeamRecipes
SEO and contentcontent gap, URL structure, publishing activity, comparison pages, gated assets, glossary pages, cannibalization, refresh candidates
Productfeature launches, integrations, pricing, release notes, docs depth, security and compliance pages
Sales and marketingcase studies, pages that name you, webinars, review sites
PR and brandnewsroom pages, brand mentions, press releases
Customer researchReddit and Quora threads, competitor help articles
HR and talentcareers pages, open roles on job boards
Link buildingguest post sites, sponsored posts, resource pages, infographics, social profiles

The full list, with what each one reads, is in docs/RECIPES.md.

Slash commands

In Claude Code with the plugin, type /site-search-opener: and pick one:

CommandUse it for
:seo :product :sales :pr :research :hr :linksResearch for that team. Add what you need, for example /site-search-opener:sales case studies food industry
:build-projectCollect your domains from this chat, memory and past chats, check them, and make a project file
:inventoryList one site's pages, for example /site-search-opener:inventory competitor.com pricing
:search-linksMake search links for a keyword
:helpA short explanation and the list of commands

Other apps show the same commands as MCP prompts, usually in a prompt or attachment menu.

Projects and the web app

A project is a named list of your own domains and competitor domains, in the same JSON format the web app uses:

{
  "app": "sitesearch-opener",
  "version": 2,
  "projects": [
    { "name": "HR software", "own": ["linkedin.com"], "competitors": ["indeed.com", "xing.com"] }
  ]
}
  • Ask the AI to build one. It can collect domains you mentioned before, check each one returns HTTP 200, and follow redirects.
  • Import it in the web app: open https://bestseo.tips/tools/site-search-opener/, go to Settings, then Export/Import Projects, then Import.
  • Export from the web app and hand the file to the AI, so it uses the same lists.

Limits

LocalHosted, Cloudflare free plan
Domains per call304
Sitemap files per domain304
Pages with title and status fetched10 per domain by default, up to 100off by default, up to 20
Domain checks per call20012

The local version waits at least one second between requests to the same site, longer if the site's robots.txt asks for a Crawl-delay.

Privacy and safety

  • The server only fetches public http and https addresses. It refuses local and private network addresses, and redirects that lead to them.
  • Requests carry the user agent SiteSearchOpenerMCP/<version> (+https://github.com/albertalbs/site-search-opener-mcp).
  • Downloads are capped in size and time.
  • Text from websites is passed to the AI as data, and the AI is told not to follow instructions inside it.

See SECURITY.md for more.

Questions

Why doesn't it just search Google for me? Google's terms do not allow automated searches, and it blocks them. Sitemaps are published so machines can read them, so that is what this tool reads. For Google results, it gives you the links.

Does it use bestseo.tips servers? No. The local version runs on your computer. The hosted version runs in your Cloudflare account. bestseo.tips only hosts the web app.

Why does a site show links instead of a table? Either the site has no sitemap or feed the tool can find, robots.txt asks bots to stay away, or nothing matched your filters. The links still let you check it yourself.

Why do I need a project file? You don't, but it saves typing the same 20 competitors every time, and the web app reads the same file.

Development

npm install
npm test                 # unit tests and MCP protocol tests
npm run build            # rebuilds plugin/server/site-search-opener.mjs and copies the skill
npm run docs:recipes     # rebuilds docs/RECIPES.md from src/core/recipes.js
npx wrangler dev         # runs the Cloudflare version locally

Layout:

src/core/      shared logic: domains, queries, recipes, robots.txt, feeds, inventory, projects
src/server.js  the MCP server, shared by local and hosted versions
src/stdio.js   local version (adds save-file)
worker/        Cloudflare Workers version
skill/         the Agent Skill
plugin/        the Claude Code plugin (commands, skill copy, bundled server)
docs/          install, hosting and recipe guides
test/          tests, with a fake internet so they never touch real sites

Contributions are welcome, especially new recipes. See CONTRIBUTING.md.

License and credits

Apache License 2.0. See LICENSE and NOTICE.

If you share or build on this project, keep the NOTICE file with it, as the license asks. A link back is appreciated.

Created by Albert Adaikkalam, bestSEO.tips. LinkedIn: https://www.linkedin.com/in/albertalbs/

Third-party packages in the bundled server are listed in THIRD_PARTY_NOTICES.md.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.