YAML Metadata Warning: empty or missing yaml metadata in repo card (https://huggingface.co/docs/hub/model-cards#model-card-metadata)

SEO Keyword Research AI Agent

An AI-powered SEO keyword research agent that discovers, analyzes, and ranks keyword opportunities using SerpAPI, with an interactive Streamlit dashboard for visualization and an n8n integration for automation.

This project was built to demonstrate skills in Python, AI agents, API integration, data visualization, and deployment (Render + n8n).


πŸš€ Features

  • πŸ” Keyword Discovery – Finds related keywords for any seed keyword.
  • πŸ“Š Keyword Analysis – Scores keywords based on search volume, competition, and SERP signals.
  • πŸ“‚ Data Export – Saves results to CSV/Excel with metadata.
  • πŸ“ˆ Interactive Dashboard – Streamlit + Plotly for keyword trends, competition heatmaps, and intent analysis.
  • πŸ€– AI Agent Workflow – Automates tasks like keyword research β†’ processing β†’ reporting.
  • πŸ”— n8n Integration – Trigger workflows via webhooks (e.g., run keyword research and auto-send results to Slack/Email).
  • 🌐 Deployment – Hosted on Render for API and dashboard access.

πŸ—οΈ Project Structure

seo-keyword-ai-agent/

β”‚ β”œβ”€β”€ app.py # Master pipeline orchestrator

│── dashboard.py # Streamlit visualization

│── src/

β”‚ β”œβ”€β”€ postprocess.py # Cleans & enriches results

β”‚ β”œβ”€β”€ ranking.py # Keyword discovery & scoring

β”‚ β”œβ”€β”€ server.py # FastAPI/Render server

│── output/ # Generated keyword results

│── .env # API keys (not committed)

│── requirements.txt # Python dependencies

│── README.md # Project documentation


βš™οΈ Installation


βš™οΈ Installation

  1. Clone the repo

    git clone https://github.com/omraghu07/seo-keyword-ai-agent.git
    cd seo-keyword-ai-agent
    
  2. Create a virtual environment

    python -m venv agent_venv
    
    # Mac/Linux
    source agent_venv/bin/activate
    
    # Windows
    agent_venv\Scripts\activate
    
  3. Install dependencies

    pip install -r requirements.txt
    
  4. Setup .env file Create a .env file in the root directory and add your API key:

    SERPAPI_KEY=your_serpapi_key_here
    

▢️ Usage

Run the full pipeline

  python app.py "global internship" --max-candidates 100 --top-results 50

Launch the dashboard

  streamlit run dashboard.py

Run as an API (Render/FastAPI)

  gunicorn -k uvicorn.workers.UvicornWorker src.server:app --bind 0.0.0.0:8000 --workers 2

πŸ”— n8n Integration

  • Create an n8n workflow with a Webhook node.

  • Connect it to Render API:

  POST https://seo-keyword-ai-agent.onrender.com/analyze
{
  "seed": "global internship",
  "top": 10
}
  • Add email/Slack nodes to auto-send reports.

πŸ“Š Example Output

Top 5 Keyword Opportunities:

Keyword Volume Competition Score Results
UCLA Global Internship Program 2000 0.0 330.12 0
Summer Internship Programs - CIEE 1666 0.33 9.26 54,000
Global Internship Program HENNGE 2000 0.35 9.01 10,200
Berkeley Global Internships Paid 1666 0.45 6.98 219,000
Global Internship Remote 2500 0.50 6.66 174M

πŸ› οΈ Tech Stack

  • Python (Core language)
  • SerpAPI (Google search results API)
  • Pandas, Requests, Tabulate (Data processing)
  • Streamlit + Plotly (Dashboard & charts)
  • FastAPI + Gunicorn (API server)
  • Render (Deployment)
  • n8n (Workflow automation)

πŸ‘¨β€πŸ’» Author

Om Raghuwanshi – Engineering student passionate about AI

πŸ”— Links

linkedin

⚑ If you like this project, don’t forget to ⭐ star the repo and fork it!

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support