LinkDR MCP Agent resources API
Managed-backlink skill, llms.txt index, and per-page markdown negotiation.
Managed-backlink skill, llms.txt index, and per-page markdown negotiation.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/linkdr:linkdr-agent-resources-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
contact:
email: support@linkdr.com
name: LinkDR support
url: https://linkdr.com/contact
description: 'LinkDR is a managed backlink service: real publisher placements priced by Domain Rating (DR), ordered one-time or monthly, fulfilled in 3-4 weeks.
Agents have three doors:
1. Managed backlinks (no auth needed to plan): fetch https://linkdr.com/SKILL.md, plan the DR-tier mix from the budget, then send the user one https://linkdr.com/agent/checkout URL. The user logs in and pays in the browser; the user MCP can also charge a card already saved on the project, after the user confirms the quote.
2. User MCP (any LinkDR account): https://linkdr.com/mcp over Streamable HTTP with OAuth 2.1. Your own projects, orders, outreach progress, live links, and AI answers, plus cache-first keyword SERPs and domain metrics. It can also add a site and its keywords, answer site approvals, quote and order links (a saved card is charged only after the user confirms; otherwise it returns the checkout link), and send feedback. Docs: https://linkdr.com/docs/mcp.
3. Admin MCP (LinkDR admins only): https://linkdr.com/mcp/admin. The operator''s tools: every order and project, publisher outreach, customer emails, guest posts, and research with contacts. Other accounts complete OAuth and receive 403. Docs: https://linkdr.com/docs/admin.
Machine-readable resources: this spec (https://linkdr.com/openapi.json), agent instructions (https://linkdr.com/llms.txt), the checkout skill (https://linkdr.com/SKILL.md), and docs (https://linkdr.com/docs).'
termsOfService: https://linkdr.com/terms
title: LinkDR Agent resources API
version: 1.0.0
servers:
- description: Production
url: https://linkdr.com
tags:
- description: Managed-backlink skill, llms.txt index, and per-page markdown negotiation.
name: Agent resources
paths:
/SKILL.md:
get:
description: 'The LinkDR link-building agent skill (Agent Skills format). Fetch before quoting prices or building checkout URLs. Served as text/markdown by default; send Accept: text/plain for plain text. Complete only if the last line reads END SKILL v.'
operationId: getAgentSkill
responses:
'200':
content:
text/markdown:
schema:
type: string
text/plain:
schema:
type: string
description: Skill file
'406':
description: Accept header matches neither text/markdown nor text/plain
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
summary: Fetch the managed-backlinks agent skill
tags:
- Agent resources
/llms.txt:
get:
description: 'Site map and guidance for AI agents: when to use LinkDR, both integration doors, developer resources, and an index of pages worth fetching.'
operationId: getLlmsTxt
responses:
'200':
content:
text/plain:
schema:
type: string
description: llms.txt content
summary: Fetch the llms.txt agent index
tags:
- Agent resources
/markdown/{path}:
get:
description: Markdown rendering of any public marketing, checkout, or admin docs page (for example /markdown/pricing, /markdown/docs/get-started, or /markdown/docs/admin). Unknown paths return HTTP 404 with recovery links in the body.
operationId: getPageMarkdown
parameters:
- description: Page path without the leading slash, e.g. pricing or docs/get-started.
in: path
name: path
required: true
schema:
type: string
responses:
'200':
content:
text/markdown:
schema:
type: string
description: Markdown representation of the page
'404':
content:
text/markdown:
schema:
type: string
description: No markdown for this path; body lists recovery links
summary: Fetch a page as Markdown
tags:
- Agent resources
components:
schemas:
Error:
description: Structured error returned by all /api and /rpc failures. Agents should read code and hint.
properties:
error:
properties:
code:
description: Stable machine-readable code.
enum:
- BAD_REQUEST
- NOT_FOUND
- METHOD_NOT_ALLOWED
- UNAUTHORIZED
- FORBIDDEN
- RATE_LIMIT_EXCEEDED
- INTERNAL_ERROR
type: string
hint:
description: Resolution hint for the caller.
type: string
message:
description: Human-readable summary.
type: string
status:
description: HTTP status repeated in the body.
type: integer
required:
- code
- message
- status
type: object
type: object
securitySchemes:
McpOAuth:
description: 'OAuth 2.1 authorization-code flow with PKCE (required) for both MCP servers. Authorization server metadata: https://linkdr.com/.well-known/oauth-authorization-server. Dynamic client registration is accepted. Each server is its own protected resource (https://linkdr.com/mcp and https://linkdr.com/mcp/admin), so a token is audience-bound to one of them. The admin server also requires the admin role on the LinkDR account.'
flows:
authorizationCode:
authorizationUrl: /api/auth/oauth2/authorize
refreshUrl: /api/auth/oauth2/token
scopes:
email: Identify the account by email address during sign-in
offline_access: Receive a refresh token so long-running agent sessions stay connected until revoked
openid: Sign in with a LinkDR account
profile: Read the account display name
tokenUrl: /api/auth/oauth2/token
type: oauth2
SessionCookie:
description: Dashboard session cookie (better-auth.session_token) issued by browser sign-in. Endpoints under this scheme serve the logged-in app and its rate limits; there is no header-token alternative yet.
in: cookie
name: better-auth.session_token
type: apiKey