indexnow-mcp
The indexnow-mcp server enables AI agents to submit URLs for instant search engine indexing via the IndexNow protocol and Google Indexing API.
Submit URLs to IndexNow (
indexnow_submit): Batch-submit up to 10,000 URLs at once to multiple search engines (Bing, Yandex, Naver, Seznam) simultaneously using your IndexNow API key.Submit URLs to Google Indexing API (
google_indexing_submit): Request fast crawling/indexing by Google, supporting bothURL_UPDATEDandURL_DELETEDnotification types via OAuth2 access token.Check Google Indexing Status (
google_indexing_status): Look up when a specific URL was last submitted to Google's indexing system.Submit an entire sitemap (
indexnow_submit_sitemap): Automatically fetch an XML sitemap, extract all URLs, and submit them to IndexNow search engines in one step.Generate an IndexNow API key (
indexnow_generate_key): Create a new API key (UUID) and get the verification file content needed to host on your domain for ownership verification.List supported engines (
indexnow_list_engines): View all supported IndexNow search engines and their API endpoints.
Provides tools for submitting URLs to the Google Indexing API for rapid crawling and monitoring the status of indexing notifications.
Allows submission of URLs to Naver via the IndexNow protocol, facilitating instant indexing of updated or new website content.
Enables parsing of XML sitemaps to automate the extraction and submission of website URLs to indexing services.
Submit URLs for instant indexing via IndexNow and Google Indexing API.
Works with Claude Code, Cursor, Copilot, Codex, Windsurf, and all MCP-compatible AI tools.
Features
IndexNow — Submit URLs to Bing, Yandex, Naver, Seznam simultaneously
Google Indexing API — Request fast crawling from Google
Sitemap submission — Parse XML sitemaps and submit all URLs
API key generator — Generate IndexNow keys and verification files
Status checker — Check Google indexing notification status
Batch support — Submit up to 10,000 URLs at once
Related MCP server: SEOMonster
Tools
Tool | Description |
| Submit URLs to IndexNow (Bing, Yandex, Naver, Seznam) |
| Submit URLs to Google Indexing API |
| Check indexing notification status |
| Fetch sitemap and submit all URLs to IndexNow |
| Generate an IndexNow API key and verification file |
| List all supported engines and endpoints |
Installation
Claude Desktop / Claude Code
Add to your Claude config:
{
"mcpServers": {
"indexnow": {
"command": "npx",
"args": ["-y", "indexnow-mcp"]
}
}
}Cursor
Add to .cursor/mcp.json:
{
"mcpServers": {
"indexnow": {
"command": "npx",
"args": ["-y", "indexnow-mcp"]
}
}
}Usage Examples
Submit URLs to IndexNow
Submit these URLs to IndexNow:
- https://example.com/new-blog-post
- https://example.com/updated-page
API key: your-api-key-here
Host: example.comSubmit a sitemap
Submit all URLs from https://example.com/sitemap.xml to IndexNow
API key: my-key
Host: example.comGenerate an API key
Generate an IndexNow API key for my siteSubmit to Google Indexing API
Submit https://example.com/new-page to Google Indexing API
Access token: ya29.xxxIndexNow Setup
Generate an API key (any UUID — use the
indexnow_generate_keytool)Create a verification file:
public/{your-key}.txtcontaining the keyDeploy the file so it's accessible at
https://yourdomain.com/{your-key}.txtStart submitting URLs
Supported Engines
Engine | Protocol | Limit |
Bing | IndexNow | Unlimited |
Yandex | IndexNow | Unlimited |
Naver | IndexNow | Unlimited |
Seznam | IndexNow | Unlimited |
Indexing API | 200/day default |
Why indexnow-mcp vs Manual API Calls
Feature | indexnow-mcp | Manual API Calls |
Batch submission (10K URLs) | Yes | Custom code |
Multiple engines | All at once | One by one |
Sitemap parsing | Yes | Manual |
API key generator | Yes | Manual |
Price | Free | Free but complex |
More Open Source SEO Tools
Tool | Description |
Curated list of SEO MCP servers and agent skills | |
Visual robots.txt manager for AI crawlers | |
Schema.org JSON-LD markup generator | |
AI brand visibility tracker |
License
MIT
Built by Sharoz Dawa — SEO Professional & Digital Marketing Expert
Available Tools
6 toolsgoogle_indexing_statusA
Check the indexing notification status of a URL via Google Indexing API. Shows when the URL was last submitted.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | URL to check indexing status for | |
| access_token | Yes | Google OAuth2 access token |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Adds valuable return value information ('Shows when the URL was last submitted') but omits safety profile (read-only nature), rate limits, error handling for unsubmitted URLs, and required OAuth scopes despite having auth parameter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero waste. First sentence establishes purpose and API context; second sentence discloses return value. Perfectly front-loaded with no redundant or filler text.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Appropriately complete for a 2-parameter tool with no output schema. Covers core functionality and return value. Minor gap: lacks explicit read-only safety declaration needed in absence of annotations, but sufficient for agent selection and invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has 100% description coverage (url and access_token fully documented), establishing baseline 3. Description adds contextual framing ('via Google Indexing API') but does not expand on parameter semantics, formats, or constraints beyond what the schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Excellent specificity with 'Check the indexing notification status' (verb + resource), explicitly references 'Google Indexing API' to distinguish from IndexNow siblings, and clearly differentiates from google_indexing_submit via the 'status' action vs submission.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage pattern (checking status vs submitting) through the action verb and sibling name contrast, but lacks explicit when-to-use guidance, prerequisites, or explicit comparison stating 'use this after submitting to verify status.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
google_indexing_submitA
Submit URLs to Google Indexing API for fast crawling and indexing. Requires a Google service account access token with Indexing API permissions.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | List of URLs to submit | |
| access_token | Yes | Google OAuth2 access token with Indexing API scope | |
| type | No | Notification type: URL_UPDATED (new/changed) or URL_DELETED (removed). Default: URL_UPDATED |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It discloses the auth requirement and the outcome (fast crawling/indexing), but omits other behavioral traits such as API rate limits, quota restrictions, idempotency characteristics, or what constitutes a successful response.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of exactly two high-value sentences: one declaring purpose and effect, the second stating the hard requirement. There is no redundancy or extraneous information, and the critical constraint (service account auth) is prominently featured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple 3-parameter schema with 100% coverage and no output schema, the description is appropriately complete regarding inputs and side effects. However, it could be improved by briefly noting the return value or success indicators since no output schema exists to document the response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
While the schema has 100% coverage, the description adds crucial semantic specificity by clarifying that a 'service account' access token is required (not just any OAuth2 token), which is technically significant for the Google Indexing API. This compensates for the schema's more general 'OAuth2 access token' description.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the specific action (Submit URLs), the target resource (Google Indexing API), and the benefit (fast crawling and indexing). It naturally distinguishes itself from the IndexNow siblings (indexnow_submit) by specifying 'Google Indexing API' and from google_indexing_status by using the verb 'Submit' versus checking status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly states the authentication prerequisite ('Requires a Google service account access token'), which defines when the tool can be used. However, it does not explicitly contrast with indexnow_submit to clarify when to use Google's API versus IndexNow, though the naming makes this relatively clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indexnow_generate_keyA
Generate an IndexNow API key and the verification file content. You need to host this file at your domain root.
| Name | Required | Description | Default |
|---|---|---|---|
| custom_key | No | Custom API key (optional — a UUID will be generated if not provided) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description must carry the full behavioral burden. It adds crucial context about hosting the verification file at the domain root, but omits idempotency characteristics, side effects, or the structure of returned data given the missing output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of two efficient sentences with zero wasted words. The first sentence front-loads the core purpose, while the second provides critical usage guidance without verbosity or unnecessary elaboration.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple single-parameter tool without an output schema, the description adequately covers the generation purpose and hosting requirements. It could improve by briefly characterizing the return format (e.g., specifying that both key and file content are returned) since no output schema documents this.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for the custom_key parameter, documenting its optional nature and UUID fallback. Since the schema fully describes the parameter, the description appropriately does not need to add redundant parameter details, meeting the baseline expectation.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Generate an IndexNow API key and the verification file content,' providing a specific verb (Generate) and clear resources. It effectively distinguishes from siblings like indexnow_submit and google_indexing_submit, which perform URL submission rather than key generation setup.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description includes essential post-invocation guidance: 'You need to host this file at your domain root.' However, it lacks explicit when-to-use guidance comparing it to alternatives or stating prerequisites such as 'use this before submitting URLs via indexnow_submit.'
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indexnow_list_enginesA
List all supported IndexNow search engines and their API endpoints.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It successfully indicates this is a read operation returning engine configurations, but omits details about network requirements, caching behavior, rate limits, or authentication needs that would help an agent understand the operational constraints.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description consists of a single, efficient sentence with nine words. It is appropriately front-loaded with the action verb and contains no redundant or wasted language, making it ideal for quick comprehension by an agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the low complexity (zero inputs, no output schema, no annotations), the description adequately covers the functional scope by specifying what data it returns (engines and endpoints). While an output schema would be ideal, the description sufficiently compensates by clarifying the return value for this simple discovery tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool has zero parameters and the schema is an empty object. Per evaluation guidelines, 0-parameter tools receive a baseline score of 4. The description appropriately does not mention parameters since none exist, requiring no additional semantic clarification beyond what the trivial schema provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('List') and clearly identifies the resource ('IndexNow search engines and their API endpoints'). It effectively distinguishes this tool from its siblings (indexnow_submit, indexnow_submit_sitemap, etc.) by positioning it as a discovery/listing operation rather than an action/submission operation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description states what the tool does but provides no explicit guidance on when to invoke it versus alternatives. It does not indicate, for example, that this should be called before indexnow_submit to discover available endpoints, or whether the results are static reference data.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indexnow_submitA
Submit URLs to IndexNow for instant indexing on Bing, Yandex, Naver, Seznam. Supports batch submission of up to 10,000 URLs.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes | List of URLs to submit (max 10,000) | |
| api_key | Yes | Your IndexNow API key (any UUID-like string you generate) | |
| host | Yes | Your website hostname (e.g., example.com) | |
| key_location | No | URL where your API key file is hosted (optional) | |
| engines | No | Search engines to submit to (default: all) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description carries full burden. Adds valuable operational constraints ('instant indexing', 'up to 10,000 URLs') but omits critical behavioral details: return value format, idempotency guarantees, rate limiting, error handling patterns, or confirmation that this is a non-destructive write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tightly constructed sentences. First establishes action and beneficiaries; second provides batch constraint. Zero redundancy, front-loaded with core functionality, appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for basic invocation given rich input schema, but gaps remain due to missing output schema and annotations. Description should ideally disclose return value structure or success indicators for this external API submission tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, providing detailed parameter documentation (UUID format for api_key, URI format for urls, default behavior for engines). Description reinforces the 10,000 URL limit and lists target engines, but adds minimal semantic depth beyond what the comprehensive schema already provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description provides specific verb ('Submit'), clear resource ('URLs to IndexNow'), and scope ('instant indexing on Bing, Yandex, Naver, Seznam'). Explicitly mentions the 10,000 URL batch limit, distinguishing operational scope from siblings like indexnow_submit_sitemap and google_indexing_submit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implies usage context by listing target search engines (Bing, Yandex vs Google), but lacks explicit when-to-use guidance comparing it to sibling indexnow_submit_sitemap or google_indexing_submit. No mention of prerequisites like API key generation (though sibling indexnow_generate_key exists).
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
indexnow_submit_sitemapA
Fetch a sitemap XML, extract all URLs, and submit them to IndexNow for instant indexing.
| Name | Required | Description | Default |
|---|---|---|---|
| sitemap_url | Yes | URL of the XML sitemap to process | |
| api_key | Yes | Your IndexNow API key | |
| host | Yes | Your website hostname (e.g., example.com) | |
| engines | No | Search engines to submit to (default: all) | |
| limit | No | Max URLs to submit (default: all) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden. It describes the happy-path workflow but omits error handling behavior, rate limiting, what happens if the sitemap is unreachable, or what the tool returns (no output schema exists). It does set expectations with 'instant indexing'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single, efficient sentence of 12 words. Immediately front-loaded with the core action and scope. No redundant or wasted language.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a 5-parameter external API integration tool with no output schema and no annotations, the description covers the primary value proposition but leaves gaps. It should disclose what happens upon completion (success/failure indicators), handling of large sitemaps, or side effects of the IndexNow submission.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, establishing a baseline of 3. The description implies usage of sitemap_url, api_key, and host through the workflow narrative but does not add semantic details, constraints, or format guidance beyond what the schema already provides for the 'engines' and 'limit' parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verbs (Fetch, extract, submit) and clearly identifies the resource (sitemap XML → IndexNow). The 'sitemap' specificity clearly distinguishes this from the sibling 'indexnow_submit' tool which presumably handles individual URLs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage through the workflow (fetch sitemap → submit URLs), but provides no explicit guidance on when to choose this over 'indexnow_submit' for individual URLs, or prerequisites like generating an API key first via 'indexnow_generate_key'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
6 tool updates
v1.0.0- First observed
google_indexing_status - First observed
google_indexing_submit - First observed
indexnow_generate_key - First observed
indexnow_list_engines - First observed
indexnow_submit - First observed
indexnow_submit_sitemap
TDQS
Each tool has a clearly distinct purpose with no ambiguity: two tools handle Google Indexing API (status check and submission), three tools handle IndexNow operations (key generation, engine listing, URL submission), and one handles sitemap-based submission. The separation between Google and IndexNow workflows is particularly clear.
All tools follow a perfect snake_case naming convention with consistent prefixing: 'google_indexing_' for Google tools and 'indexnow_' for IndexNow tools. The verb-noun structure is maintained throughout (e.g., 'submit', 'generate_key', 'list_engines'), creating a highly predictable pattern.
Six tools is an ideal number for this domain, covering both Google Indexing API and IndexNow workflows without bloat. Each tool serves a specific, necessary function in the URL indexing process, and there are no redundant or trivial tools.
The toolset provides complete coverage for URL indexing operations: status checking and submission for Google, plus key management, engine discovery, URL submission, and sitemap processing for IndexNow. There are no obvious gaps—agents can handle the full lifecycle from setup to submission across both major indexing services.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Build and validate IndexNow payloads, check key files, and diff sitemaps into a submission list.
Отправка URL, статусы, Sitemap и SEO-аудит через облачный API Index-Now.ru.
Google index checks with diagnosis, real autocomplete keyword ideas, AI visibility, guest post shelf
Optimize public image URLs via the ShortPixel SPIO API for AI agents
Related MCP Servers
- AlicenseAqualityAmaintenanceMCP server for Google Search Console, URL Inspection & Indexing API — search analytics, sitemap management, and batch indexing132037MIT
- AlicenseAqualityCmaintenanceSEO MCP over Search Console, GA4, PageSpeed, Cloudflare, IndexNow, CrUX, and 7 technical-SEO HTTP tools.70149MIT
- FlicenseAqualityDmaintenanceEnables submitting URLs to the Rapid URL Indexer API, tracking submissions across projects, and auto-detecting new pages from sitemaps.8-
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to perform instant SEO audits, check robots.txt, sitemaps, and AI crawler access for any URL without API keys.MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/sharozdawa/indexnow-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server