protogrid

Search / io.github.retampweb/pa1m-seo

Pa1m SEO

R0· no sign-in

Pay-per-call SEO agent: keyword research, SERP analysis, on-page optimization. x402, USDC on Base.

v1.0.0 · active · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality67needs work
Trust73of 100
Uptime, 30 days96%
Latency p50947 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "pa1m-seo": {
      "type": "sse",
      "url": "https://seo.hypa1m.xyz/mcp"
    }
  }
}
claude mcp add --transport sse pa1m-seo https://seo.hypa1m.xyz/mcp
[mcp_servers.pa1m-seo]
url = "https://seo.hypa1m.xyz/mcp"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "pa1m-seo": {
      "type": "remote",
      "url": "https://seo.hypa1m.xyz/mcp",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "pa1m-seo": {
      "type": "sse",
      "url": "https://seo.hypa1m.xyz/mcp"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=pa1m-seo&config=eyJ0eXBlIjoic3NlIiwidXJsIjoiaHR0cHM6Ly9zZW8uaHlwYTFtLnh5ei9tY3AifQ%3D%3D"
}
{
  "servers": {
    "pa1m-seo": {
      "type": "sse",
      "url": "https://seo.hypa1m.xyz/mcp"
    }
  }
}
{
  "mcpServers": {
    "pa1m-seo": {
      "url": "https://seo.hypa1m.xyz/mcp"
    }
  }
}
extensions:
  "pa1m-seo":
    enabled: true
    name: "pa1m-seo"
    type: sse
    uri: "https://seo.hypa1m.xyz/mcp"
    timeout: 300

Quality 67 / 100needs work

protocol50 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • warn
    protocol.transportonly the legacy HTTP+SSE transport, deprecated until 2027-07-28
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene64 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length1 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • fail
    tools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: google_index_status (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); check_content (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); check_links (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
  • pass
    tools.token_costabout 6,606 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability100 · weight 15
  • pass
    stability.changesno tool changes in 30 days
  • pass
    stability.rug_pullno tool changed its meaning under the same name
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

36 tools, about 6,606 tokens to load them all · tool set 0839f7619b5a · checked 2026-10-20 11:40 UTC

Tool changes

No tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 73 / 100

no-repository
provenance35
liveness99
freshness85
hygiene80

+reachable +uptime-96% ~updated-85d-ago -no-repository

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://seo.hypa1m.xyz/mcp ssenoneyes96%947 ms2025-11-252026-10-20

Tools (36)

analyze_endpointFree-Form AI Analysis — $0.75 Ask any SEO question about a website in plain text. The AI agent reads cached audit data for the URL, selects the relevant audit categories, and returns a structured answer with evidence from the audit results. Examples: 'Why is my Core Web Vitals score low?', 'What is blocking my site from ranking?', 'Compare my mobile vs desktop performance', 'What structured data should I add?'. Requires: url + task (your question). Optional: language, deep=true for deeper analysis. Body: {"url": "https://example.com", "task": "Why is my page speed score low?", "language": "en"} ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
backlinks_checkVerify a backlink on one donor page — $0.02 Confirm that a single donor page really links to your domain. Fetches each donor page with full JavaScript rendering, so links injected client-side are still found, and reports per donor: the exact target links present, domain authority, spam score, and whether the donor page itself is indexed by Google — a live link on an unindexed page passes nothing. Use it after a link-building campaign to see which placements survived and which were quietly removed, nofollowed or deindexed. Runs as an async task — poll /backlinks/status/{task_id} (free) for the report. Body: {"donor_urls": ["https://donor.com/post"], "target_domains": ["yoursite.com"]} ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
backlinks_check_bulkVerify backlinks across up to 500 donor pages — $6.00 Audit up to 500 donor pages in one call ($0.012/donor). Fetches each donor page with full JavaScript rendering, so links injected client-side are still found, and reports per donor: the exact target links present, domain authority, spam score, and whether the donor page itself is indexed by Google — a live link on an unindexed page passes nothing. Use it after a link-building campaign to see which placements survived and which were quietly removed, nofollowed or deindexed. Runs as an async task — poll /backlinks/status/{task_id} (free) for the report. Body: {"donor_urls": ["https://donor.com/post"], "target_domains": ["yoursite.com"]} ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
backlinks_statusBacklink verification report — FREE Per-donor results: found target links, domain authority, spam score and the donor page's own indexation status. Free, 30 requests/min per IP. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
briefAI SEO Action Plan — $0.50 Takes a completed scan result and generates a prioritized Markdown action plan. Groups issues by severity (critical / high / medium / low), explains why each matters, and gives concrete implementation steps. Requires: job_id (from /scan/quick or /scan/full) + url. Optional: language (default 'en') for localized output, deep=true for more detail. Body: {"job_id": "...", "url": "https://example.com", "language": "en"} ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_accessibilityCheck WCAG 2.1 compliance — ARIA, contrast, keyboard navigation Runs automated WCAG 2.1 Level AA checks: color contrast ratios, ARIA landmark usage, form label associations, keyboard focus order, image alt text, and skip navigation links. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_ai_geoScore AI search visibility — GEO signals and LLM citation readiness Checks signals that influence visibility in AI-generated answers: FAQ/HowTo schema, clear factual statements, author expertise markup, citation-friendly content structure, and llms.txt presence. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_contentScore content quality — readability, thin pages and duplicate text Analyzes reading level (Flesch-Kincaid), detects thin content (under 300 words), near-duplicate pages, keyword stuffing, and content-to-HTML ratio. Returns per-page content quality scores. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_core_seoAudit title tags, meta descriptions, H1–H6 headings and canonical URLs Checks the fundamental on-page SEO elements: title tag length and uniqueness, meta description presence, heading hierarchy (H1–H6), canonical URL correctness, and keyword signals. Returns a score 0–100 with a list of issues and affected pages. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_crawlabilityDetect noindex tags, blocked resources and crawl budget waste Identifies pages accidentally marked noindex, resources blocked by robots.txt, pagination issues, duplicate URL variants (trailing slash, www/non-www), and crawl budget signals. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_eeatAssess E-E-A-T signals — expertise, authoritativeness, trustworthiness Looks for author bio markup, About/Contact pages, editorial policy, external citations, review signals, and other trust indicators that Google uses for E-E-A-T evaluation. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_htmlValidate HTML structure, semantic elements and document outline Checks DOCTYPE declaration, charset, viewport meta, deprecated tags, nesting errors, missing semantic landmarks (main, nav, header, footer), and duplicate IDs. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_i18nValidate hreflang tags, locale signals and international SEO setup Audits hreflang attribute syntax, self-referencing hreflang, return-tag presence, x-default usage, and Content-Language headers. Returns a list of hreflang errors per page. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_imagesCheck alt text, image formats, compression and lazy loading Audits every image for missing or empty alt attributes, non-WebP formats, oversized files, missing width/height attributes, and lazy loading. Returns a scored report with offending image URLs. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_js_renderingDetect content hidden behind JavaScript and render-blocking scripts Compares server-rendered HTML vs JS-rendered DOM to find content invisible to crawlers, identifies render-blocking scripts and stylesheets, and flags lazy-loaded content that may not be indexed. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_legalCheck privacy policy, cookie consent and Terms of Service presence Detects presence and accessibility of privacy policy, cookie consent mechanism, Terms of Service, GDPR/CCPA compliance signals, and data collection disclosures. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_linksFind broken links, orphan pages and weak internal linking Crawls all internal and external links, detects 404s, redirect chains, orphan pages with no inbound links, and anchor text diversity issues. Returns a list of broken URLs and linking gaps. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_mobileTest mobile usability — viewport, touch targets and font sizes Checks viewport meta tag, tap target spacing (minimum 48×48px), font size legibility (minimum 16px body), horizontal scroll issues, and mobile-specific render problems. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_performanceMeasure Core Web Vitals — LCP, CLS, FID — and overall page speed Runs Lighthouse-based performance checks: Largest Contentful Paint, Cumulative Layout Shift, First Input Delay, Time to First Byte, and resource load order. Returns per-metric scores and recommendations. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_redirectsMap redirect chains, loops and unnecessary 3xx hops Traces all redirects site-wide, detects chains longer than 2 hops, redirect loops, mixed HTTP/HTTPS redirects, and www/non-www inconsistencies. Returns a redirect map with hop counts. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_securityVerify HTTPS, security headers and mixed content issues Checks for HTTPS enforcement, HSTS, Content-Security-Policy, X-Frame-Options, Referrer-Policy, mixed content warnings, and exposed sensitive files. Returns a security score with specific header gaps. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_socialAudit Open Graph and Twitter/X card tags for social previews Checks og:title, og:description, og:image, twitter:card, twitter:image, and related tags. Validates image dimensions for social sharing and detects missing or malformed social metadata. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_structured_dataValidate Schema.org JSON-LD markup for rich result eligibility Parses all JSON-LD and Microdata on the page, validates against Schema.org specs, checks for required fields for rich results (Article, Product, FAQ, BreadcrumbList, etc.), and reports validation errors. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_technicalInspect robots.txt, XML sitemap and crawl configuration Validates robots.txt syntax, sitemap presence and freshness, correct disallow rules, crawl-delay settings, and sitemap–robots consistency. Returns issues that may block search engine crawlers. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
check_url_structureAnalyze URL depth, parameters and slug readability Checks URL length, directory depth, presence of dynamic parameters (?id=), special characters, uppercase letters, and keyword inclusion. Returns a list of URLs that violate best practices. Served from 24h cache when available (instant response). Otherwise starts a background scan and returns a job_id — poll /status/{job_id} until done. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
get_statusJob Status Poll until status='done'. Free endpoint. Returns status (pending|done|failed) and result JSON when complete. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
google_check_reportFull index-check report — FREE Per-URL indexed/not-indexed listing with titles. Free, 30 requests/min per IP. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
google_check_statusPoll an index-check task — FREE Progress and results of an index check. Free, 30 requests/min per IP. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
google_index_checkCheck if one URL is in Google's index — $0.02 Check a single URL's presence in Google's index. Returns a definitive in-index / not-in-index verdict per URL, plus the title Google holds for the page. An unindexed page earns no traffic and an unindexed backlink passes no weight, so this is the check that tells you whether published work is actually live in search. Runs as an async task — poll /google/check/status/{task_id} (free) for results. Body: {"urls": ["https://example.com/page"]} ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
google_index_check_bulkCheck up to 1000 URLs against Google's index — $12.00 Check up to 1000 URLs in one call ($0.012/URL). Returns a definitive in-index / not-in-index verdict per URL, plus the title Google holds for the page. An unindexed page earns no traffic and an unindexed backlink passes no weight, so this is the check that tells you whether published work is actually live in search. Runs as an async task — poll /google/check/status/{task_id} (free) for results. Body: {"urls": ["https://example.com/a", "https://example.com/b"]} ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
google_index_reportFinal per-URL indexation report — FREE Per-URL breakdown once the task completes: which URLs are in Google's index, which are not, page titles as Google holds them, and any fetch errors (-1 means a noindex meta tag was found; 404/502 are the page's own HTTP status). Free, 30 requests/min per IP. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
google_index_statusPoll a crawl-request task — FREE Progress of a crawl request: how many URLs were processed and how many have entered Google's index so far. Counts keep moving until the day-7 final report. Free, 30 requests/min per IP. ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
google_index_submitSend one URL to Google's crawler — $0.25 Request an on-demand mobile Googlebot crawl of a single URL. Agents cannot make Google crawl an arbitrary page — this endpoint does it. How it works: the URL is queued and a genuine mobile Googlebot crawl is driven to it. No link pyramids, no PBN, no spam networks, and no Search Console access required — so it works for URLs on domains you do not own: backlinks, guest posts, profile links, PDFs and third-party pages. Safe for fresh domains. Guaranteed: a real Googlebot visit to every submitted URL. Not guaranteed: entry into the index — that is Google's decision based on page quality, and typically 70%+ of submitted URLs are indexed. First movement shows in 48-72 hours; the final per-URL indexation report is ready on day 7. Priced per submitted URL, not per indexed URL. Poll /google/index/status/{task_id} (free) for progress and the final report. Body: {"urls": ["https://example.com/page"]} ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
google_index_submit_bulkSend up to 10 URLs to Google's crawler — $2.00 Request on-demand mobile Googlebot crawls for up to 10 URLs in one call ($0.20/URL). How it works: the URL is queued and a genuine mobile Googlebot crawl is driven to it. No link pyramids, no PBN, no spam networks, and no Search Console access required — so it works for URLs on domains you do not own: backlinks, guest posts, profile links, PDFs and third-party pages. Safe for fresh domains. Guaranteed: a real Googlebot visit to every submitted URL. Not guaranteed: entry into the index — that is Google's decision based on page quality, and typically 70%+ of submitted URLs are indexed. First movement shows in 48-72 hours; the final per-URL indexation report is ready on day 7. Priced per submitted URL, not per indexed URL. Poll /google/index/status/{task_id} (free) for progress and the final report. Body: {"urls": ["https://example.com/a", "https://example.com/b"]} ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
scan_fullFull SEO Audit — 500 pages, $5.00. One call replaces 500+ agent tool calls. Deep crawl up to 500 pages across all 20 SEO categories (200 rules). Recommended for large sites, e-commerce stores, or when quick scan misses critical pages. Returns a job_id immediately. Poll GET /status/{job_id} until status='done' (~2–15min). Same result structure as quick scan but with higher page coverage and more accurate averages. Body: {"url": "https://example.com"} ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json
scan_quickQuick SEO Audit — 50 pages, $0.50 Crawls up to 50 pages of a website and scores all 20 SEO categories (200 rules). Returns a job_id immediately. Poll GET /status/{job_id} every 5s until status='done' (~30–120s). The result JSON contains per-category scores (0–100), issue lists with severity, and page-level breakdowns. Use /brief or /analyze on the completed job for AI insights. Body: {"url": "https://example.com"} ### Responses: **200**: Successful Response (Success Response) Content-Type: application/json

Schemas: list_tools.

Similar MCP servers

More from io.github.retampweb

Official server.json
{
  "name": "io.github.retampweb/pa1m-seo",
  "title": "Pa1m SEO",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://seo.hypa1m.xyz/mcp",
      "type": "sse"
    }
  ],
  "version": "1.0.0",
  "description": "Pay-per-call SEO agent: keyword research, SERP analysis, on-page optimization. x402, USDC on Base."
}