UNPKG

dataforseo-mcp-server

Version:

A Model Context Protocol (MCP) server for the DataForSEO API, enabling modular and extensible integration of DataForSEO endpoints with support for both HTTP and SSE transports.

50 lines (49 loc) 1.84 kB
import { z } from 'zod'; import { BaseTool } from '../../base.tool.js'; export class BacklinksBulkBacklinksTool extends BaseTool { client; constructor(client) { super(client); this.client = client; } getName() { return 'backlinks_bulk_backlinks'; } getDescription() { return `This endpoint will provide you with the number of backlinks pointing to domains, subdomains, and pages specified in the targets array. The returned numbers correspond to all live backlinks, that is, total number of referring links with all attributes (e.g., nofollow, noreferrer, ugc, sponsored etc) that were found during the latest check. Note that if you indicate a domain as a target, you will get results for the root domain (domain with all of its subdomains), e.g. dataforseo.com and app.dataforseo.com`; } getParams() { return { targets: z.array(z.string()).describe(`domains, subdomains or webpages to get rank for required field you can set up to 1000 domains, subdomains or webpages the domain or subdomain should be specified without https:// and www. the page should be specified with absolute URL (including http:// or https://) example: "targets": [ "forbes.com", "cnn.com", "bbc.com", "yelp.com", "https://www.apple.com/iphone/", "https://ahrefs.com/blog/", "ibm.com", "https://variety.com/", "https://stackoverflow.com/", "www.trustpilot.com" ]`) }; } async handle(params) { try { const response = await this.client.makeRequest('/v3/backlinks/bulk_backlinks/live', 'POST', [{ targets: params.targets }]); return this.validateAndFormatResponse(response); } catch (error) { return this.formatErrorResponse(error); } } }