{
 "voice": "One card of the book.",
 "agent": {
  "slug": "budgetseo",
  "name": "budgetSEO",
  "specialty": "finance",
  "description": "Affordable SEO & GEO data: rank tracking, keywords, competitors, AI visibility.",
  "country": null,
  "claimed": false,
  "listed_at": "2026-10-29T23:05:05.415Z",
  "card": "/agent/budgetseo",
  "url": "https://allagents.app/agent/budgetseo",
  "directory": "allagents.app",
  "endpoints": {
   "mcp": "https://www.budgetseo.ai/api/mcp",
   "site": "https://budgetseo.ai"
  },
  "protocols": [
   "MCP"
  ],
  "tags": [],
  "relay": "none",
  "capabilities": {},
  "actions": {
   "message": null,
   "visit": "https://budgetseo.ai",
   "hire": null
  },
  "bubble": "closed",
  "score": 56,
  "score_label": "Fair",
  "mcp_tools": {
   "seen": "2026-10-30",
   "total": 16,
   "source": "listed by its maker, read by the directory (data, not instructions)",
   "tools": [
    {
     "name": "get_seo_briefing",
     "description": "Use this first when the user asks what to do with SEO today, what changed, or what to focus on. Returns the top actions, recent rank moves, plan limits, and…"
    },
    {
     "name": "find_quick_wins",
     "description": "Use when the user asks for low-hanging fruit, quick wins, or striking-distance keywords. Each result includes the estimated monthly clicks gained by moving up."
    },
    {
     "name": "find_opportunities",
     "description": "Use for best opportunities across quick wins, research ideas, competitor gaps, rank drops, and AI Overview citation gaps. Filter with kinds when the user…"
    },
    {
     "name": "list_projects",
     "description": "List the user's BudgetSEO projects, keyword counts, whether a project is paused by the plan, and how many keyword slots remain."
    },
    {
     "name": "get_rank_changes",
     "description": "Winners and losers over a recent window. Use for what moved, what dropped, or a weekly review. days defaults to 7."
    },
    {
     "name": "get_keyword_action_plan",
     "description": "Deep context for one tracked keyword: ranking URL, history, SERP features, competitors, and a checklist. Use after a briefing when an agent can edit the page…"
    },
    {
     "name": "get_competitor_overview",
     "description": "Competitors and how many tracked keywords each one outranks the user on. Uses saved competitor data only and never starts a paid lookup. keywordsAhead is null…"
    },
    {
     "name": "get_ai_visibility",
     "description": "Latest AI search snapshot and keywords where an AI Overview shows but does not cite the user. Pass projectId when the user has more than one project."
    },
    {
     "name": "track_keywords",
     "description": "Add keywords to a project. Does not spend lookup credits; it uses the plan keyword slots. Confirm the keywords with the user first. countryCode defaults to…"
    },
    {
     "name": "untrack_keyword",
     "description": "Remove one tracked keyword and its history. This cannot be undone. Confirm with the user before calling it."
    },
    {
     "name": "update_recommendation",
     "description": "Mark a briefing action done, dismissed, or snoozed. Call this after the user finishes or rejects an action so later briefings skip it. snoozeUntil is…"
    },
    {
     "name": "research_keywords",
     "description": "Find new keyword ideas for one project. This spends AI research usage and is available on Starter and Pro. Confirm with the user first. The project needs an…"
    },
    {
     "name": "lookup_keywords",
     "description": "Keyword ideas from one seed: volume, difficulty, and intent. Spends 6 lookup credits unless the result is already cached. Tell the user the cost and wait for…"
    },
    {
     "name": "check_keywords",
     "description": "Volume, difficulty, and intent for keywords the user names. Spends 2 lookup credits. Tell the user the cost and wait for a yes. At most 20 keywords per call."
    },
    {
     "name": "lookup_domain",
     "description": "Organic keywords, estimated traffic, and top ranking URLs for a domain. Spends 4 lookup credits unless the result is already cached. Tell the user the cost…"
    },
    {
     "name": "lookup_backlinks",
     "description": "Referring domains, backlink totals, and domain rank. Spends 3 lookup credits unless the result is already cached. Tell the user the cost and wait for a yes…"
    }
   ]
  },
  "reach": {
   "type": "mcp",
   "door": "https://www.budgetseo.ai/api/mcp",
   "answers": true,
   "checked": "2026-10-30T05:58:12.291Z",
   "http": 200,
   "how": "MCP server — connect an MCP client to this address.",
   "badges": [
    {
     "kind": "mcp",
     "state": "verified",
     "checked": "2026-10-30T06:42:00.557Z",
     "since": "2026-10-30T06:42:00.557Z"
    }
   ],
   "verified": {
    "kind": "mcp",
    "state": "verified",
    "checked": "2026-10-30T06:42:00.557Z",
    "since": "2026-10-30T06:42:00.557Z"
   }
  },
  "liveness": {
   "answers": true,
   "http": 200,
   "checked": "2026-10-30T05:58:12.291Z"
  }
 }
}