Dataforseo for AI agents
DataForSEO provides SEO data like search rankings, backlinks, and keywords, letting a team research and track search performance programmatically at scale. Connect it once through Arc0, and your agent, or Claude, ChatGPT and Cursor, can use it through one MCP endpoint, limited to what each user approved.
What agents do in Dataforseo.
Check search rankings for a keyword
Create a task pulling organic search results for a keyword to check current rankings.
Check a page's on-page SEO
Run an on-page task against a URL to check its SEO health before publishing.
Check keyword trend data
Pull Google Trends data for a keyword to see whether interest is rising or falling.
312 Dataforseo actions, graded by risk.
Every Dataforseo action is tagged read, write or destructive, so one policy covers the whole app and new actions inherit the right default.
read
285Look things up. Allowed by default.
- dataforseo.list_serp_errorsList SERP Errors
- dataforseo.get_on_page_linksGet On Page Links
- dataforseo.get_on_page_pagesGet On Page Pages
- dataforseo.list_serp_id_listList SERP Task IDs
- dataforseo.get_appendix_errorsGet Appendix Errors
- dataforseo.get_appendix_statusGet Appendix Status
- dataforseo.list_on_page_errorsList OnPage Errors
- dataforseo.list_serp_endpointsList SERP Endpoints
- dataforseo.list_app_data_errorsList App Data Errors
- dataforseo.list_merchant_errorsList Merchant Errors
- dataforseo.list_app_data_id_listList App Data Task IDs
- dataforseo.list_backlinks_errorsList Backlinks Errors
- dataforseo.list_serp_tasks_readyList SERP Ready Tasks
- dataforseo.get_appendix_user_dataGet Appendix User Data
- dataforseo.list_gemini_llm_modelsList Gemini LLM Models
- dataforseo.list_on_page_resourcesList On Page Resources
write
27Create and change things. Allow, or ask the user first.
- dataforseo.post_on_page_summaryPost On Page Summary
- dataforseo.create_on_page_task_postCreate On Page Task
- dataforseo.create_serp_google_maps_taskCreate SERP Google Maps Task
- dataforseo.create_serp_google_events_taskCreate SERP Google Events Task
- dataforseo.create_kw_google_kw_for_kw_taskCreate Keywords Data Google Keywords For Keywords Task
- dataforseo.create_serp_seznam_organic_taskCreate SERP Seznam Organic Task
- dataforseo.create_kw_bing_audience_est_taskCreate Keywords Data Bing Audience Estimation Task
- dataforseo.create_merchant_amazon_sellers_taskCreate Merchant Amazon Sellers Task
- dataforseo.create_on_page_lighthouse_task_postCreate On Page Lighthouse Task
- dataforseo.post_kw_google_kw_for_category_taskCreate Google Keywords For Category Task
- dataforseo.create_app_data_google_app_list_taskCreate App Data Google App List Task
- dataforseo.create_serp_google_autocomplete_taskCreate SERP Google Autocomplete Task
- dataforseo.create_serp_google_local_finder_taskCreate SERP Google Local Finder Task
- dataforseo.create_serp_google_organic_task_postCreate SERP Google Organic Task
- dataforseo.create_app_data_apple_app_reviews_taskCreate App Data Apple App Reviews Task
- dataforseo.create_app_data_apple_app_searches_taskCreate Apple App Searches Task
destructive
0Delete, cancel or archive. Ask first, or deny outright.
- No destructive actions.
Dataforseo in three steps.
- 01Your users connect DataforseoThey add their Dataforseo username and password on Arc0 Connect, under your brand. It goes straight into the vault.
- 02You set the rulesReads run, and writes like “create On Page Task” can wait for the user to approve.
- 03Any agent can actYour agent calls Dataforseo through the Arc0 SDK or MCP, and so can Claude, ChatGPT and Cursor. Every call lands on the audit log.
await arc0.policies.set('dataforseo', { read: 'allow', write: 'ask', // create_on_page_task_post destructive: 'deny', }) # Claude Code: the same connection, one URL $ claude mcp add --transport http arc0 \ https://mcp.arc0.ai/u/u_8f2
How Dataforseo connects.
Users add their Dataforseo username and password on Arc0 Connect. It is encrypted in the vault, never shown to the model, and each user can rotate or revoke it at any time.
The same Dataforseo connection serves your agent over MCP and your own backend over REST and the proxy, so a user connects once. How Arc0 handles credentials →
- AUTH
- Username and password
- CREDENTIALS
- Per-tenant encrypted vault
- MODEL SEES
- Results only, never credentials
- AUDIT LOG
- Every call, on every plan
Use Dataforseo from any agent.
Dataforseo and Arc0, answered.
Can I use Dataforseo with Claude, ChatGPT or Cursor?
Yes. Connect Dataforseo to Arc0 once, then add your Arc0 MCP URL to Claude, ChatGPT, Cursor, Claude Code or any other remote-MCP client. Each assistant only gets the Dataforseo actions you allow.
How do users connect Dataforseo?
Users add their Dataforseo username and password on Arc0 Connect. It is encrypted in the vault, never shown to the model, and each user can rotate or revoke it at any time.
Which Dataforseo actions can my agent take?
312 in total: 285 read, 27 write and 0 destructive, such as “create On Page Task”. Your policies decide which of them each agent may call.
Can I make my agent read-only in Dataforseo?
Yes. Allow read actions and deny writes in the Dataforseo policy. Your agent can still look things up, and any write it attempts is blocked and logged.
Can my own backend call Dataforseo too?
Yes. The same Dataforseo connection is available over REST and through the Arc0 proxy, so your product and your agent share one connection per user.
Plug Dataforseo into your agent.
Your users connect Dataforseo once, under your brand. Your agent gets 312 actions behind your policies, with every call on the record.
Free to build · MCP + REST · Audit log on every plan