Skip to main content
Glama

AIsa SERP — Other Engines

Setting Baidu Organic SERP Tasks

post_dataforseo_serp_baidu_organic_submit
Destructive

Baidu SERP API provides top 10 search engine results. These results are specific to the selected location (see the List of Locations) and other settings.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
bodyYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed12 schema fields changed
    • changedInput schema / properties / body / items / properties / depth / description
      Previous value: -"Parsing depth"New value: +"parsing depth optional field number of results in SERP default value: 10 max value: 700 Your account will be billed per each SERP containing up to 10 results; Setting depth above 10 may result in additional charges if the search engine returns more than 10 results; The cost can be calculated on the Pricing page."
    • changedInput schema / properties / body / items / properties / device / description
      Previous value: -"Device type"New value: +"device type optional field return results for a specific device type can take the values: desktop, mobile, tablet default value: desktop"
    • changedInput schema / properties / body / items / properties / keyword / description
      Previous value: -"Keyword to search for"New value: +"keyword required field you can specify up to 700 characters in the keyword field all %## will be decoded (plus character ‘+’ will be decoded to a space character) if you need to use the “%” character for your keyword, please specify it as “%25”; if you need to use the “+” character for your keyword, please specify it as “%2B” learn more about rules and limitations of keyword and keywords fields in DataForSEO APIs in this Help Center article"
    • changedInput schema / properties / body / items / properties / language_code / description
      Previous value: -"Search engine language code"New value: +"search engine language code required field if you don't specify language_name you can receive the list of available languages of the search engine with their language_code by making a separate request to the https://api.dataforseo.com/v3/serp/{{low_se_name}}/languagesnote that the only language supported in Baidu search engine is Chinese (Simplified) with the zh_CN language code. However, Baidu may as well return results for queries in other languages, so specifying keyword in Chinese is not mandatory example: zh_CN"
    • changedInput schema / properties / body / items / properties / language_name / description
      Previous value: -"Full name of search engine language"New value: +"full name of search engine language required field if you don't specify language_code you can receive the list of available languages of the search engine with their language_name by making a separate request to the https://api.dataforseo.com/v3/serp/{{low_se_name}}/languagesnote that the only language supported in Baidu search engine is Chinese (Simplified). However, Baidu may as well return results for queries in other languages, so specifying keyword in Chinese is not mandatory example: Chinese (Simplified)"
    • changedInput schema / properties / body / items / properties / location_code / description
      Previous value: -"Search engine location code"New value: +"search engine location code required field if you don't specify location_name or location_coordinate if you use this field, you don't need to specify location_name or location_coordinate you can receive the list of available locations of the search engines with their location_code by making a separate request to the https://api.dataforseo.com/v3/serp/{{low_se_name}}/locations example: 2156"
    • changedInput schema / properties / body / items / properties / location_name / description
      Previous value: -"Full name of search engine location"New value: +"full name of search engine location required field if you don't specify location_code or location_coordinate if you use this field, you don't need to specify location_code or location_coordinate you can receive the list of available locations of the search engine with their location_name by making a separate request to the https://api.dataforseo.com/v3/serp/{{low_se_name}}/locations example: New York,New York,United States"
    • changedInput schema / properties / body / items / properties / os / description
      Previous value: -"Device operating system"New value: +"device operating system optional field if you specify desktop in the device field, choose from the following values: windows, macos default value: windows if you specify mobile in the device field, choose from the following values: android, ios default value: android if you specify tablet in the device field, choose from the following values: android, ios default value: android"
    • changedInput schema / properties / body / items / properties / pingback_url / description
      Previous value: -"Notification URL of a completed task"New value: +"notification URL of a completed task optional field when a task is completed we will notify you by GET request sent to the URL you have specified you can use the ‘$id’ string as a $id variable and ‘$tag’ as urlencoded $tag variable. We will set the necessary values before sending the request. example: http://your-server.com/pingscript?id=$id http://your-server.com/pingscript?id=$id&tag=$tag Note: special characters in pingback_url will be urlencoded; i.a., the # character will be encoded into %23 learn more on our Help Center"
    • changedInput schema / properties / body / items / properties / postback_data / description
      Previous value: -"Postback datatype; possible values: regular, advanced, html"New value: +"postback_url datatype required field if you specify postback_url corresponds to the datatype that will be sent to your server possible values: regular, html"
    • changedInput schema / properties / body / items / properties / postback_url / description
      Previous value: -"URL for sending task results"New value: +"URL for sending task results optional field once the task is completed, we will send a POST request with its results compressed in the gzip format to the postback_url you specified you can use the ‘$id’ string as a $id variable and ‘$tag’ as urlencoded $tag variable. We will set the necessary values before sending the request. example: http://your-server.com/postbackscript?id=$id http://your-server.com/postbackscript?id=$id&tag=$tag Note: special characters in postback_url will be urlencoded; i.a., the # character will be encoded into %23 learn more on our Help Center"
    • changedInput schema / properties / body / items / properties / priority / description
      Previous value: -"Task priority"New value: +"task priority optional field can take the following values: 1 – normal execution priority (set by default) 2 – high execution priority You will be additionally charged for the tasks with high execution priority. The cost can be calculated on the Pricing page."
  2. First observed

TDQS

D1.9/5.0
Behavior2/5

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

Annotations declare readOnlyHint=false, destructiveHint=true, idempotentHint=false, openWorldHint=true, so safety profile is partly covered. However, the description omits the behavior that matters most for this tool: it queues a billable task whose results must later be retrieved via the fetch sibling, and it supports pingback/postback callbacks. None of that is disclosed.

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

Conciseness3/5

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

It is short and has no filler sentences, but it is not front-loaded with the action the agent needs; the lead sentence is about the API's output rather than about submitting a task.

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

Completeness2/5

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

For a non-idempotent, destructive-flagged task-submission tool with a rich nested schema and an output schema, the description leaves out the submit/retrieve lifecycle, billing implications, and required-field alternatives. Output schema existence excuses return-value detail, but the operational context is still missing.

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

Parameters2/5

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

Reported schema coverage is 0% for the top-level body parameter, so the description must compensate — but it says nothing about keyword, device, depth billing, location/language required-field pairs, or callback URLs. The 'specific to the selected location' phrase is the only faint nod to a parameter, adding essentially no semantics.

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

Purpose2/5

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

The description describes what the Baidu SERP API product returns (top 10 results), not what the tool does. It never says this tool submits/creates a task, nor how it differs from the sibling post_dataforseo_serp_baidu_organic_fetch/…_fetch_regular tools. An agent reading only this text would not know the operation is an asynchronous task submission.

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

Usage Guidelines1/5

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

There is no when-to-use guidance, no mention that this is the async 'submit' path versus the 'fetch' path, no prerequisites, and no reference to any sibling tool. The only pointer ('see the List of Locations') is a data lookup hint, not usage guidance.

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