Populr SEO

Apply the SEO fixes you approve in Populr — titles, descriptions, JSON-LD, llms.txt — in your code.

Sollte ich dies verwenden

Qualität und Sicherheit

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

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

Kontextkosten

~1,699Tokens (Tool-Definitionen)
~1.9 KBTypische Antwortgröße
Mittlere Auswirkung auf die Aufmerksamkeit (1.33% 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": {
    "seo": {
      "url": "https://www.trypopulr.in/api/mcp"
    }
  }
}

Remote-Endpunkte

https://www.trypopulr.in/api/mcpstreamable-http

Was es kann

Tool-Inventar

Tools (7)

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

Start here. Shows the site Populr manages for this workspace, which page fixes are approved and ready to apply in code, which are waiting for the owner's approval, and whether the business details for structured data are filled in.

Eingabe-Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "ready",
        "not_set_up"
      ]
    },
    "message": {
      "type": "string",
      "description": "Why the status isn't the usual one, in a sentence."
    },
    "site": {
      "type": "string"
    },
    "business": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string"
        },
        "name": {
          "type": "string"
        }
      },
      "description": "Present once the business details for structured data are filled in."
    },
    "faqCount": {
      "type": "integer"
    },
    "approvedPages": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Pages with approved fixes, ready to apply in code."
    },
    "waitingPages": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Pages with drafts waiting for the owner's approval in Populr."
    },
    "snippet": {
      "type": "object",
      "properties": {
        "enabled": {
          "type": "boolean"
        },
        "seenOnPages": {
          "type": "integer"
        }
      }
    }
  },
  "required": [
    "status"
  ]
}
🟢get_seo_fixes(path)

Returns the SEO changes the site owner has approved in Populr — each page's <title>, meta description and JSON-LD structured data — so you can apply them in the site's source code. Pass a path for one page, or omit it for every page.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "A page path such as / or /about. Omit for all pages."
    }
  },
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "ok",
        "not_set_up",
        "unknown_page"
      ]
    },
    "message": {
      "type": "string",
      "description": "Why the status isn't the usual one, in a sentence."
    },
    "site": {
      "type": "string"
    },
    "pages": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "path": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "description": {
            "type": "string"
          },
          "jsonld": {
            "type": "array",
            "items": {
              "type": "object"
            }
          }
        },
        "required": [
          "path",
          "jsonld"
        ]
      },
      "description": "Approved changes per page. A missing title or description means no approved change."
    }
  },
  "required": [
    "status"
  ]
}
🟢get_structured_data(path)

Returns schema.org JSON-LD for a page, built only from the business details the owner entered in Populr (name, type, contact, address, hours, profiles; FAQs on the home page). Ready to paste into the page's <head>.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "Page path, default /"
    }
  },
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "ok",
        "not_set_up",
        "needs_business_details"
      ]
    },
    "message": {
      "type": "string",
      "description": "Why the status isn't the usual one, in a sentence."
    },
    "path": {
      "type": "string"
    },
    "jsonld": {
      "type": "array",
      "items": {
        "type": "object"
      },
      "description": "schema.org JSON-LD objects for the page."
    }
  },
  "required": [
    "status"
  ]
}
🟢audit_page(url)

Fetches a live page and checks its on-page SEO: title length, meta description, H1, canonical, viewport, Open Graph and structured data. Returns each problem with why it matters.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "Full public URL, e.g. https://example.com/about"
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "ok"
      ]
    },
    "message": {
      "type": "string",
      "description": "Why the status isn't the usual one, in a sentence."
    },
    "url": {
      "type": "string"
    },
    "signals": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "value": {
            "type": "string"
          },
          "verdict": {
            "type": "string",
            "enum": [
              "pass",
              "warn",
              "fail"
            ]
          }
        },
        "required": [
          "label",
          "value",
          "verdict"
        ]
      }
    },
    "issues": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "severity": {
            "type": "string",
            "enum": [
              "warning",
              "error"
            ]
          },
          "title": {
            "type": "string"
          },
          "detail": {
            "type": "string"
          }
        },
        "required": [
          "severity",
          "title",
          "detail"
        ]
      }
    }
  },
  "required": [
    "status"
  ]
}
⚪draft_page_fix(path)

Reads one page of the managed site and drafts a better <title> and meta description from what the page actually says. The draft is saved in Populr for the owner to approve; nothing changes on the live site.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "path": {
      "type": "string",
      "description": "Page path on the managed site, e.g. /pricing"
    }
  },
  "required": [
    "path"
  ],
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "saved",
        "not_saved_already_approved",
        "not_set_up"
      ]
    },
    "message": {
      "type": "string",
      "description": "Why the status isn't the usual one, in a sentence."
    },
    "path": {
      "type": "string"
    },
    "title": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "before": {
      "type": "object",
      "properties": {
        "title": {
          "type": "string"
        },
        "description": {
          "type": "string"
        }
      },
      "description": "What the live page has now."
    }
  },
  "required": [
    "status"
  ]
}
🟢generate_llms_txt

Builds an llms.txt for the managed site from the owner's business details and the approved page titles and descriptions — a plain map of the site for AI assistants. Save it at the site root as /llms.txt.

Eingabe-Schema

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "ok",
        "not_set_up",
        "needs_business_details"
      ]
    },
    "message": {
      "type": "string",
      "description": "Why the status isn't the usual one, in a sentence."
    },
    "site": {
      "type": "string"
    },
    "content": {
      "type": "string",
      "description": "The llms.txt file. Save it at the site root (public/llms.txt in most frameworks)."
    }
  },
  "required": [
    "status"
  ]
}
🟢verify_page(url)

Fetches a live page of the managed site and checks that its approved title, description and structured data are present in the HTML as served. Use after deploying.

Eingabe-Schema

{
  "type": "object",
  "properties": {
    "url": {
      "type": "string",
      "description": "Live URL of a page on the managed site"
    }
  },
  "required": [
    "url"
  ],
  "additionalProperties": false
}

Ausgabe-Schema

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "live",
        "missing_changes",
        "no_approved_fixes",
        "not_set_up"
      ]
    },
    "message": {
      "type": "string",
      "description": "Why the status isn't the usual one, in a sentence."
    },
    "url": {
      "type": "string"
    },
    "checks": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "label": {
            "type": "string"
          },
          "ok": {
            "type": "boolean"
          }
        },
        "required": [
          "label",
          "ok"
        ]
      }
    },
    "missing": {
      "type": "integer",
      "description": "How many approved changes aren't in the served HTML yet."
    }
  },
  "required": [
    "status"
  ]
}

Community

Diesen Server bewerten

Nachweis

Aktuelle Beobachtungen

verifiziertVersion nicht aufgezeichnet7 Tools