Pylon SEO

Audit, rank-track and analyze SEO for sites via an authenticated MCP server.

Sollte ich dies verwenden

Qualität und Sicherheit

A
Qualität der Beschreibung
94%
Vollständigkeit des Schemas
95%
Qualität der Benennung
100%
Risiko der Vergiftung
100%
Übereinstimmung der Berechtigungen
100%
Einhaltung des Protokolls
100%

Befunde (4)

  • LOWTool 'get_keyword_gaps' description lacks action verbin get_keyword_gaps
  • LOWTool 'get_cwv' description lacks action verbin get_cwv
  • LOWTool 'get_site_changes' description lacks action verbin get_site_changes
  • LOWTool 'submit_indexnow' description lacks action verbin submit_indexnow

Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.

Kontextkosten

~3,472Tokens (Tool-Definitionen)
~491 BTypische Antwortgröße
Erhebliche Auswirkung auf die Aufmerksamkeit (2.71% von 128k Kontext)

Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.

Installieren

Installation mit einem Klick

Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:

{
  "mcpServers": {
    "pylon-seo": {
      "url": "https://api.pylonseo.io/mcp"
    }
  }
}

Remote-Endpunkte

https://api.pylonseo.io/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (31)

🟢 Nur lesen🟡 Schreiben🔴 Löschen⚪ Unbekannt
🟢list_sites

List every SEO site in the authenticated user's organisation (id, name, domain, status, last audit timestamp). Use before any other tool to discover which site_ids are valid.

Eingabe-Schema

{
  "type": "object",
  "properties": {},
  "required": []
}
🟢get_site(site_id)

Get one site's metadata (name, domain, status, verification state, last-audit / last-scan timestamps).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_site_audit(site_id)

Latest SEO audit run for a site: overall + per-category scores and issue counts by severity.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_audit_issues(limit, severity, site_id)

Top issues from the latest audit run for a site. Optional filter by severity (critical|high|medium|low). Returns up to `limit` (default 25, max 200) instances.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Max issues to return (1-200)",
      "type": "integer"
    },
    "severity": {
      "description": "Optional severity filter",
      "enum": [
        "critical",
        "high",
        "medium",
        "low"
      ],
      "type": "string"
    },
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_score_history(site_id)

Daily audit score history for a site (used for trend lines). Returns the most recent 90 samples.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_keyword_rankings(site_id)

Tracked keyword positions + movement for a site (current + previous position, URL, country, device).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_serp_features(site_id)

Aggregate SERP-feature presence (AI Overview, Featured Snippet, People-Also-Ask, Local Pack, Video, Images, Shopping, Knowledge) across the site's tracked keywords, from the latest ranking run.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_rank_alerts(site_id)

Configured rank-drop alert rules for a site (thresholds + is_active flags).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_ai_overview_presence(site_id)

Google AI Overview coverage for a site: coverage %, delta vs previous run, per-intent buckets, per-keyword state (gained / lost / still-covered / not-covered).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_ai_visibility(site_id)

AI visibility overview for a site: measured mention rate across configured AI engines (OpenRouter / OpenAI / Anthropic / Gemini / Perplexity), current engine set, planned engines.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_prompt_research(site_id)

Per-prompt AI research for a site (target share, leader, rivals, opportunity bucket).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_gsc_metrics(dimension, limit, site_id, surface)

Google Search Console metrics for a site. `surface` = organic|ai_overview|ai_mode|discover_ai (default organic); `dimension` = query|page|country|device|date (default query).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "dimension": {
      "enum": [
        "query",
        "page",
        "country",
        "device",
        "date"
      ],
      "type": "string"
    },
    "limit": {
      "description": "Max rows (1-500, default 50)",
      "type": "integer"
    },
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    },
    "surface": {
      "enum": [
        "organic",
        "ai_overview",
        "ai_mode",
        "discover_ai"
      ],
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_bing_metrics(dimension, limit, site_id)

Bing Webmaster Tools metrics for a site (organic; Bing has no Copilot API split). `dimension` = query|page|country|device|date (default query).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "dimension": {
      "enum": [
        "query",
        "page",
        "country",
        "device",
        "date"
      ],
      "type": "string"
    },
    "limit": {
      "description": "Max rows (1-500, default 50)",
      "type": "integer"
    },
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_competitors(site_id)

Tracked competitors for a site with their latest snapshot (domain authority, visibility, organic keywords, estimated traffic, backlinks).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_keyword_gaps(site_id)

Top keyword-gap opportunities (keywords a competitor ranks for and the site does not, ordered by opportunity score).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_backlinks_domains(site_id)

Top referring domains for a site with the Pylon-computed 0-100 authority score.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_content_grade(site_id, url)

Cached content-grade summary for a URL on a site (from the on-page grader).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    },
    "url": {
      "description": "Exact URL to look up",
      "type": "string"
    }
  },
  "required": [
    "site_id",
    "url"
  ]
}
🟢get_cwv(site_id)

Core Web Vitals (LCP, CLS, INP, FCP, TTFB) for a site from PageSpeed Insights — mobile + desktop snapshots.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_site_changes(site_id)

Recent SEO changes detected between the two most recent crawls (title / meta / h1 / canonical / indexability / status code).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_scan_pages(limit, site_id)

Newest pages from a site's latest crawl (status code, response time, size, depth, indexable). Windowed at 200 rows.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "limit": {
      "description": "Max rows (1-200, default 50)",
      "type": "integer"
    },
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_market_analysis(site_id)

Market analysis overview for a site: tracked keyword demand aggregates, competitive concentration and provenance chips.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢get_local_seo(site_id)

Local SEO overview for a site (rank-tracker with local intent). Returns tracked local keywords + rival domains + AI-only rivals.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🟢list_reports(kind, limit, site_id)

List stored report runs for the caller's organisation. Optional filter by `site_id` and `kind` (overview|seo_audit|rankings|competitors|ai_visibility).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "kind": {
      "description": "Optional kind filter",
      "type": "string"
    },
    "limit": {
      "description": "Max rows (1-100, default 25)",
      "type": "integer"
    },
    "site_id": {
      "description": "Optional UUID to filter by site",
      "type": "string"
    }
  },
  "required": []
}
🟢get_plans

Pylon SEO plans and the caller's entitlement: the paid catalogue (Growth / Agency, monthly / yearly) with USD + INR prices, site limits, credits and features, plus the caller's current plan, site usage and trial state, and the website pricing_url where plans are purchased.

Eingabe-Schema

{
  "type": "object",
  "properties": {},
  "required": []
}
🟡add_keyword(country_code, intent, keyword, site_id)

Track a new keyword for a site. `keyword` and `country_code` (ISO-3166-1 alpha-2, e.g. 'us') are required; `intent` (informational|commercial|transactional|navigational) is optional and estimated when omitted.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "country_code": {
      "description": "ISO-3166-1 alpha-2 (us / in / gb / de / fr / ca / au)",
      "type": "string"
    },
    "intent": {
      "description": "Optional intent",
      "type": "string"
    },
    "keyword": {
      "description": "Keyword text (1-200 chars)",
      "type": "string"
    },
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id",
    "keyword",
    "country_code"
  ]
}
🟡add_competitor(domain, label, site_id)

Track a new competitor for a site by its bare domain (no protocol). Discovery scan is enqueued asynchronously.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "domain": {
      "description": "Bare domain (e.g. example.com)",
      "type": "string"
    },
    "label": {
      "description": "Optional human-friendly label",
      "type": "string"
    },
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id",
    "domain"
  ]
}
🔴add_rank_alert(drop_threshold, site_id)

Configure a rank-drop alert rule for a site. `drop_threshold` (positive int) fires when any tracked keyword drops that many positions between runs.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "drop_threshold": {
      "description": "Positions dropped between runs to fire (1-100)",
      "type": "integer"
    },
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id",
    "drop_threshold"
  ]
}
⚪start_scan(site_id)

Enqueue a fresh crawl + audit run for a site. Idempotent: a running / queued run short-circuits.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
⚪start_ranking_run(site_id)

Enqueue a keyword-rankings sweep for a site (resolves every tracked keyword's SERP position).

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    }
  },
  "required": [
    "site_id"
  ]
}
🔴submit_indexnow(confirm_token, site_id, urls)

Push a URL batch to IndexNow (Bing/Yandex/Naver/Seznam) for a site. Requires an existing verified IndexNow key. All URLs must share the site's host.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "confirm_token": {
      "description": "Single-use token from the preview call. Omit to preview; include to submit.",
      "type": "string"
    },
    "site_id": {
      "description": "UUID of the site",
      "type": "string"
    },
    "urls": {
      "description": "URL list (1-1000)",
      "items": {
        "type": "string"
      },
      "type": "array"
    }
  },
  "required": [
    "site_id",
    "urls"
  ]
}
🟢run_public_scan(url)

Run the anonymous single-URL SEO checker (public). Returns the same audit shape logged-in users see. Rate-limited per anonymous identity.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "url": {
      "description": "Full URL to scan (https://example.com/path)",
      "type": "string"
    }
  },
  "required": [
    "url"
  ]
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet31 Tools