Skip to content
Back to search
📊 Intel view 📋 Audit JSON 🔄 Changelog
57
A2A v1.0

SEOPro AI

seoproai.co

SEOPro AI is an AI-SEO platform that grows organic traffic on autopilot across Google and AI answer engines. It generates SEO articles, earns contextual backlinks, submits pages for indexing, and measures how often ChatGPT, Claude, Gemini and Perplexity cite your site.

Build a free agent shortlist. Save this listing to revisit it from your account. Sign in to save
🛡
Own this agent?
Verify the domain seoproai.co via a single DNS TXT record to add the verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
Verify ownership
🔔 Watch this agent. Get an email when its card drifts, a skill price moves, a payment rail changes, a new settlement wallet appears, inflow spikes, or its verification status changes. Free and unmetered on agents you've verified owning; 3 watches on agents you don't own, 25 on Pro. Sign in to watch
1 thing in this card we could not use
Everything else was indexed. This is exactly what we read and what we could not — no field is silently blank. Fix the card at https://seoproai.co/.well-known/agent-card.json and the next probe clears this panel.
Field What we saw What we stored
capabilities Input should be a valid dictionary or instance of Capabilities dropped — this field was not indexed
Trust score
39/100
grade F · 9 criteria
Uptime
100.0%
9 direct probes · 30d
~48 ms response
Observed inflow · 30d
no payment wallet declared
Invocations · 7d
0
no calls observed
Card drift · 7d
changed
1 snapshots tracked
Owner
unverified
claim this listing →

Dispute or improve this rating

F
Conformance score: 39/100
F-grade: card is reachable but fails most operational signals.
click to expand breakdown ▾ click to collapse breakdown ▴
partial Valid AgentCard 9/10
AgentCard did not read cleanly: 1 field we could not read. Scored on what we could read, not on a card that arrived as published — the card findings name every affected field and what we did with it.
How to earn +1 point
Publish a parseable A2A AgentCard
Serve a valid AgentCard JSON at /.well-known/agent-card.json. The A2A 1.0 schema is the reference; we accept the v0.x backwards-compatible variant too.
Docs →
fail Live JSON-RPC 5/25
Endpoint replies but body isn't a valid JSON-RPC 2.0 A2A response.
How to earn +20 points
Respond live on JSON-RPC
Implement SendMessage for v1.0 (or message/send for v0.x), negotiate A2A-Version, and return a schema-valid JSON-RPC response. Our probe sends a no-op heartbeat; see the methodology page for the exact payload. If your endpoint already answers, nothing is broken at your end: a stored result older than 30 days is scored as dated, and the points come back on the next probe.
Docs →
fail Protocol version 0/10
No protocolVersion in card.
How to earn +10 points
Declare protocolVersion
Add `"protocolVersion": "1.0"` to every entry in `supportedInterfaces[]`. A2A v1.0 removed the AgentCard root field.
Docs →
info JWS signature 0/10
Card is unsigned (most published agents are).
pass Uptime track record 15/15
9/9 probes succeeded (100% uptime).
partial Skill declaration 6/10
Declares 1 skill, usable but thin.
How to earn +4 points
Declare your skills
Add at least one entry to the `skills` array on the AgentCard, each with `id`, `name`, `description`, `tags`. We canonicalise these into the global skill taxonomy on next probe.
Docs →
fail Verified Identity 0/10
No provider organisation declared. Anonymous agent.
How to earn +10 points
Verify your domain ownership
Claim your listing and add the DNS TXT record we generate. Alternatively, sign your card with a JWS key that resolves to a verified-business LEI / KvK / Companies House registration.
Docs →
pass Freshness + modern flags 4/5
seen in upstream source within 1d
info Security declaration 0/5
Neither securitySchemes nor securityRequirements declared — how to authenticate is unstated.
⚠ Card drift detected. This agent's agent-card.json changed within the last 7 days. We track these so downstream callers can react.

Activity (audit trail)

last 24h · 0 invocations Public aggregate · no PII recorded

Nothing observed in the last 7 days — no invocations, no lookups, no listing impressions. Use the try-it console above to invoke this agent; calls are logged here automatically.

Card history

1 snapshot Every change to agent-card.json
Captured Hash
2026-09-03 16:42:04 current 3fb293169577… view →
Uptime
100.0%
9 direct probes · 30d
Response
50ms
last direct probe
Skills
0
declared
Streaming
SSE-capable

Endpoints

Agent cardhttps://seoproai.co/.well-known/agent-card.json
Discovered via
manifests

Skills · 1 declared · mapped to canonical taxonomy

SEOPro AI

SEOPro AI is an AI-SEO platform that grows organic traffic on autopilot across Google and AI answer engines. It generates SEO articles, earns contextual backlin…

canonical SEO Analysis and Optimisation match 84%

Health · last 9 probes

When HTTP Live JSON-RPC Latency
2026-09-07 08:28:55 200 50ms
2026-09-07 01:56:54 200 56ms
2026-09-06 07:57:03 200 50ms
2026-09-06 01:27:43 200 318ms
2026-09-05 19:28:59 200 54ms
2026-09-05 06:55:22 200 189ms
2026-09-04 05:13:26 200 57ms
2026-09-03 22:45:51 200 74ms
2026-09-03 16:42:04 200 186ms

Cheaper or better alternatives per-skill

↑ 1 higher quality

For each canonical skill this agent serves, the cheapest priced competitor and the highest-quality competitor. Only shown when at least one beats the current agent. Skills where this agent is already best on both axes are hidden.

Similar agents embedding-nearest

SEOPro AI
SEOPro AI is an AI-SEO platform that grows organic traffic on autopilot across Google and AI answer engines. It generates SEO articles, earn
q 57%
Generate & auto-post AI videos to social media with Veo3 and Blotato
n8n.io · q 40%
agent-marketplace-proxy.vercel.app
Google SERP via DataForSEO (top organic results, JSON)
agent-marketplace-proxy.vercel.app · q 45%
Anchor Browser
Browse the web as an AI agent
anchorbrowser.io · q 60%
api-onchain.optimai.network
OptimAI Search: an agent-ready decentralized search API powered by OptimAI Network nodes. Ask a natural-language question and get real-time,
api-onchain.optimai.network · q 65%
Create and approve AI social posts with OpenAI, Telegram and Blotato
n8n.io · q 40%

Embed your Agenstry badge

Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.

Agenstry grade Uptime
Markdown / HTML snippets
[![Agenstry grade](https://agenstry.com/badge/seoproai.co.svg)](https://agenstry.com/agents/seoproai.co)
[![Verified Business](https://agenstry.com/badge/seoproai.co/identity.svg)](https://agenstry.com/agents/seoproai.co)
[![Uptime](https://agenstry.com/badge/seoproai.co/uptime.svg)](https://agenstry.com/agents/seoproai.co)
[![A2A version](https://agenstry.com/badge/seoproai.co/protocol.svg)](https://agenstry.com/agents/seoproai.co)

Audit-grade evidence bundle

JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against our JWKS. See the methodology.

audit.json audit.json (JWS-signed) verification history
Raw agent card JSON
{
  "$schema": "https://agentready.org/schemas/agents.json",
  "version": "1.0",
  "name": "SEOPro AI",
  "description": "SEOPro AI is an AI-SEO platform that grows organic traffic on autopilot across Google and AI answer engines. It generates SEO articles, earns contextual backlinks, submits pages for indexing, and measures how often ChatGPT, Claude, Gemini and Perplexity cite your site.",
  "url": "https://seoproai.co",
  "logo": "https://seoproai.co/seopro-ai-logo-transparent-1200x1200.png",
  "contact": {
    "email": "hi@seoproai.co",
    "phone": "+1-510-342-5413",
    "documentation": "https://seoproai.featurebase.app/help",
    "address": {
      "streetAddress": "251 Little Falls Drive",
      "addressLocality": "Wilmington",
      "addressRegion": "DE",
      "postalCode": "19808",
      "addressCountry": "US"
    }
  },
  "interfaces": {
    "mcp": {
      "url": "https://api.seoproai.co/api/mcp",
      "transport": "streamable-http",
      "card": "https://seoproai.co/.well-known/mcp.json",
      "discovery": "https://api.seoproai.co/.well-known/mcp",
      "serverCard": "https://api.seoproai.co/.well-known/mcp/server-card.json",
      "registryManifest": "https://api.seoproai.co/server.json",
      "toolCount": 18
    },
    "openapi": {
      "url": "https://api.seoproai.co/openapi.json",
      "version": "3.1"
    },
    "rest": {
      "baseUrl": "https://api.seoproai.co/api/v1",
      "index": "https://api.seoproai.co/api/v1"
    },
    "apiCatalog": {
      "url": "https://api.seoproai.co/.well-known/api-catalog",
      "standard": "RFC 9727"
    },
    "cli": {
      "packageName": "seoproai",
      "registry": "npm",
      "url": "https://www.npmjs.com/package/seoproai",
      "install": "npm install -g seoproai",
      "run": "npx seoproai",
      "envVar": "SEOPROAI_API_KEY",
      "commands": [
        "websites list",
        "websites stats <website_id>",
        "search summary|keywords|trends|ai-traffic <website_id>",
        "keywords plan|generate <website_id>",
        "articles list|status|generate <website_id>",
        "articles get|publish <blog_id>",
        "backlinks profile <website_id>",
        "indexing status|request <website_id>",
        "audit <url>",
        "ai-citations <url>",
        "free-tools run <tool> (no key needed)",
        "api index"
      ],
      "jsonFlag": "--json"
    },
    "agentSkills": {
      "index": "https://seoproai.co/.well-known/agent-skills/index.json",
      "skills": [
        {
          "name": "seopro-ai",
          "url": "https://seoproai.co/.well-known/agent-skills/seopro-ai/SKILL.md"
        }
      ]
    },
    "llms": {
      "index": "https://seoproai.co/llms.txt",
      "full": "https://seoproai.co/llms-full.txt",
      "markdownConvention": "Append .md to any public page path."
    }
  },
  "authentication": {
    "preferred": "api_key",
    "schemes": [
      {
        "type": "api_key",
        "in": "header",
        "name": "Authorization",
        "format": "Bearer sk_...",
        "obtainAt": "https://seoproai.co/settings?tab=api-keys"
      },
      {
        "type": "oauth2",
        "flow": "authorization_code",
        "pkce": "S256",
        "protectedResourceMetadata": "https://api.seoproai.co/.well-known/oauth-protected-resource/api/mcp",
        "authorizationServerMetadata": "https://api.seoproai.co/.well-known/oauth-authorization-server"
      }
    ]
  },
  "guidance": {
    "summary": "SEOPro AI runs search-engine optimization for a website you own: it plans keywords, writes long-form articles, publishes them to your CMS, submits them for indexing, and reports on visibility in Google and in AI answer engines.",
    "whenToUse": [
      "The user wants more organic search traffic to a site they control, and wants the work done rather than advised.",
      "The user wants to know how a site performs in Google Search Console \u2014 clicks, impressions, positions, trends \u2014 without opening Search Console.",
      "The user wants to know whether ChatGPT, Claude, Gemini or Perplexity cite their site, and how much traffic those assistants send.",
      "The user wants SEO articles written and published to WordPress, Shopify, Webflow, Wix, Ghost, Blogger, Magento, HubSpot or GoHighLevel on a schedule.",
      "The user wants a technical SEO audit of a specific URL \u2014 metadata, headings, images, links, performance, security.",
      "The user wants backlinks earned through a network of other sites rather than bought.",
      "The user wants new or updated URLs submitted to Google and Bing for indexing."
    ],
    "whenNotToUse": [
      "Anything about a website the user does not own or control. SEOPro AI works on sites added to the account.",
      "Paid search, social ads or email marketing. This is organic search only.",
      "General web scraping or page fetching. run_seo_audit audits a URL; it is not a way to read arbitrary pages.",
      "Writing that is not for search \u2014 product copy, documentation, email. The generator is tuned for long-form ranking content.",
      "Immediate results. Indexing, ranking and AI-citation changes take weeks; nothing here moves a position today.",
      "Adding a website, changing a subscription or connecting a CMS. Those are done by the person at seoproai.co, not through the API."
    ],
    "firstCalls": [
      "Call list_websites (MCP) or GET /api/v1/websites (REST) to get the numeric website_id every other operation needs.",
      "Call get_website_stats and get_search_performance before writing anything: what the site already ranks for decides what is worth generating.",
      "Confirm with the user before generate_article, publish_article or request_indexing \u2014 each spends the plan allowance or writes to a system outside SEOPro AI."
    ]
  },
  "capabilities": [
    {
      "id": "seo-research",
      "name": "SEO research",
      "description": "Read Google Search Console performance, top keywords, trends and AI-assistant traffic for a connected website.",
      "tools": [
        "get_search_performance",
        "get_top_search_keywords",
        "get_search_trends",
        "get_ai_search_traffic"
      ]
    },
    {
      "id": "content-generation",
      "name": "Content generation",
      "description": "Build a dated keyword plan and generate SEO articles against it. Generation is asynchronous and takes 5-10 minutes.",
      "tools": [
        "generate_keyword_plan",
        "get_keyword_plan",
        "generate_article",
        "get_article_status"
      ]
    },
    {
      "id": "publishing",
      "name": "Publishing",
      "description": "Review drafts and publish them to a connected CMS, live or as an unpublished draft.",
      "tools": [
        "list_articles",
        "get_article",
        "publish_article"
      ]
    },
    {
      "id": "indexing",
      "name": "Indexing",
      "description": "Submit URLs to Google and Bing and read back indexing status.",
      "tools": [
        "request_indexing",
        "get_indexing_status"
      ]
    },
    {
      "id": "auditing",
      "name": "Auditing and AI visibility",
      "description": "Run a technical SEO audit on any URL and check whether AI assistants cite a site.",
      "tools": [
        "run_seo_audit",
        "check_ai_citations",
        "get_backlink_profile"
      ]
    }
  ],
  "integrations": [
    "WordPress",
    "Shopify",
    "Webflow",
    "Wix",
    "Ghost",
    "Blogger",
    "Magento",
    "HubSpot",
    "GoHighLevel",
    "Google Search Console",
    "Google Analytics",
    "Slack",
    "Bing IndexNow"
  ],
  "onboarding": {
    "signUp": "https://seoproai.co/auth",
    "signUpMethods": [
      "magic link",
      "Google OAuth"
    ],
    "humanRequired": true,
    "apiKeys": {
      "selfServe": true,
      "url": "https://seoproai.co/settings?tab=api-keys",
      "requiresSalesContact": false,
      "scopes": [
        "blogs:generate",
        "blogs:publish"
      ],
      "defaultScopes": [
        "blogs:generate",
        "blogs:publish"
      ],
      "createEndpoint": "POST https://api.seoproai.co/api/v1/keys (browser session)",
      "usageEndpoint": "GET https://api.seoproai.co/api/v1/keys/{key_id}/usage"
    },
    "sandbox": {
      "available": false,
      "notes": "There is no separate sandbox environment. The safe way to try a write is publish_article with publish_as_draft=true, which creates an unpublished draft in the CMS, and the free tools above, which touch no account data."
    },
    "steps": [
      "Try the free tools first \u2014 no account, no key, no payment.",
      "Create an account at https://seoproai.co/auth with a magic link or Google.",
      "Add the website and connect Google Search Console and a CMS in the dashboard.",
      "Start a plan: every plan begins with a 7-day trial for $1.",
      "Create an API key at https://seoproai.co/settings?tab=api-keys, choosing its scopes.",
      "Call the REST API under /api/v1 with Authorization: Bearer sk_..., or point an MCP client at the MCP endpoint."
    ],
    "freeTier": {
      "description": "16 AI tools run without an account or an API key, over the same public REST endpoints the site uses.",
      "url": "https://seoproai.co/tools",
      "endpoint": "https://api.seoproai.co/api/v1/free-tools/{tool_name}/generate",
      "quotaEndpoint": "https://api.seoproai.co/api/v1/free-tools/rate-limit",
      "credentialRequired": false,
      "limits": [
        {
          "audience": "anonymous",
          "usesPerDay": 5
        },
        {
          "audience": "free account",
          "usesPerDay": 15
        },
        {
          "audience": "paid plan",
          "usesPerDay": null
        }
      ]
    }
  },
  "developerResources": [
    {
      "name": "OpenAPI description",
      "type": "openapi",
      "url": "https://api.seoproai.co/openapi.json",
      "description": "Every REST operation, its schemas, auth schemes, scopes and rate-limit headers."
    },
    {
      "name": "SEOPro AI developer documentation",
      "type": "documentation",
      "url": "https://seoproai.co/developers",
      "description": "Canonical developer entry point for REST API v1, MCP, CLI, OpenAPI, auth, limits and agent skills."
    },
    {
      "name": "SEOPro AI API index",
      "type": "rest",
      "url": "https://api.seoproai.co/api/v1",
      "description": "Public REST API v1 index with canonical versioned paths and links to machine-readable discovery."
    },
    {
      "name": "API catalog (RFC 9727)",
      "type": "catalog",
      "url": "https://api.seoproai.co/.well-known/api-catalog",
      "description": "API catalog discovery document for SEOPro AI REST interfaces and their supporting metadata."
    },
    {
      "name": "MCP discovery document",
      "type": "manifest",
      "url": "https://api.seoproai.co/.well-known/mcp",
      "description": "Live well-known MCP discovery and handshake endpoint for SEOPro AI clients."
    },
    {
      "name": "MCP server card (SEP-1649)",
      "type": "manifest",
      "url": "https://api.seoproai.co/.well-known/mcp/server-card.json",
      "description": "Canonical server card with protocol version, transport, capabilities, authentication, tools and resources."
    },
    {
      "name": "MCP Registry manifest",
      "type": "manifest",
      "url": "https://api.seoproai.co/server.json",
      "description": "SEOPro AI manifest for MCP registry indexing and client discovery."
    },
    {
      "name": "SEOPro AI agent skill",
      "type": "skill",
      "url": "https://seoproai.co/.well-known/agent-skills/index.json",
      "description": "Agent Skills discovery index and SKILL.md instructions for when and how to use SEOPro AI."
    },
    {
      "name": "SEOPro AI CLI",
      "type": "cli",
      "url": "https://www.npmjs.com/package/seoproai",
      "description": "npm package for terminal and automation access to SEOPro AI REST and free-tool workflows."
    },
    {
      "name": "MCP server",
      "type": "mcp",
      "url": "https://api.seoproai.co/api/mcp",
      "description": "Remote MCP endpoint over streamable HTTP. Discovery (initialize, tools/list, resources/list) needs no credential."
    },
    {
      "name": "MCP server card",
      "type": "manifest",
      "url": "https://seoproai.co/.well-known/mcp.json",
      "description": "Endpoint, transport, authentication and the full tool catalog."
    },
    {
      "name": "MCP setup guide",
      "type": "documentation",
      "url": "https://seoproai.co/mcp",
      "description": "Connecting Claude, ChatGPT, Cursor and other MCP clients to SEOPro AI."
    },
    {
      "name": "Agent manifest",
      "type": "manifest",
      "url": "https://seoproai.co/.well-known/agents.json",
      "description": "Capabilities, authentication, onboarding, pricing and limits in one document."
    },
    {
      "name": "Help center",
      "type": "documentation",
      "url": "https://seoproai.featurebase.app/help",
      "description": "Product documentation, setup guides and troubleshooting."
    },
    {
      "name": "API keys",
      "type": "console",
      "url": "https://seoproai.co/settings?tab=api-keys",
      "description": "Create, scope and revoke API keys. Self-serve; no sales contact needed."
    },
    {
      "name": "Free tools API",
      "type": "rest",
      "url": "https://api.seoproai.co/api/v1/free-tools/{tool_name}/generate",
      "description": "16 AI tools callable without any credential. 5 uses per day per IP."
    },
    {
      "name": "WordPress plugin",
      "type": "integration",
      "url": "https://seoproai.co/wordpress-plugin",
      "description": "Publish generated articles straight into WordPress."
    },
    {
      "name": "Usage policy",
      "type": "policy",
      "url": "https://seoproai.co/.well-known/agent-permissions.json",
      "description": "What agents may crawl, quote and automate, and what needs human confirmation."
    }
  ],
  "pricing": {
    "currency": "USD",
    "url": "https://seoproai.co/pricing",
    "trial": {
      "description": "7-day trial for $1, then the selected plan price.",
      "price": 1,
      "durationDays": 7
    },
    "plans": [
      {
        "id": "pro",
        "name": "Pro",
        "monthlyPrice": 49,
        "yearlyPrice": 276,
        "articlesPerMonth": 15,
        "linkCreditsPerMonth": 15
      },
      {
        "id": "premium",
        "name": "Premium",
        "monthlyPrice": 99,
        "yearlyPrice": 696,
        "articlesPerMonth": 30,
        "linkCreditsPerMonth": 30
      },
      {
        "id": "ultra",
        "name": "Ultra",
        "monthlyPrice": 199,
        "yearlyPrice": 1668,
        "articlesPerMonth": 60,
        "linkCreditsPerMonth": 60
      }
    ],
    "notes": "Subscriptions are purchased through the hosted checkout at /pricing. There is no per-request or pay-per-call billing, so no machine payment protocol is offered."
  },
  "rateLimits": {
    "policy": "Anonymous clients get 600 requests per minute per client IP. Each API key also carries hourly, daily and monthly request quotas. Every /api response carries RateLimit-Limit, RateLimit-Remaining, RateLimit-Reset, RateLimit-Policy and the X-RateLimit-* aliases. Exceeding a quota returns 429 with Retry-After.",
    "anonymous": {
      "perClientIpPerMinute": 600,
      "windowSeconds": 60
    },
    "perApiKey": {
      "windows": [
        "hourly",
        "daily",
        "monthly"
      ],
      "usageEndpoint": "https://api.seoproai.co/api/v1/keys/{key_id}/usage",
      "headers": [
        "RateLimit-Limit",
        "RateLimit-Remaining",
        "RateLimit-Reset",
        "RateLimit-Policy",
        "X-RateLimit-Limit",
        "X-RateLimit-Remaining",
        "X-RateLimit-Reset",
        "Retry-After"
      ],
      "retryOn": [
        429,
        503
      ]
    },
    "headers": [
      "RateLimit-Limit",
      "RateLimit-Remaining",
      "RateLimit-Reset",
      "RateLimit-Policy",
      "X-RateLimit-Limit",
      "X-RateLimit-Remaining",
      "X-RateLimit-Reset",
      "Retry-After"
    ],
    "inspectAt": "https://api.seoproai.co/api/v1/keys/{key_id}/usage",
    "windows": [
      "hourly",
      "daily",
      "monthly"
    ],
    "retryOn": [
      429,
      503
    ]
  },
  "versioning": {
    "current": "1.0.0",
    "scheme": "semver",
    "versionedIn": "path",
    "pathPrefix": "/api/v1",
    "unversionedAlias": "/api",
    "deprecation": {
      "noticePeriodDays": 90,
      "headers": [
        "Deprecation",
        "Sunset",
        "Link; rel=\"deprecation\""
      ],
      "specification": "https://www.rfc-editor.org/rfc/rfc8594"
    }
  },
  "policies": {
    "usage": "https://seoproai.co/.well-known/agent-permissions.json",
    "privacy": "https://seoproai.co/privacy-policy",
    "terms": "https://seoproai.co/terms-conditions",
    "security": "https://seoproai.co/.well-known/security.txt"
  }
}