The Problem
Rank trackers charge per keyword per day and lock reporting inside their dashboard. Checking positions by hand is worse: personalized and localized results mean the rank you see is rarely the rank your customers see.
Use Cases
01Quick Answer
Call serp_rank (5 credits) with a keyword, a target domain, a location, and a device to get the real organic position, the ranking URL, and every position the domain holds. Pair it with search_web (5 credits) to see the competing results. Run it on a schedule and keep the history in your own database.
02The brief
Rank trackers charge per keyword per day and lock reporting inside their dashboard. Checking positions by hand is worse: personalized and localized results mean the rank you see is rarely the rank your customers see.
CrawlForge serp_rank returns the real organic position of a domain for a keyword in a chosen location and device, including every position it holds, and search_web shows the competing results around it so you can see who to displace.
03In code
1// Exact Google organic position for a keyword2const rank = await mcp.serp_rank({3 keyword: "mcp web scraping server",4 target: "crawlforge.dev",5 location_name: "United States",6 device: "desktop",7 depth: 100,8});9 10// See who holds the surrounding page-one slots11const serp = await mcp.search_web({12 query: "mcp web scraping server",13 limit: 10,14});15 16console.log(rank.found, rank.rank); // true, 717console.log(rank.url); // the ranking URL18console.log(rank.all_positions); // [7, 34]19console.log(serp.results.map(r => r.link));04The pipeline
05Questions
04
Call serp_rank with the keyword, your domain as the target, a location, and a device. It returns whether you were found, your best organic position, the ranking URL, and every position your domain holds in the scanned results.
No. search_web returns ranked results for a query, while serp_rank reads the real Google organic position for a location and device. Use serp_rank to report positions and search_web to see the competing pages.
Yes. Pass a location_name such as "United States" or "London,England,United Kingdom", a language_code, and device desktop or mobile. The depth parameter scans up to 200 results when a domain ranks deeper than page one.
5 credits per serp_rank lookup. Tracking 20 keywords daily is about 3,000 credits a month, and because you own the output you can keep the history in your own database instead of renting a dashboard.
06Keep exploring
Audit your site and competitors for metadata, broken links, content gaps, and ranking opportunities. Returns a structured report across every crawled page.
Publish an llms.txt so ChatGPT, Claude, and Perplexity read and cite your site correctly. Generate both files, then verify what an AI crawler reaches.
Start forging
Every new account gets 1,000 free credits. No credit card required.