Prototype · Preview: every server in the official registry, synced every 30 minutes. Reviews and accounts come in a later step.
PopNx MCPMCP servers for people who use AI · explained in plain words

IndexMachine

by indexmachineversion 0.1.0i★ –iComputer or cloud
Registry nameco.indexmachine/mcp

Install

Overview

Description from the maker (original English)

Check your own sites' pages on Google and request indexing, plus IndexNow, from your AI assistant.

PopNx MCP’s three pillars

These three are never merged into one score: opinions, measurements and popularity are different things.

What you can do with it

We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.

  • Connection: Computer or cloud
  • Transport: stdio, Streamable HTTP
  • Category: Other
  • You need to fill in: INDEXMACHINE_API_KEY, Authorization

Install

Pick the AI app you use, then copy the settings.

Before you install

  • Basic checks: 1 of 1 passed
  • Runs on the maker’s server: what you ask it goes through their server.
  • You fill in yourself: INDEXMACHINE_API_KEY, Authorization

Values marked secret are keys to your account. Never share them or paste them into a chat.

You need

  • Runs in the cloudNothing to install; it connects over the internet
  • npmNode.js installed (for the npx command)

Which app do you use?

Pick your app above. We remember it, so next time the button says “Install in …”.

This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.

Or run it on your computer

Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json

{
  "mcpServers": {
    "indexmachine": {
      "command": "npx",
      "args": [
        "-y",
        "indexmachine-mcp"
      ],
      "env": {
        "INDEXMACHINE_API_KEY": "your-value"
      }
    }
  }
}

Run this in your terminal

claude mcp add --transport http indexmachine https://mcp.indexmachine.co/mcp --header 'Authorization: Bearer {api_key}'

Or run it on your computer

claude mcp add indexmachine --env INDEXMACHINE_API_KEY=your-value -- npx -y indexmachine-mcp

Fill in the empty values before running it.

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "indexmachine": {
      "url": "https://mcp.indexmachine.co/mcp",
      "headers": {
        "Authorization": "Bearer {api_key}"
      }
    }
  }
}

Or run it on your computer

Open in Cursor

Or copy the settings yourself

Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json

{
  "mcpServers": {
    "indexmachine": {
      "command": "npx",
      "args": [
        "-y",
        "indexmachine-mcp"
      ],
      "env": {
        "INDEXMACHINE_API_KEY": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "indexmachine": {
      "type": "http",
      "url": "https://mcp.indexmachine.co/mcp",
      "headers": {
        "Authorization": "Bearer {api_key}"
      }
    }
  }
}

Or run it on your computer

Open in VS Code

Or copy the settings yourself

Paste into .vscode/mcp.json in your project

{
  "servers": {
    "indexmachine": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "indexmachine-mcp"
      ],
      "env": {
        "INDEXMACHINE_API_KEY": "your-value"
      }
    }
  }
}

Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.

This address needs a key in a request header, which the add-connector menu cannot set. Use Claude Code, Cursor or VS Code instead.

Your choice stays on this device in a cookie; no account needed.

Values you fill in

  • INDEXMACHINE_API_KEY secret required env
    API key from the Settings page of the IndexMachine dashboard (im_live_...)
  • Authorization secret required HTTP header
    Bearer and your IndexMachine API key

These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.

What it can do

We have not read this server’s tool list yet; we check endpoints in rotation.

Basic checksi

We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 6, 2026

  • ✓ Pass

    Maker matches the repo

    The registry name was verified against the domain indexmachine.co (the registry checks domain ownership)

  • … Not checked yet

    Still maintained

    We have not read this repo from GitHub yet

  • … Not checked yet

    Has a licence

    We have not read this repo from GitHub yet

  • … Not checked yet

    Endpoint responds

    Not checked yet; we check endpoints in rotation

  • … Not checked yet

    Sign-in with OAuth

    Not checked yet; we check endpoints in rotation

  • … Not checked yet

    No hidden instructions in tool descriptions

    Not checked yet; we read the tool list when we check the endpoint

Compared with others in Otheri

  • More stars than 0% of the other 32466 servers in this category
  • Published to the registry more recently than 85% of the other 32466 servers in this category
  • Basic checks equal to or better than 100% of the other 32466 servers in this category

Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.

Common questions

Is IndexMachine safe?

It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.

What keys or codes does it need?

You need to fill in: INDEXMACHINE_API_KEY, Authorization

Does it run on my computer or in the cloud?

Either way works: install it on your computer or connect to the cloud version.

Is it still maintained?

The GitHub repo last changed –, and the latest version (0.1.0) reached the registry 6 days ago.

Which apps can use it?

Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. It connects by URL, so apps that accept remote MCP servers work too, such as ChatGPT in developer mode.

What can I use instead?

In the same category: Spec Driven Development, Remote Desktop Commander, HotCodePush

Alternatives

Servers in the same category from other makers, sorted by stars.

Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi

Spec Driven Development

by formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

Runs on your computer★ 440MITUpdated 14 months ago
Install

Remote Desktop Commander

by desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

Runs in the cloud★ 211Updated yesterday
Install

HotCodePush

by hotcodepush-team

Manage over-the-air (OTA) updates for React Native, Expo, Capacitor and Cordova apps.

Runs in the cloudUpdated today
Install

README from the maker

Open the README

Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.

IndexMachine MCP server

Check your own sites' pages on Google and request indexing, plus IndexNow, from your AI assistant.

This MCP server lets Claude Code, Cursor, VS Code, Claude Desktop and claude.ai work with the sites you connected to IndexMachine: list your sites and pages, check whether a URL is on Google, queue a Request indexing click (also a re-index of a page that is already indexed) and notify Bing and the other IndexNow engines. It calls the IndexMachine API with your key and does nothing the API does not.

How a request really travels

IndexMachine uses Request indexing in your own Google Search Console and IndexNow, no link farms. So a request is not instant, and the server says so every time:

  1. request_indexing queues the click. It does not reach Google by itself.
  2. The IndexMachine Chrome extension, in your Chrome and signed in to the Google account that owns the property, picks the request up when it next checks in: about every 5 minutes on extension 1.2.0 or newer, every 30 minutes on older versions. Chrome has to be running. When the extension has not checked in for 40 minutes there is no ETA, and the request waits in the queue.
  3. The extension clicks Request indexing in your Search Console, the same button you would press.
  4. Google takes about 10 of these requests per site per day, a day that resets at midnight Pacific. The number is observed; Google does not publish it. Requests you queue go ahead of the extension's daily work on your other pages and share the same 10. Once a site's day is used up, the ETA moves past midnight Pacific.
  5. Google then decides whether and when it indexes the page, often days later. The ETA is for the click, never for indexing, and only check_url says a page is indexed.

A re-index of a page that is already on Google (force: true) needs extension 1.2.0 or newer. IndexNow tells Bing, Yandex and the other IndexNow engines directly; it needs the site's IndexNow key file in place, takes 20 submissions per site a day and does not reach Google.

What you need

  • An IndexMachine account with your sites connected: app.indexmachine.co. Signing up is free and shows which of your pages Google has not indexed. Requesting indexing needs a paid plan for the site (pricing).
  • The IndexMachine Chrome extension, installed and signed in, for the Request indexing clicks.
  • An API key (with claude.ai you can add it as a request header, see Remote server).
Create an API key
  1. Open the IndexMachine dashboard and choose Settings from your profile menu, or go straight to app.indexmachine.co/settings.
  2. Under API keys press Create key and give it a label, such as Claude Code.
  3. Pick Full (it also queues and cancels requests and submits to IndexNow) or Read only (sites, pages, checks and requests).
  4. Copy the key. It starts with im_live_ and is shown only once.

Roll or revoke a key on the same page at any time; an account holds up to 10 active keys.

Install

The package runs on your machine with npx (Node.js 20 or newer). Keep the key in your user-level config, never in a file that lives in a repository.

Claude Code (user scope, so the key stays out of the project's .mcp.json)

claude mcp add --scope user indexmachine --env INDEXMACHINE_API_KEY=im_live_... -- npx -y indexmachine-mcp

Cursor (~/.cursor/mcp.json, the user-level file)

{

"mcpServers": { "indexmachine": { "command": "npx", "args": ["-y", "indexmachine-mcp"], "env": { "INDEXMACHINE_API_KEY": "im_live_..." } } } }

VS Code (.vscode/mcp.json): VS Code asks for the key and keeps it out of the file.

{

"inputs": [ { "type": "promptString", "id": "indexmachine-key", "description": "IndexMachine API key", "password": true } ], "servers": { "indexmachine": { "type": "stdio", "command": "npx", "args": ["-y", "indexmachine-mcp"], "env": { "INDEXMACHINE_API_KEY": "${input:indexmachine-key}" } } } }

Claude Desktop (claude_desktop_config.json): the same block as Cursor, under mcpServers.

Other MCP clients: run npx -y indexmachine-mcp with INDEXMACHINE_API_KEY in its environment, or use the remote server below.

Remote server

The remote server at https://mcp.indexmachine.co/mcp needs no install. Clients send the API key in a header:

URL:    https://mcp.indexmachine.co/mcp

Header: Authorization: Bearer (X-API-Key: works too)

Claude Code

claude mcp add --transport http indexmachine https://mcp.indexmachine.co/mcp \

--header "Authorization: Bearer $INDEXMACHINE_API_KEY"

Cursor (~/.cursor/mcp.json)

{

"mcpServers": { "indexmachine": { "url": "https://mcp.indexmachine.co/mcp", "headers": { "Authorization": "Bearer im_live_..." } } } }

VS Code (.vscode/mcp.json)

{

"inputs": [ { "type": "promptString", "id": "indexmachine-key", "description": "IndexMachine API key", "password": true } ], "servers": { "indexmachine": { "type": "http", "url": "https://mcp.indexmachine.co/mcp", "headers": { "Authorization": "Bearer ${input:indexmachine-key}" } } } }

claude.ai: a custom connector
  1. In claude.ai, open Customize > Connectors, press + Add, then Add custom connector.
  2. Enter the name IndexMachine and the URL https://mcp.indexmachine.co/mcp.
  3. Under Request headers add Authorization with the value Bearer im_live_..., then press Add.
  4. In a chat, open +, then Connectors, and switch IndexMachine on.

IndexMachine and the Submitator connector can be on in the same chat: no tool name is shared.

Signing in with your IndexMachine account instead of a key (OAuth) is built into this server and stays off until IndexMachine's API issues sign-in tokens. Until then the server advertises no sign-in, and every client sends a key.

The remote server keeps nothing between requests: it passes the key on to the IndexMachine API and forgets it.

Tools

ToolWhat it does
account_statusYour plan, the key's permissions and hourly budget, whether the Chrome extension is online, and today's requests per site against Google's daily quota
list_sitesYour connected Search Console properties with page counts, whether Google indexing is on, whether a paid plan covers them and whether IndexNow is ready
site_summaryOne site: today's Request indexing quota, the median days from a first request to indexing, and 30 days of counts
list_pagesA site's pages by status (indexed, not_indexed, awaiting, requested, rejected, needs_fix, excluded, not_found) or part of the URL, 50 at most per call
check_urlWhether a URL is indexed, and as of when, or that it is not known yet (never inspected); live: true asks Google now and uses 1 of 50 live checks per site a day
request_indexingQueues a Request indexing click, also for a URL that is not a page of the site yet, and with force: true a re-index of an indexed page. Answers the queue position and an honest ETA
get_indexing_request, list_indexing_requestsFollow requests: open ones with their position and ETA, closed ones with what Search Console answered
cancel_indexing_requestTakes an open request out of the queue
submit_indexnowNotifies Bing, Yandex and the other IndexNow engines of up to 100 URLs of one site

Prompt: index_url checks a URL, queues a request when it is not indexed, and reports the ETA as it is.

Keys and safety

  • request_indexing previews before it queues. It asks you before a re-index of a page that is already on Google, a URL that is not in your sitemap, or your site's last request of the day; declining queues nothing. Clients that can ask their user (MCP elicitation) show the question themselves, and your answer never passes through the model; a question that gets no answer queues nothing either. Clients that cannot ask, and on the remote server clients on an MCP protocol before 2026-07-28, get a refusal first, with the reasons and a confirm token: an HMAC under your API key that fits only that request, on that day, while your site's quota stays as it was. The model cannot make one up, so a call always takes the refusal first. Whether your assistant then shows you the reasons before it sends the token back is up to the assistant and to your client's approval of tool calls; the server cannot see it. submit_indexnow does the same above 10 URLs, with a token for those URLs on that Pacific day.
  • cancel_indexing_request is marked destructive (destructiveHint: true), and no other tool is: it undoes a request. The tools that only read are marked read-only, so clients can run them without asking.
  • The npx package reads the key from its environment and sends it only to https://api.indexmachine.co. INDEXMACHINE_API_URL may point it to a local development server, and nowhere else.
  • A read-only key fits an assistant that only checks: sites, pages, URL checks and requests.
  • Every call carries a request id that starts with mcp-. Revoke a key on the Settings page at any time.
  • Report a vulnerability by email to vlad@indexmachine.co, not in a public issue (SECURITY.md).

Development

npm install

npm test # unit, contract and protocol tests (it builds dist/ first) npm run build npm run sync:openapi # refresh openapi/v1.json and src/v1.d.ts from https://api.indexmachine.co/v1/openapi.json npm run check:pack # pack, install in an empty folder, run the stdio handshake npm run release:check # what a release needs, then the publishing commands

openapi/v1.json is the /v1 contract, and the API serves the same document at /v1/openapi.json. When the API ships a new release, npm run sync:openapi and npm test show which new operations need a tool or a line in EXCLUDED (src/tools/index.ts).

The remote server deploys to Vercel (vercel.json, api/) under the domain mcp.indexmachine.co. OAuth turns on with MCP_OAUTH=1 and MCP_OAUTH_KEYS, the keys IndexMachine's API encrypts its access tokens with.

License

MIT

Ask PopNx