Skip to main content
Glama

AIsa SEO & AI Visibility

Competitors

post_dataforseo_backlinks_competitors_live
Destructive

‌‌ This endpoint will provide you with a list of competitors that share some part of the backlink profile with a target website, along with a number of backlink intersections and the rank of every competing website.

Usage-based billing; Default request estimate: $0.0276 USD (not a fixed price). Account-specific pricing and final settlement may differ.

Input Schema

NameRequiredDescriptionDefault
bodyNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / $defs
      Added value: +{
      +  "Provider0A3E90081762_AisaDataforseoFilterJsonValue": {
      +    "anyOf": [
      +      {
      +        "type": "string"
      +      },
      +      {
      +        "type": "number"
      +      },
      +      {
      +        "type": "boolean"
      +      },
      +      {
      +        "additionalProperties": {
      +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
      +        },
      +        "type": [
      +          "object",
      +          "null"
      +        ]
      +      },
      +      {
      +        "items": {
      +          "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
      +        },
      +        "type": "array"
      +      }
      +    ],
      +    "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
      +  }
      +}
    • addedInput schema / properties / body / items / anyOf
      Added value: +[
      +  {
      +    "properties": {
      +      "exclude_internal_backlinks": {
      +        "description": "<em>indicates if internal backlinks from subdomains to the <code>target</code> will be excluded from the results</em><br>optional field<br>if set to <code>true</code>, the results will not include data on internal backlinks from subdomains of the same domain as <code>target</code><br>if set to <code>false</code>, internal links will be included in the results<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "exclude_large_domains": {
      +        "description": "<em>indicates whether large domain will appear in results</em><br>optional field<br>if set to <code>true</code>, the results from the large domain (google.com, amazon.com, etc.) will be omitted;<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "filters": {
      +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>like</code>, <code>not_like</code>, <code>ilike</code>, <code>not_ilike</code>, <code>match</code>, <code>not_match</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code> to match any string of zero or more characters<br>example:<br><code>[\"rank\",\"&gt;\",\"100\"]</code><p><code>[[\"target\",\"like\",\"%forbes%\"],<br>\"and\",<br>[[\"rank\",\"&gt;\",\"100\"],\"or\",[\"intersections\",\"&gt;\",\"5\"]]]</code><p>The full list of possible filters is available <a href=\"/v3/backlinks/filters/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">here.</a>",
      +        "items": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "number"
      +            },
      +            {
      +              "type": "boolean"
      +            },
      +            {
      +              "additionalProperties": {
      +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
      +              },
      +              "type": [
      +                "object",
      +                "null"
      +              ]
      +            },
      +            {
      +              "items": {
      +                "$ref": "#/$defs/Provider0A3E90081762_AisaDataforseoFilterJsonValue"
      +              },
      +              "type": "array"
      +            }
      +          ],
      +          "description": "JSON representation of filter values and nested expressions. Field names, operators, condition counts and operand compatibility remain provider-validated as documented for each endpoint; this is not a complete filter-language validator."
      +        },
      +        "type": [
      +          "array",
      +          "null"
      +        ]
      +      },
      +      "limit": {
      +        "description": "<em>the maximum number of returned domains</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
      +        "type": [
      +          "integer",
      +          "null"
      +        ]
      +      },
      +      "main_domain": {
      +        "description": "<em>indicates if only main domain of the <code>target</code> will be included in the search</em><br>optional field<br>if set to <code>true</code>, only the main domain will be included in search;<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "offset": {
      +        "description": "<em>offset in the results array of returned domains</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten domains in the results array will be omitted and the data will be provided for the successive pages",
      +        "type": [
      +          "integer",
      +          "null"
      +        ]
      +      },
      +      "order_by": {
      +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"rank,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"intersections,desc\",\"rank,asc\"]</code>",
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": [
      +          "array",
      +          "null"
      +        ]
      +      },
      +      "rank_scale": {
      +        "description": "<em>defines the scale used for calculating and displaying the <code>rank</code>, <code>domain_from_rank</code>, and <code>page_from_rank</code> values</em><br>optional field<p>you can use this parameter to choose whether rank values are presented on a 0–100 or 0–1000 scale<p>possible values:<br><code>one_hundred</code> — rank values are displayed on a 0–100 scale<br><code>one_thousand</code> — rank values are displayed on a 0–1000 scale<p>default value: <code>one_thousand</code><p>learn more about how this parameter works and how ranking metrics are calculated in <a href=\"https://dataforseo.com/help-center/what_is_rank_in_backlinks_api#rank_scale\">this Help Center article</a>",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "tag": {
      +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "target": {
      +        "description": "<em>domain, subdomain or webpage to get competitor domains for</em><br><strong>required field</strong><br>a domain or a subdomain should be specified without <code>https://</code> and <code>www.</code><br>a page should be specified with absolute URL (including <code>http://</code> or <code>https://</code>)",
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  }
      +]
    • removedInput schema / properties / body / items / oneOf
      Removed value: -[
      -  {
      -    "example": [
      -      {
      -        "filters": [
      -          "rank",
      -          ">",
      -          100
      -        ],
      -        "limit": 5,
      -        "order_by": [
      -          "rank,desc"
      -        ],
      -        "target": "dataforseo.com"
      -      }
      -    ],
      -    "properties": {
      -      "exclude_internal_backlinks": {
      -        "description": "<em>indicates if internal backlinks from subdomains to the <code>target</code> will be excluded from the results</em><br>optional field<br>if set to <code>true</code>, the results will not include data on internal backlinks from subdomains of the same domain as <code>target</code><br>if set to <code>false</code>, internal links will be included in the results<br>default value: <code>true</code>",
      -        "type": [
      -          "boolean",
      -          "null"
      -        ]
      -      },
      -      "exclude_large_domains": {
      -        "description": "<em>indicates whether large domain will appear in results</em><br>optional field<br>if set to <code>true</code>, the results from the large domain (google.com, amazon.com, etc.) will be omitted;<br>default value: <code>true</code>",
      -        "type": [
      -          "boolean",
      -          "null"
      -        ]
      -      },
      -      "filters": {
      -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>like</code>, <code>not_like</code>, <code>ilike</code>, <code>not_ilike</code>, <code>match</code>, <code>not_match</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code> to match any string of zero or more characters<br>example:<br><code>[\"rank\",\"&gt;\",\"100\"]</code><p><code>[[\"target\",\"like\",\"%forbes%\"],<br>\"and\",<br>[[\"rank\",\"&gt;\",\"100\"],\"or\",[\"intersections\",\"&gt;\",\"5\"]]]</code><p>The full list of possible filters is available <a href=\"/v3/backlinks/filters/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">here.</a>",
      -        "items": {
      -          "type": [
      -            "object",
      -            "null"
      -          ]
      -        },
      -        "type": [
      -          "array",
      -          "null"
      -        ]
      -      },
      -      "limit": {
      -        "description": "<em>the maximum number of returned domains</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
      -        "type": [
      -          "integer",
      -          "null"
      -        ]
      -      },
      -      "main_domain": {
      -        "description": "<em>indicates if only main domain of the <code>target</code> will be included in the search</em><br>optional field<br>if set to <code>true</code>, only the main domain will be included in search;<br>default value: <code>true</code>",
      -        "type": [
      -          "boolean",
      -          "null"
      -        ]
      -      },
      -      "offset": {
      -        "description": "<em>offset in the results array of returned domains</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten domains in the results array will be omitted and the data will be provided for the successive pages",
      -        "type": [
      -          "integer",
      -          "null"
      -        ]
      -      },
      -      "order_by": {
      -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"rank,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"intersections,desc\",\"rank,asc\"]</code>",
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": [
      -          "array",
      -          "null"
      -        ]
      -      },
      -      "rank_scale": {
      -        "description": "<em>defines the scale used for calculating and displaying the <code>rank</code>, <code>domain_from_rank</code>, and <code>page_from_rank</code> values</em><br>optional field<p>you can use this parameter to choose whether rank values are presented on a 0–100 or 0–1000 scale<p>possible values:<br><code>one_hundred</code> — rank values are displayed on a 0–100 scale<br><code>one_thousand</code> — rank values are displayed on a 0–1000 scale<p>default value: <code>one_thousand</code><p>learn more about how this parameter works and how ranking metrics are calculated in <a href=\"https://dataforseo.com/help-center/what_is_rank_in_backlinks_api#rank_scale\">this Help Center article</a>",
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "tag": {
      -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "target": {
      -        "description": "<em>domain, subdomain or webpage to get competitor domains for</em><br><strong>required field</strong><br>a domain or a subdomain should be specified without <code>https://</code> and <code>www.</code><br>a page should be specified with absolute URL (including <code>http://</code> or <code>https://</code>)",
      -        "type": "string"
      -      }
      -    },
      -    "type": "object"
      -  }
      -]
  2. Changed2 schema fields changed
    • removedInput schema / properties / body / items / anyOf
      Removed value: -[
      -  {
      -    "example": [
      -      {
      -        "filters": [
      -          "rank",
      -          ">",
      -          100
      -        ],
      -        "limit": 5,
      -        "order_by": [
      -          "rank,desc"
      -        ],
      -        "target": "dataforseo.com"
      -      }
      -    ],
      -    "properties": {
      -      "exclude_internal_backlinks": {
      -        "description": "<em>indicates if internal backlinks from subdomains to the <code>target</code> will be excluded from the results</em><br>optional field<br>if set to <code>true</code>, the results will not include data on internal backlinks from subdomains of the same domain as <code>target</code><br>if set to <code>false</code>, internal links will be included in the results<br>default value: <code>true</code>",
      -        "type": [
      -          "boolean",
      -          "null"
      -        ]
      -      },
      -      "exclude_large_domains": {
      -        "description": "<em>indicates whether large domain will appear in results</em><br>optional field<br>if set to <code>true</code>, the results from the large domain (google.com, amazon.com, etc.) will be omitted;<br>default value: <code>true</code>",
      -        "type": [
      -          "boolean",
      -          "null"
      -        ]
      -      },
      -      "filters": {
      -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>like</code>, <code>not_like</code>, <code>ilike</code>, <code>not_ilike</code>, <code>match</code>, <code>not_match</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code> to match any string of zero or more characters<br>example:<br><code>[\"rank\",\"&gt;\",\"100\"]</code><p><code>[[\"target\",\"like\",\"%forbes%\"],<br>\"and\",<br>[[\"rank\",\"&gt;\",\"100\"],\"or\",[\"intersections\",\"&gt;\",\"5\"]]]</code><p>The full list of possible filters is available <a href=\"/v3/backlinks/filters/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">here.</a>",
      -        "items": {
      -          "type": [
      -            "object",
      -            "null"
      -          ]
      -        },
      -        "type": [
      -          "array",
      -          "null"
      -        ]
      -      },
      -      "limit": {
      -        "description": "<em>the maximum number of returned domains</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
      -        "type": [
      -          "integer",
      -          "null"
      -        ]
      -      },
      -      "main_domain": {
      -        "description": "<em>indicates if only main domain of the <code>target</code> will be included in the search</em><br>optional field<br>if set to <code>true</code>, only the main domain will be included in search;<br>default value: <code>true</code>",
      -        "type": [
      -          "boolean",
      -          "null"
      -        ]
      -      },
      -      "offset": {
      -        "description": "<em>offset in the results array of returned domains</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten domains in the results array will be omitted and the data will be provided for the successive pages",
      -        "type": [
      -          "integer",
      -          "null"
      -        ]
      -      },
      -      "order_by": {
      -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"rank,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"intersections,desc\",\"rank,asc\"]</code>",
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": [
      -          "array",
      -          "null"
      -        ]
      -      },
      -      "rank_scale": {
      -        "description": "<em>defines the scale used for calculating and displaying the <code>rank</code>, <code>domain_from_rank</code>, and <code>page_from_rank</code> values</em><br>optional field<p>you can use this parameter to choose whether rank values are presented on a 0–100 or 0–1000 scale<p>possible values:<br><code>one_hundred</code> — rank values are displayed on a 0–100 scale<br><code>one_thousand</code> — rank values are displayed on a 0–1000 scale<p>default value: <code>one_thousand</code><p>learn more about how this parameter works and how ranking metrics are calculated in <a href=\"https://dataforseo.com/help-center/what_is_rank_in_backlinks_api#rank_scale\">this Help Center article</a>",
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "tag": {
      -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "target": {
      -        "description": "<em>domain, subdomain or webpage to get competitor domains for</em><br><strong>required field</strong><br>a domain or a subdomain should be specified without <code>https://</code> and <code>www.</code><br>a page should be specified with absolute URL (including <code>http://</code> or <code>https://</code>)",
      -        "type": "string"
      -      }
      -    },
      -    "type": "object"
      -  }
      -]
    • addedInput schema / properties / body / items / oneOf
      Added value: +[
      +  {
      +    "example": [
      +      {
      +        "filters": [
      +          "rank",
      +          ">",
      +          100
      +        ],
      +        "limit": 5,
      +        "order_by": [
      +          "rank,desc"
      +        ],
      +        "target": "dataforseo.com"
      +      }
      +    ],
      +    "properties": {
      +      "exclude_internal_backlinks": {
      +        "description": "<em>indicates if internal backlinks from subdomains to the <code>target</code> will be excluded from the results</em><br>optional field<br>if set to <code>true</code>, the results will not include data on internal backlinks from subdomains of the same domain as <code>target</code><br>if set to <code>false</code>, internal links will be included in the results<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "exclude_large_domains": {
      +        "description": "<em>indicates whether large domain will appear in results</em><br>optional field<br>if set to <code>true</code>, the results from the large domain (google.com, amazon.com, etc.) will be omitted;<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "filters": {
      +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>like</code>, <code>not_like</code>, <code>ilike</code>, <code>not_ilike</code>, <code>match</code>, <code>not_match</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code> to match any string of zero or more characters<br>example:<br><code>[\"rank\",\"&gt;\",\"100\"]</code><p><code>[[\"target\",\"like\",\"%forbes%\"],<br>\"and\",<br>[[\"rank\",\"&gt;\",\"100\"],\"or\",[\"intersections\",\"&gt;\",\"5\"]]]</code><p>The full list of possible filters is available <a href=\"/v3/backlinks/filters/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">here.</a>",
      +        "items": {
      +          "type": [
      +            "object",
      +            "null"
      +          ]
      +        },
      +        "type": [
      +          "array",
      +          "null"
      +        ]
      +      },
      +      "limit": {
      +        "description": "<em>the maximum number of returned domains</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
      +        "type": [
      +          "integer",
      +          "null"
      +        ]
      +      },
      +      "main_domain": {
      +        "description": "<em>indicates if only main domain of the <code>target</code> will be included in the search</em><br>optional field<br>if set to <code>true</code>, only the main domain will be included in search;<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "offset": {
      +        "description": "<em>offset in the results array of returned domains</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten domains in the results array will be omitted and the data will be provided for the successive pages",
      +        "type": [
      +          "integer",
      +          "null"
      +        ]
      +      },
      +      "order_by": {
      +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"rank,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"intersections,desc\",\"rank,asc\"]</code>",
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": [
      +          "array",
      +          "null"
      +        ]
      +      },
      +      "rank_scale": {
      +        "description": "<em>defines the scale used for calculating and displaying the <code>rank</code>, <code>domain_from_rank</code>, and <code>page_from_rank</code> values</em><br>optional field<p>you can use this parameter to choose whether rank values are presented on a 0–100 or 0–1000 scale<p>possible values:<br><code>one_hundred</code> — rank values are displayed on a 0–100 scale<br><code>one_thousand</code> — rank values are displayed on a 0–1000 scale<p>default value: <code>one_thousand</code><p>learn more about how this parameter works and how ranking metrics are calculated in <a href=\"https://dataforseo.com/help-center/what_is_rank_in_backlinks_api#rank_scale\">this Help Center article</a>",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "tag": {
      +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "target": {
      +        "description": "<em>domain, subdomain or webpage to get competitor domains for</em><br><strong>required field</strong><br>a domain or a subdomain should be specified without <code>https://</code> and <code>www.</code><br>a page should be specified with absolute URL (including <code>http://</code> or <code>https://</code>)",
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  }
      +]
  3. Changed7 schema fields changed
    • addedInput schema / properties / body / example
      Added value: +[
      +  {
      +    "filters": [
      +      "rank",
      +      ">",
      +      100
      +    ],
      +    "limit": 5,
      +    "order_by": [
      +      "rank,desc"
      +    ],
      +    "target": "dataforseo.com"
      +  }
      +]
    • addedInput schema / properties / body / items / anyOf
      Added value: +[
      +  {
      +    "example": [
      +      {
      +        "filters": [
      +          "rank",
      +          ">",
      +          100
      +        ],
      +        "limit": 5,
      +        "order_by": [
      +          "rank,desc"
      +        ],
      +        "target": "dataforseo.com"
      +      }
      +    ],
      +    "properties": {
      +      "exclude_internal_backlinks": {
      +        "description": "<em>indicates if internal backlinks from subdomains to the <code>target</code> will be excluded from the results</em><br>optional field<br>if set to <code>true</code>, the results will not include data on internal backlinks from subdomains of the same domain as <code>target</code><br>if set to <code>false</code>, internal links will be included in the results<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "exclude_large_domains": {
      +        "description": "<em>indicates whether large domain will appear in results</em><br>optional field<br>if set to <code>true</code>, the results from the large domain (google.com, amazon.com, etc.) will be omitted;<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "filters": {
      +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>like</code>, <code>not_like</code>, <code>ilike</code>, <code>not_ilike</code>, <code>match</code>, <code>not_match</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code> to match any string of zero or more characters<br>example:<br><code>[\"rank\",\"&gt;\",\"100\"]</code><p><code>[[\"target\",\"like\",\"%forbes%\"],<br>\"and\",<br>[[\"rank\",\"&gt;\",\"100\"],\"or\",[\"intersections\",\"&gt;\",\"5\"]]]</code><p>The full list of possible filters is available <a href=\"/v3/backlinks/filters/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">here.</a>",
      +        "items": {
      +          "type": [
      +            "object",
      +            "null"
      +          ]
      +        },
      +        "type": [
      +          "array",
      +          "null"
      +        ]
      +      },
      +      "limit": {
      +        "description": "<em>the maximum number of returned domains</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
      +        "type": [
      +          "integer",
      +          "null"
      +        ]
      +      },
      +      "main_domain": {
      +        "description": "<em>indicates if only main domain of the <code>target</code> will be included in the search</em><br>optional field<br>if set to <code>true</code>, only the main domain will be included in search;<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "offset": {
      +        "description": "<em>offset in the results array of returned domains</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten domains in the results array will be omitted and the data will be provided for the successive pages",
      +        "type": [
      +          "integer",
      +          "null"
      +        ]
      +      },
      +      "order_by": {
      +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"rank,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"intersections,desc\",\"rank,asc\"]</code>",
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": [
      +          "array",
      +          "null"
      +        ]
      +      },
      +      "rank_scale": {
      +        "description": "<em>defines the scale used for calculating and displaying the <code>rank</code>, <code>domain_from_rank</code>, and <code>page_from_rank</code> values</em><br>optional field<p>you can use this parameter to choose whether rank values are presented on a 0–100 or 0–1000 scale<p>possible values:<br><code>one_hundred</code> — rank values are displayed on a 0–100 scale<br><code>one_thousand</code> — rank values are displayed on a 0–1000 scale<p>default value: <code>one_thousand</code><p>learn more about how this parameter works and how ranking metrics are calculated in <a href=\"https://dataforseo.com/help-center/what_is_rank_in_backlinks_api#rank_scale\">this Help Center article</a>",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "tag": {
      +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "target": {
      +        "description": "<em>domain, subdomain or webpage to get competitor domains for</em><br><strong>required field</strong><br>a domain or a subdomain should be specified without <code>https://</code> and <code>www.</code><br>a page should be specified with absolute URL (including <code>http://</code> or <code>https://</code>)",
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  }
      +]
    • removedInput schema / properties / body / items / properties
      Removed value: -{
      -  "exclude_internal_backlinks": {
      -    "description": "indicates if internal backlinks from subdomains to the target will be excluded from the results optional field if set to true, the results will not include data on internal backlinks from subdomains of the same domain as target if set to false, internal links will be included in the results default value: true",
      -    "type": "boolean"
      -  },
      -  "exclude_large_domains": {
      -    "description": "indicates whether large domain will appear in results optional field if set to true, the results from the large domain (google.com, amazon.com, etc.) will be omitted; default value: true",
      -    "type": "boolean"
      -  },
      -  "filters": {
      -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, =, , in, not_in, like, not_like, ilike, not_ilike, match, not_match you can use the % operator with like and not_like to match any string of zero or more characters example: [\"rank\",\">\",\"100\"] [[\"target\",\"like\",\"%forbes%\"], \"and\", [[\"rank\",\">\",\"100\"],\"or\",[\"intersections\",\">\",\"5\"]]] The full list of possible filters is available here.",
      -    "items": {},
      -    "type": "array"
      -  },
      -  "limit": {
      -    "description": "the maximum number of returned domains optional field default value: 100 maximum value: 1000",
      -    "type": "integer"
      -  },
      -  "main_domain": {
      -    "description": "indicates if only main domain of the target will be included in the search optional field if set to true, only the main domain will be included in search; default value: true",
      -    "type": "boolean"
      -  },
      -  "offset": {
      -    "description": "offset in the results array of returned domains optional field default value: 0 if you specify the 10 value, the first ten domains in the results array will be omitted and the data will be provided for the successive pages",
      -    "type": "integer"
      -  },
      -  "order_by": {
      -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"rank,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"intersections,desc\",\"rank,asc\"]",
      -    "items": {
      -      "type": "string"
      -    },
      -    "type": "array"
      -  },
      -  "rank_scale": {
      -    "description": "defines the scale used for calculating and displaying the rank, domain_from_rank, and page_from_rank values optional field you can use this parameter to choose whether rank values are presented on a 0–100 or 0–1000 scale possible values: one_hundred — rank values are displayed on a 0–100 scale one_thousand — rank values are displayed on a 0–1000 scale default value: one_thousand learn more about how this parameter works and how ranking metrics are calculated in this Help Center article",
      -    "type": "string"
      -  },
      -  "tag": {
      -    "description": "user-defined task identifier optional field the character limit is 255 you can use this parameter to identify the task and match it with the result you will find the specified tag value in the data object of the response",
      -    "type": "string"
      -  },
      -  "target": {
      -    "description": "domain, subdomain or webpage to get competitor domains for required field a domain or a subdomain should be specified without https:// and www. a page should be specified with absolute URL (including http:// or https://)",
      -    "type": "string"
      -  }
      -}
    • removedInput schema / properties / body / items / required
      Removed value: -[
      -  "target"
      -]
    • changedInput schema / properties / body / items / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
    • changedInput schema / required
      Previous value: -[
      -  "body"
      -]New value: +[]
    • addedOutput schema / x-fastmcp-wrap-result
      Added value: +true
  4. Changed7 schema fields changed
    • removedInput schema / properties / body / example
      Removed value: -[
      -  {
      -    "filters": [
      -      "rank",
      -      ">",
      -      100
      -    ],
      -    "limit": 5,
      -    "order_by": [
      -      "rank,desc"
      -    ],
      -    "target": "dataforseo.com"
      -  }
      -]
    • removedInput schema / properties / body / items / anyOf
      Removed value: -[
      -  {
      -    "example": [
      -      {
      -        "filters": [
      -          "rank",
      -          ">",
      -          100
      -        ],
      -        "limit": 5,
      -        "order_by": [
      -          "rank,desc"
      -        ],
      -        "target": "dataforseo.com"
      -      }
      -    ],
      -    "properties": {
      -      "exclude_internal_backlinks": {
      -        "description": "<em>indicates if internal backlinks from subdomains to the <code>target</code> will be excluded from the results</em><br>optional field<br>if set to <code>true</code>, the results will not include data on internal backlinks from subdomains of the same domain as <code>target</code><br>if set to <code>false</code>, internal links will be included in the results<br>default value: <code>true</code>",
      -        "type": [
      -          "boolean",
      -          "null"
      -        ]
      -      },
      -      "exclude_large_domains": {
      -        "description": "<em>indicates whether large domain will appear in results</em><br>optional field<br>if set to <code>true</code>, the results from the large domain (google.com, amazon.com, etc.) will be omitted;<br>default value: <code>true</code>",
      -        "type": [
      -          "boolean",
      -          "null"
      -        ]
      -      },
      -      "filters": {
      -        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>like</code>, <code>not_like</code>, <code>ilike</code>, <code>not_ilike</code>, <code>match</code>, <code>not_match</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code> to match any string of zero or more characters<br>example:<br><code>[\"rank\",\"&gt;\",\"100\"]</code><p><code>[[\"target\",\"like\",\"%forbes%\"],<br>\"and\",<br>[[\"rank\",\"&gt;\",\"100\"],\"or\",[\"intersections\",\"&gt;\",\"5\"]]]</code><p>The full list of possible filters is available <a href=\"/v3/backlinks/filters/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">here.</a>",
      -        "items": {
      -          "type": [
      -            "object",
      -            "null"
      -          ]
      -        },
      -        "type": [
      -          "array",
      -          "null"
      -        ]
      -      },
      -      "limit": {
      -        "description": "<em>the maximum number of returned domains</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
      -        "type": [
      -          "integer",
      -          "null"
      -        ]
      -      },
      -      "main_domain": {
      -        "description": "<em>indicates if only main domain of the <code>target</code> will be included in the search</em><br>optional field<br>if set to <code>true</code>, only the main domain will be included in search;<br>default value: <code>true</code>",
      -        "type": [
      -          "boolean",
      -          "null"
      -        ]
      -      },
      -      "offset": {
      -        "description": "<em>offset in the results array of returned domains</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten domains in the results array will be omitted and the data will be provided for the successive pages",
      -        "type": [
      -          "integer",
      -          "null"
      -        ]
      -      },
      -      "order_by": {
      -        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"rank,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"intersections,desc\",\"rank,asc\"]</code>",
      -        "items": {
      -          "type": "string"
      -        },
      -        "type": [
      -          "array",
      -          "null"
      -        ]
      -      },
      -      "rank_scale": {
      -        "description": "<em>defines the scale used for calculating and displaying the <code>rank</code>, <code>domain_from_rank</code>, and <code>page_from_rank</code> values</em><br>optional field<p>you can use this parameter to choose whether rank values are presented on a 0–100 or 0–1000 scale<p>possible values:<br><code>one_hundred</code> — rank values are displayed on a 0–100 scale<br><code>one_thousand</code> — rank values are displayed on a 0–1000 scale<p>default value: <code>one_thousand</code><p>learn more about how this parameter works and how ranking metrics are calculated in <a href=\"https://dataforseo.com/help-center/what_is_rank_in_backlinks_api#rank_scale\">this Help Center article</a>",
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "tag": {
      -        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
      -        "type": [
      -          "string",
      -          "null"
      -        ]
      -      },
      -      "target": {
      -        "description": "<em>domain, subdomain or webpage to get competitor domains for</em><br><strong>required field</strong><br>a domain or a subdomain should be specified without <code>https://</code> and <code>www.</code><br>a page should be specified with absolute URL (including <code>http://</code> or <code>https://</code>)",
      -        "type": "string"
      -      }
      -    },
      -    "type": "object"
      -  }
      -]
    • addedInput schema / properties / body / items / properties
      Added value: +{
      +  "exclude_internal_backlinks": {
      +    "description": "indicates if internal backlinks from subdomains to the target will be excluded from the results optional field if set to true, the results will not include data on internal backlinks from subdomains of the same domain as target if set to false, internal links will be included in the results default value: true",
      +    "type": "boolean"
      +  },
      +  "exclude_large_domains": {
      +    "description": "indicates whether large domain will appear in results optional field if set to true, the results from the large domain (google.com, amazon.com, etc.) will be omitted; default value: true",
      +    "type": "boolean"
      +  },
      +  "filters": {
      +    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, =, , in, not_in, like, not_like, ilike, not_ilike, match, not_match you can use the % operator with like and not_like to match any string of zero or more characters example: [\"rank\",\">\",\"100\"] [[\"target\",\"like\",\"%forbes%\"], \"and\", [[\"rank\",\">\",\"100\"],\"or\",[\"intersections\",\">\",\"5\"]]] The full list of possible filters is available here.",
      +    "items": {},
      +    "type": "array"
      +  },
      +  "limit": {
      +    "description": "the maximum number of returned domains optional field default value: 100 maximum value: 1000",
      +    "type": "integer"
      +  },
      +  "main_domain": {
      +    "description": "indicates if only main domain of the target will be included in the search optional field if set to true, only the main domain will be included in search; default value: true",
      +    "type": "boolean"
      +  },
      +  "offset": {
      +    "description": "offset in the results array of returned domains optional field default value: 0 if you specify the 10 value, the first ten domains in the results array will be omitted and the data will be provided for the successive pages",
      +    "type": "integer"
      +  },
      +  "order_by": {
      +    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"rank,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"intersections,desc\",\"rank,asc\"]",
      +    "items": {
      +      "type": "string"
      +    },
      +    "type": "array"
      +  },
      +  "rank_scale": {
      +    "description": "defines the scale used for calculating and displaying the rank, domain_from_rank, and page_from_rank values optional field you can use this parameter to choose whether rank values are presented on a 0–100 or 0–1000 scale possible values: one_hundred — rank values are displayed on a 0–100 scale one_thousand — rank values are displayed on a 0–1000 scale default value: one_thousand learn more about how this parameter works and how ranking metrics are calculated in this Help Center article",
      +    "type": "string"
      +  },
      +  "tag": {
      +    "description": "user-defined task identifier optional field the character limit is 255 you can use this parameter to identify the task and match it with the result you will find the specified tag value in the data object of the response",
      +    "type": "string"
      +  },
      +  "target": {
      +    "description": "domain, subdomain or webpage to get competitor domains for required field a domain or a subdomain should be specified without https:// and www. a page should be specified with absolute URL (including http:// or https://)",
      +    "type": "string"
      +  }
      +}
    • addedInput schema / properties / body / items / required
      Added value: +[
      +  "target"
      +]
    • changedInput schema / properties / body / items / type
      Previous value: -[
      -  "object",
      -  "null"
      -]New value: +"object"
    • changedInput schema / required
      Previous value: -[]New value: +[
      +  "body"
      +]
    • removedOutput schema / x-fastmcp-wrap-result
      Removed value: -true
  5. Changed7 schema fields changed
    • addedInput schema / properties / body / example
      Added value: +[
      +  {
      +    "filters": [
      +      "rank",
      +      ">",
      +      100
      +    ],
      +    "limit": 5,
      +    "order_by": [
      +      "rank,desc"
      +    ],
      +    "target": "dataforseo.com"
      +  }
      +]
    • addedInput schema / properties / body / items / anyOf
      Added value: +[
      +  {
      +    "example": [
      +      {
      +        "filters": [
      +          "rank",
      +          ">",
      +          100
      +        ],
      +        "limit": 5,
      +        "order_by": [
      +          "rank,desc"
      +        ],
      +        "target": "dataforseo.com"
      +      }
      +    ],
      +    "properties": {
      +      "exclude_internal_backlinks": {
      +        "description": "<em>indicates if internal backlinks from subdomains to the <code>target</code> will be excluded from the results</em><br>optional field<br>if set to <code>true</code>, the results will not include data on internal backlinks from subdomains of the same domain as <code>target</code><br>if set to <code>false</code>, internal links will be included in the results<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "exclude_large_domains": {
      +        "description": "<em>indicates whether large domain will appear in results</em><br>optional field<br>if set to <code>true</code>, the results from the large domain (google.com, amazon.com, etc.) will be omitted;<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "filters": {
      +        "description": "<em>array of results filtering parameters</em><br>optional field<br><strong>you can add several filters at once (8 filters maximum)</strong><br>you should set a logical operator <code>and</code>, <code>or</code> between the conditions<br>the following operators are supported:<br><code>regex</code>, <code>not_regex</code>, <code>=</code>, <code>&lt;&gt;</code>, <code>in</code>, <code>not_in</code>, <code>like</code>, <code>not_like</code>, <code>ilike</code>, <code>not_ilike</code>, <code>match</code>, <code>not_match</code><br>you can use the <code>%</code> operator with <code>like</code> and <code>not_like</code> to match any string of zero or more characters<br>example:<br><code>[\"rank\",\"&gt;\",\"100\"]</code><p><code>[[\"target\",\"like\",\"%forbes%\"],<br>\"and\",<br>[[\"rank\",\"&gt;\",\"100\"],\"or\",[\"intersections\",\"&gt;\",\"5\"]]]</code><p>The full list of possible filters is available <a href=\"/v3/backlinks/filters/?bash\" rel=\"noopener noreferrer\" target=\"_blank\">here.</a>",
      +        "items": {
      +          "type": [
      +            "object",
      +            "null"
      +          ]
      +        },
      +        "type": [
      +          "array",
      +          "null"
      +        ]
      +      },
      +      "limit": {
      +        "description": "<em>the maximum number of returned domains</em><br>optional field<br>default value: <code>100</code><br>maximum value: <code>1000</code>",
      +        "type": [
      +          "integer",
      +          "null"
      +        ]
      +      },
      +      "main_domain": {
      +        "description": "<em>indicates if only main domain of the <code>target</code> will be included in the search</em><br>optional field<br>if set to <code>true</code>, only the main domain will be included in search;<br>default value: <code>true</code>",
      +        "type": [
      +          "boolean",
      +          "null"
      +        ]
      +      },
      +      "offset": {
      +        "description": "<em>offset in the results array of returned domains</em><br>optional field<br>default value: <code>0</code><br>if you specify the <code>10</code> value, the first ten domains in the results array will be omitted and the data will be provided for the successive pages",
      +        "type": [
      +          "integer",
      +          "null"
      +        ]
      +      },
      +      "order_by": {
      +        "description": "<em>results sorting rules</em><br>optional field<br>you can use the same values as in the <code>filters</code> array to sort the results<br>possible sorting types:<br><code>asc</code> - results will be sorted in the ascending order<br><code>desc</code> - results will be sorted in the descending order<br>you should use a comma to set up a sorting type<br>example:<br><code>[\"rank,desc\"]</code><br><strong>note that you can set no more than three sorting rules in a single request</strong><br>you should use a comma to separate several sorting rules<br>example:<br><code>[\"intersections,desc\",\"rank,asc\"]</code>",
      +        "items": {
      +          "type": "string"
      +        },
      +        "type": [
      +          "array",
      +          "null"
      +        ]
      +      },
      +      "rank_scale": {
      +        "description": "<em>defines the scale used for calculating and displaying the <code>rank</code>, <code>domain_from_rank</code>, and <code>page_from_rank</code> values</em><br>optional field<p>you can use this parameter to choose whether rank values are presented on a 0–100 or 0–1000 scale<p>possible values:<br><code>one_hundred</code> — rank values are displayed on a 0–100 scale<br><code>one_thousand</code> — rank values are displayed on a 0–1000 scale<p>default value: <code>one_thousand</code><p>learn more about how this parameter works and how ranking metrics are calculated in <a href=\"https://dataforseo.com/help-center/what_is_rank_in_backlinks_api#rank_scale\">this Help Center article</a>",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "tag": {
      +        "description": "<em>user-defined task identifier</em><br>optional field<br><em>the character limit is 255</em><br>you can use this parameter to identify the task and match it with the result<br>you will find the specified <code>tag</code> value in the <code>data</code> object of the response",
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "target": {
      +        "description": "<em>domain, subdomain or webpage to get competitor domains for</em><br><strong>required field</strong><br>a domain or a subdomain should be specified without <code>https://</code> and <code>www.</code><br>a page should be specified with absolute URL (including <code>http://</code> or <code>https://</code>)",
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  }
      +]
    • removedInput schema / properties / body / items / properties
      Removed value: -{
      -  "exclude_internal_backlinks": {
      -    "description": "indicates if internal backlinks from subdomains to the target will be excluded from the results optional field if set to true, the results will not include data on internal backlinks from subdomains of the same domain as target if set to false, internal links will be included in the results default value: true",
      -    "type": "boolean"
      -  },
      -  "exclude_large_domains": {
      -    "description": "indicates whether large domain will appear in results optional field if set to true, the results from the large domain (google.com, amazon.com, etc.) will be omitted; default value: true",
      -    "type": "boolean"
      -  },
      -  "filters": {
      -    "description": "array of results filtering parameters optional field you can add several filters at once (8 filters maximum) you should set a logical operator and, or between the conditions the following operators are supported: regex, not_regex, =, , in, not_in, like, not_like, ilike, not_ilike, match, not_match you can use the % operator with like and not_like to match any string of zero or more characters example: [\"rank\",\">\",\"100\"] [[\"target\",\"like\",\"%forbes%\"], \"and\", [[\"rank\",\">\",\"100\"],\"or\",[\"intersections\",\">\",\"5\"]]] The full list of possible filters is available here.",
      -    "items": {},
      -    "type": "array"
      -  },
      -  "limit": {
      -    "description": "the maximum number of returned domains optional field default value: 100 maximum value: 1000",
      -    "type": "integer"
      -  },
      -  "main_domain": {
      -    "description": "indicates if only main domain of the target will be included in the search optional field if set to true, only the main domain will be included in search; default value: true",
      -    "type": "boolean"
      -  },
      -  "offset": {
      -    "description": "offset in the results array of returned domains optional field default value: 0 if you specify the 10 value, the first ten domains in the results array will be omitted and the data will be provided for the successive pages",
      -    "type": "integer"
      -  },
      -  "order_by": {
      -    "description": "results sorting rules optional field you can use the same values as in the filters array to sort the results possible sorting types: asc – results will be sorted in the ascending order desc – results will be sorted in the descending order you should use a comma to set up a sorting type example: [\"rank,desc\"] note that you can set no more than three sorting rules in a single request you should use a comma to separate several sorting rules example: [\"intersections,desc\",\"rank,asc\"]",
      -    "items": {
      -      "type": "string"
      -    },
      -    "type": "array"
      -  },
      -  "rank_scale": {
      -    "description": "defines the scale used for calculating and displaying the rank, domain_from_rank, and page_from_rank values optional field you can use this parameter to choose whether rank values are presented on a 0–100 or 0–1000 scale possible values: one_hundred — rank values are displayed on a 0–100 scale one_thousand — rank values are displayed on a 0–1000 scale default value: one_thousand learn more about how this parameter works and how ranking metrics are calculated in this Help Center article",
      -    "type": "string"
      -  },
      -  "tag": {
      -    "description": "user-defined task identifier optional field the character limit is 255 you can use this parameter to identify the task and match it with the result you will find the specified tag value in the data object of the response",
      -    "type": "string"
      -  },
      -  "target": {
      -    "description": "domain, subdomain or webpage to get competitor domains for required field a domain or a subdomain should be specified without https:// and www. a page should be specified with absolute URL (including http:// or https://)",
      -    "type": "string"
      -  }
      -}
    • removedInput schema / properties / body / items / required
      Removed value: -[
      -  "target"
      -]
    • changedInput schema / properties / body / items / type
      Previous value: -"object"New value: +[
      +  "object",
      +  "null"
      +]
    • changedInput schema / required
      Previous value: -[
      -  "body"
      -]New value: +[]
    • addedOutput schema / x-fastmcp-wrap-result
      Added value: +true
  6. First observed

TDQS

C2.9/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations declare readOnlyHint=false and destructiveHint=true even though the description frames this as a passive 'provide you with a list' data-retrieval endpoint, creating real tension an agent must resolve. The description adds no behavioral context of its own beyond a boilerplate pricing estimate; it does not explain the POST semantics, whether anything is mutated, auth requirements, or rate limits. Only the cost note counts as added value.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core sentence is a single, front-loaded statement of what the endpoint returns, with no wasted prose. The appended pricing block is templated boilerplate, and the leading zero-width/whitespace characters are slightly untidy, but overall the structure is efficient.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so the description need not explain return values, and the input schema documents the individual fields. What is missing is the context that matters for a paid, ambiguously-annotated POST endpoint: why to pick it, and any reassurance about its real read-only nature versus the destructiveHint annotation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The description contributes no parameter information whatsoever. Although the context signal reports 0% schema description coverage, the underlying schema actually documents target, limit, offset, filters, order_by, rank_scale, main_domain, and the exclusion flags in rich detail, so the schema effectively carries the load while the top-level 'body' wrapper remains undocumented in both places.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb and resource: it returns a list of competitors sharing part of a target site's backlink profile, plus backlink intersections and competitor ranks. This is far more concrete than the bare title 'Competitors'. It does not, however, distinguish itself from adjacent siblings like post_dataforseo_backlinks_domain_intersection_live or referring_domains_live, which an agent could easily confuse it with.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description says what the endpoint returns but never states when to choose it over the many sibling backlink tools (domain_intersection, referring_domains, page_intersection). There is no mention of prerequisites, cost awareness for the paid call, or any exclusion criteria, leaving the agent to infer usage entirely from the resource name.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources