dataforseo
$
npx mdskill add BuilderIO/agent-native/dataforseoQuery SEO rankings, volume, and metrics via DataForSEO API.
- Retrieves keyword rankings, search volume, and organic search data.
- Depends on the DataForSEO v3 API with Basic authentication.
- Executes asynchronous tasks to fetch blog pages and top keywords.
- Returns paginated results with fields like rank, volume, and ETV.
SKILL.md
.github/skills/dataforseoView on GitHub ↗
--- name: dataforseo description: > Query keyword rankings, search volume, and SEO metrics via DataForSEO. Use this skill when the user asks about SEO performance, keyword rankings, or organic search data. --- # DataForSEO Integration ## Connection - **Base URL**: `https://api.dataforseo.com/v3` - **Auth**: Basic auth — `Base64($DATAFORSEO_LOGIN:$DATAFORSEO_PASSWORD)` - **Env vars**: `DATAFORSEO_LOGIN`, `DATAFORSEO_PASSWORD` - **Caching**: 6-hour in-memory cache, max 50 entries ## Server Lib - **File**: `server/lib/dataforseo.ts` ### Exported Functions | Function | Description | | -------------------------------------------- | -------------------------------------- | | `getRelevantBlogPages(limit?, offset?)` | Blog pages with SEO metrics | | `getAllBlogPagesSeo()` | All blog pages (paginated, up to 1000) | | `getTopBlogKeywords(limit?, offset?)` | Top ranking keywords | | `getAllTopBlogKeywords(maxResults?)` | All top keywords | | `getRankedKeywordsForPage(blogSlug, limit?)` | Keywords for a specific blog post | ## Script Usage ```bash # Top keywords pnpm action seo-top-keywords --fields=keyword,rank_absolute,etv # Search for specific keywords pnpm action seo-top-keywords --grep=remix --fields=keyword,rank_absolute,etv ``` ## Key Patterns & Gotchas - API uses asynchronous tasks model — response has `tasks[]` with `status_code: 20000` for success - Response structure: `tasks[].result[0].items` — code drills into this - Filtering uses SQL-like filter arrays in request body; code filters for `/blog/%` - `getAllBlogPagesSeo` paginates in steps of 100, up to 1000 by default - Errors include DataForSEO task status codes/messages
More from BuilderIO/agent-native