Link Finder MCP
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Link Finder MCPSearch for backlink opportunities for 'digital marketing tools'"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Link Finder MCP
An MCP server for the Link Finder API — find backlink opportunities, analyze competitors, discover similar domains with AI embeddings, and manage prospecting projects directly from Claude, ChatGPT, Cursor, or any MCP client.
Secrets are provided only through environment variables, and the server is host-agnostic: run it locally over stdio, or deploy it anywhere (Render or any VM) with a bearer-token-protected HTTP/SSE endpoint.
Features
All Link Finder API v2 endpoints are exposed as tools:
Tool | Endpoint | Plan | What it does |
|
| Booster | Plan, remaining credits, available features |
|
| Booster | Supported netlinking platforms |
|
| Booster | Countries/locations for keyword search |
|
| Booster | Find opportunities from keywords (SERP analysis) |
|
| Booster | A competitor's available referring domains |
|
| Booster | AI prospecting with relevance scoring |
|
| Booster | AI-embedding lookalike domains (the gem finder) |
|
| Booster | Create a project |
|
| Booster | List projects with counts |
|
| Booster | Favorites in a project with full metrics |
|
| Booster | Add / remove a domain from a project |
|
| Booster | Annotate a standout favorite |
|
| API | Check one domain across all platforms |
|
| API | Check up to 50,000 domains at once |
| local | — | Read locally saved search history |
Plus a guided prompt backlink_workflow that runs the step-by-step interview and prospecting flow.
The server also follows the API's best practices: every search result is saved locally to a data/ folder and logged in data/searchHistory.json so agents can avoid duplicate, credit-wasting searches.
Related MCP server: PaidSync (Ads analysis & Management)
Requirements
Python 3.10+
A Link Finder API key — get it in your account at https://app.link-finder.net/account/ (Booster plan or higher;
checkDomainandbulkneed the API plan)
Installation
git clone https://github.com/<you>/link-finder-mcp.git
cd link-finder-mcp
python -m venv .venv && source .venv/bin/activate # optional but recommended
pip install -r requirements.txtCopy the example environment file and fill in your key:
cp .env.example .env
# then edit .env and set LINK_FINDER_API_KEYNo credentials in code. The API key is read only from
LINK_FINDER_API_KEYand is never accepted as a tool argument, so it can't leak through the model context.
Configuration
All configuration is via environment variables:
Variable | Required | Default | Description |
| yes | — | Your Link Finder API key |
| no |
|
|
| hosted only | — | Shared secret clients send as |
| no |
| Port to bind in hosted mode (Render/Railway/Fly inject this) |
| no |
| Bind address in hosted mode |
| no |
| Where results + history are saved (empty = disable) |
| no |
| Override the API base URL |
| no |
| HTTP timeout in seconds |
| no | (empty) | Comma-separated Host allowlist for DNS-rebinding protection. Empty = disabled (works behind any proxy). Supports a |
| no | (empty) | Comma-separated Origin allowlist (used with the above). |
Running locally (stdio)
export PYTHONPATH=src
python -m link_finder_mcp.serverOr debug interactively with the MCP Inspector:
PYTHONPATH=src mcp dev src/link_finder_mcp/server.pyUse with Claude Desktop
Edit your Claude config:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"link-finder": {
"command": "python",
"args": ["-m", "link_finder_mcp.server"],
"env": {
"PYTHONPATH": "/absolute/path/to/link-finder-mcp/src",
"MCP_TRANSPORT": "stdio",
"LINK_FINDER_API_KEY": "your_link_finder_api_key_here",
"LINK_FINDER_DATA_DIR": "/absolute/path/to/link-finder-mcp/data"
}
}
}
}Restart Claude Desktop. You'll see the Link Finder tools under the tools (hammer) icon. Try:
"Check my Link Finder credits, then find French backlink opportunities for the keywords
assurance auto;comparateur assurancewith DR 20+ and 500+ traffic. Save the best ones to a new project called Assurance Q3."
Claude will chain get_account → keyword_search → create_project → add_favorite, then suggest similar_domains on the top matches.
Tip: in Claude Desktop you can also attach the
backlink_workflowprompt (the "+" / prompts menu) to launch the full guided interview.
Use with ChatGPT
ChatGPT supports remote MCP servers (Developer mode / custom connectors and the Responses API tools of type mcp). For that you need the server reachable over HTTPS with a bearer token — see Deploy on Render.
Option A — ChatGPT Developer Mode / Connectors (UI)
Deploy the server (e.g. on Render) with
MCP_TRANSPORT=sseand a strongMCP_BEARER_TOKEN.In ChatGPT: Settings → Connectors → Advanced → Developer mode, then Create a connector.
Set the server URL to your deployment's SSE endpoint, e.g.
https://your-app.onrender.com/sse.Add an
Authorizationheader:Bearer <your MCP_BEARER_TOKEN>.Save, then enable the connector in a chat and ask it to find backlinks.
Option B — OpenAI Responses API (programmatic)
from openai import OpenAI
client = OpenAI()
resp = client.responses.create(
model="gpt-4.1",
tools=[
{
"type": "mcp",
"server_label": "link-finder",
"server_url": "https://your-app.onrender.com/sse",
"headers": {"Authorization": "Bearer YOUR_MCP_BEARER_TOKEN"},
"require_approval": "never",
}
],
input="Use Link Finder to find Spanish (language 2724) backlink "
"opportunities for 'hosting wordpress' with TF 15+ and report a table.",
)
print(resp.output_text)Use with Cursor
Add to ~/.cursor/mcp.json (or the project .cursor/mcp.json):
{
"mcpServers": {
"link-finder": {
"command": "python",
"args": ["-m", "link_finder_mcp.server"],
"env": {
"PYTHONPATH": "/absolute/path/to/link-finder-mcp/src",
"LINK_FINDER_API_KEY": "your_link_finder_api_key_here"
}
}
}
}Deploy on Render (or any VM)
The server is host-agnostic. In hosted mode it binds 0.0.0.0:$PORT and protects the MCP endpoints with a bearer token.
A ready-made render.yaml is included:
services:
- type: web
name: link-finder-mcp
runtime: python
buildCommand: pip install -r requirements.txt
startCommand: python -m link_finder_mcp.server
envVars:
- key: PYTHONPATH
value: src
- key: MCP_TRANSPORT
value: sse
- key: LINK_FINDER_API_KEY
sync: false
- key: MCP_BEARER_TOKEN
sync: falsePush this repo to GitHub.
In Render: New → Blueprint, point it at the repo.
Set the two secret env vars (
LINK_FINDER_API_KEY,MCP_BEARER_TOKEN) in the dashboard.Deploy. Your SSE endpoint will be
https://<service>.onrender.com/sse.
The same works on any VM / PaaS — just set the env vars and run python -m link_finder_mcp.server. Use MCP_TRANSPORT=http instead of sse for the Streamable HTTP transport.
Note on saved data: on ephemeral hosts (like Render's default disk) the
data/folder is not persistent. Mount a persistent disk, or setLINK_FINDER_DATA_DIRto a mounted path, if you want the search history to survive restarts. Local (stdio) usage persists normally.
Troubleshooting
SSE error: Non-200 status code (421)/Invalid Host header— this is DNS-rebinding protection rejecting the proxy's public hostname. The server disables host checking by default (the bearer token already guards it), so a fresh deploy works out of the box. If you setMCP_ALLOWED_HOSTS, make sure it includes your public host, e.g.your-app.onrender.com.GET / → 404/POST /sse → 405in the logs — harmless. The SSE transport serves a stream onGET /sseand accepts messages onPOST /messages/; probes hitting other paths/methods are expected. Point your client at the/ssepath.
How credits work
Credits are shared across the web app, browser extension, and API.
keyword_searchcosts 1keywords_searchcredit per keyword;competitor_analysis1 per request;ai_search1 per request;similar_domains1 per domain (or per project search).Credits are only consumed when results are found.
Always call
get_accountfirst to check remaining credits and which features your plan unlocks.
Reading results
Each domain result includes fields you can filter and sort on: title, domain, dr (Ahrefs), tf/cf (Majestic), rd, traffic, ttf0 (topic), ai_lang, gg_news, and per-platform prices (-2 = not found, -1 = price unavailable, >0 = price in the chosen currency). Each platform also has a _url field with the direct purchase link, and best_price_platform names the cheapest one.
License
MIT — see LICENSE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/webloom-agency/link-finder-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server