DEV Community

talor
talor

Posted on

https://dev.to/talor/zero-to-mcp-server-in-30-minutes-229m

The Manual SEO Trap
Most SEO professionals still do this:

  1. Open Google
  2. Type a keyword
  3. Scroll to find their ranking
  4. Copy‑paste into a spreadsheet
  5. Repeat 50 times a day There’s a better way.

Build a Simple Rank Tracker
This script queries Google for a list of keywords, extracts your position, and logs everything to a CSV – all automatically.

import csv
import time
from datetime import datetime
from talordata import TalorClient

client = TalorClient(api_key="YOUR_TALORDATA_API_KEY")

# Keywords you want to track
keywords = [
    "SERP API",
    "AI search tool",
    "web scraping API",
    "LangChain search"
]

# Your domain to check rankings for
your_domain = "talordata.com"

with open("rankings.csv", "w", newline="") as f:
    writer = csv.writer(f)
    writer.writerow(["keyword", "position", "title", "link", "timestamp"])

    for kw in keywords:
        results = client.search(q=kw, engine="google")

        # Find where your domain appears
        position = None
        for idx, result in enumerate(results.organic, start=1):
            if your_domain in result.link:
                position = idx
                writer.writerow([kw, idx, result.title, result.link, datetime.now()])
                break

        if position is None:
            writer.writerow([kw, "not found", "", "", datetime.now()])

        time.sleep(1)  # Be respectful with rate limits

print("Rankings saved to rankings.csv")
Enter fullscreen mode Exit fullscreen mode

Schedule It Daily
Use cron (Linux/macOS) or Task Scheduler (Windows) to run this script every morning.

Example cron job (runs at 8 AM daily):

0 8 * * * cd /path/to/script && python rank_tracker.py
Enter fullscreen mode Exit fullscreen mode

Go Further: Add Alerts
Send a Slack or Telegram notification whenever your ranking drops by more than 3 positions:

# Add this after the ranking check
if position and previous_position and (position - previous_position) > 3:
    send_slack_alert(f"⚠️ Ranking dropped for '{kw}': #{previous_position} → #{position}")
Enter fullscreen mode Exit fullscreen mode

Cost Estimation
Tracking 50 keywords once a day costs roughly:

  • 50 requests/day × 30 days = 1,500 requests/month
  • TalorData pricing: ~$1.50/month at the 5K tier That’s less than a coffee.

Start tracking your rankings today:
👉 talordata.com – 1,000 free requests included.

All five articles are ready to copy‑paste. Need me to adjust the tone, add more code, or write additional articles on other topics? Just let me know. 😊

Top comments (0)