Connect Bulk URL Checker to Claude or ChatGPT

Our MCP server runs at https://mcp.bulkurlchecker.com/mcp and works as a connector in any client that speaks the Model Context Protocol. OAuth 2.1 with dynamic client registration. No API key paste, no environment variables.

Install

Pick the host you use. Each install takes about 30 seconds and walks you through OAuth on first tool call.

Claude

Claude.ai & Desktop

  1. Claude.ai → SettingsConnectors
  2. Click + Add custom connector
  3. Paste: https://mcp.bulkurlchecker.com/mcp
  4. Save → first tool call prompts you to sign in and click Allow
ChatGPT

ChatGPT Apps (Plus / Pro)

  1. ChatGPT → SettingsApps & Connectors
  2. Advanced → toggle Developer Mode
  3. Click Create and paste https://mcp.bulkurlchecker.com/mcp
  4. Sign in and click Allow when prompted
Claude Code

Claude Code & Cursor

  1. From your shell, run:
  2. claude mcp add --transport http url-checker https://mcp.bulkurlchecker.com/mcp
  3. Run any tool and complete the OAuth prompt that opens in your browser
Other

Custom MCP clients

  1. Point any MCP client at https://mcp.bulkurlchecker.com/mcp with transport streamable-http
  2. The OAuth metadata endpoint at https://mcp.bulkurlchecker.com/mcp/.well-known/oauth-authorization-server handles dynamic client registration (RFC 7591) automatically
  3. Works with the OpenAI Responses API tools=[{"type":"mcp"}], LangChain MCP adapter, and any custom client

Tools the connector exposes

Four tools, fully annotated per the MCP spec (readOnlyHint, destructiveHint, idempotentHint, openWorldHint) so the host can show you accurate "this will modify state" warnings.

submit_urls writes

Submit a list of URLs to be checked. Returns a job_id. For ~200 URLs it waits inline (up to 60s) and returns the results directly; larger jobs return early so the agent can poll. Costs 1 credit per URL.

get_job_status read-only

Get the current status (pending / processing / paused / completed / failed / cancelled) and progress (URLs checked, URLs remaining) for a job.

get_job_results read-only

Fetch paginated results for a job. Each result has the URL, HTTP status code, response time in ms, redirect chain, and an error reason if the check failed.

get_usage read-only

Return the current credit balance for the authenticated API key. Useful before submitting a large job.

How auth works

We use OAuth 2.1 with PKCE and dynamic client registration (RFC 7591). What that means in practice:

The host (Claude.ai, ChatGPT, etc.) registers itself with our server the first time you connect — you don't have to manage client IDs or secrets. When you grant access, you sign in with your Bulk URL Checker account, click Allow, and the host receives a token bound to your account. You can revoke that token anytime from your dashboard.

Note for security teams: the host never sees your password — it goes directly to our auth provider (Clerk). Tool calls arrive with a bearer token; we resolve that to your user, charge against your credit balance, and return only your own data.

Example prompts

Once installed, just ask. Here are a few patterns that work well:

Check whether these 50 backlinks are still live and tell me which ones redirect or 404.

Best for SEO audits. The agent will call submit_urls, wait for completion, then summarize the failures with status codes.

I just had Claude write a research summary with 30 citations. Verify each URL works.

AI content QA before publishing. Catches hallucinated citations and rotted links in one pass.

Submit these 5,000 URLs from my docs site. Return when 80% are done.

Larger batches get a job_id and the agent polls get_job_status until threshold met, then fetches paginated results.

We use analytics cookies to improve your experience. Opt out anytime in Cookie Settings. Privacy Policy

Settings