1. The server
| URL | https://indexerpal.com/mcp |
| Transport | Streamable HTTP. Stateless: JSON responses, no session to keep. |
| Protocol versions | 2025-11-25, 2025-06-18, 2025-03-26 |
| Sign-in | OAuth 2.1: the app opens an IndexerPal page where you log in and allow access. Or an API key as a bearer token. |
| Server card | /.well-known/mcp/server-card.json |
Indexing through MCP needs an account that has bought credits once. Before that, the assistant can read your account, show prices and give you a checkout link.
2. Connect your app
Claude
Add a custom connector with the URL https://indexerpal.com/mcp, then log in to IndexerPal and allow access when asked. In Claude Code:
claude mcp add --transport http indexerpal https://indexerpal.com/mcp
ChatGPT
Add https://indexerpal.com/mcp as a custom connector (MCP server) and sign in when ChatGPT asks.
Cursor
In ~/.cursor/mcp.json (or .cursor/mcp.json in a project):
{
"mcpServers": {
"indexerpal": { "url": "https://indexerpal.com/mcp" }
}
}
VS Code
In .vscode/mcp.json:
{
"servers": {
"indexerpal": { "type": "http", "url": "https://indexerpal.com/mcp" }
}
}
Any client, with an API key
Clients that can't do OAuth can send a key from your dashboard (API & MCP) as a header:
{
"mcpServers": {
"indexerpal": {
"url": "https://indexerpal.com/mcp",
"headers": { "Authorization": "Bearer ipk_YOUR_KEY" }
}
}
}3. Tools
The tools are the same operations as the REST API, with the same parameters and answers (as structuredContent, with an outputSchema for each).
| Tool | What it does | Scope | Effect |
|---|---|---|---|
get_account | Get account | any | reads |
get_pricing | Get pricing | any | reads |
estimate_cost | Estimate cost | any | reads |
submit_urls | Index URLs | index | spends credits |
submit_sitemap | Index a sitemap | index | spends credits |
add_urls | Add URLs to a project | index | changes data |
check_urls | Check if URLs are indexed | index | spends credits |
list_projects | List projects | read | reads |
get_project | Get project | read | reads |
list_links | List a project's URLs | read | reads |
cancel_pending_links | Cancel unsent URLs | index | changes data |
rename_project | Rename project | index | changes data |
read_sitemap | Read a sitemap | index | reads |
buy_credits | Buy credits | purchase | creates a payment link |
get_order | Get order | read | reads |
list_orders | List orders | read | reads |
get_credit_history | Credit history | read | reads |
Things to try: "Index these three blog posts with instant indexing", "Which of my backlinks from last month aren't indexed yet?", "Index the new pages in my sitemap", "Buy the Pro pack".
4. Resources and prompts
| Resource | Content |
|---|---|
indexerpal://guide | How to use the tools well: workflow, costs, statuses, limits (Markdown). |
indexerpal://pricing | Packs and costs (JSON). |
indexerpal://projects/{project_id} | One project with live counts (JSON). |
| Prompt | Arguments |
|---|---|
index_urls | urls, optional mode |
audit_backlinks | urls |
index_sitemap | sitemap_url |
5. Limits and errors
Each MCP request counts against the same quotas as the API: 120 requests a minute per connected app, 20,000 a day per account (see quotas). When a tool can't do what was asked (no credits, a bad URL list), the result is marked isError and its text is the same JSON error as the API, so the assistant can tell you what to do next.
6. Troubleshooting
- The app says it can't connect. Check the URL is exactly
https://indexerpal.com/mcpand that the app supports remote (HTTP) MCP servers. - 401 after a while. Access tokens last an hour; your app refreshes them. If you disconnected the app in the dashboard, connect it again.
- "payment_required". Buy any credit pack once; indexing through apps unlocks with the first purchase.
- Disconnect an app. Dashboard, API & MCP, Connected apps and agents: Disconnect. Its tokens stop working at once.