Funktionen
Frag deine KI
Verbinde einen beliebigen MCP-Client wie Claude oder Cursor mit einem Lese-Token mit Runlight und frag in einfachen Worten nach deinen Statistiken.
Runlight hat einen eingebauten MCP-Server unter /runlight/mcp, direkt neben dem Dashboard. Sobald ein KI-Assistent damit verbunden ist, kannst du nach Dingen fragen, für die du sonst herumklicken müsstest, etwa wie die letzte Woche im Vergleich zur Woche davor lief, welche Seiten Leute von Google lesen, was konvertiert und ob die Spitze am Dienstag von Hacker News kam.
Der Server ist Teil von rl.routes(), er läuft also überall dort, wo dein Dashboard läuft.
Um direkt im Dashboard zu fragen, ohne eine eigene Assistenten-App, nutze den Assistenten hinter dem Roboter-Knopf. Er nutzt dieselben Werkzeuge mit einem Schlüssel, den du in den Einstellungen hinzufügst.
Ein Token erstellen
Geh im Dashboard zu Einstellungen und öffne API und KI. Benenne das Token nach dem, was es nutzen wird, etwa „Claude“ oder „Wöchentliches Skript“, und erstelle es. Wenn du mehrere Websites zählst, kannst du ein Token auf eine davon beschränken.
Kopiere das Token, sobald es erscheint. Runlight speichert nur einen Fingerabdruck davon und kann das Token daher nur dieses eine Mal zeigen. Die Seite füllt außerdem die Einrichtung unten mit deiner eigenen Adresse und deinem Token aus.
Ein Lese-Token, und das erstellt diese Seite, sofern du nichts anderes wählst, ändert nie etwas. Es sieht dieselben Zahlen, die das Dashboard zeigt, und kann Kurzlinks mit ihren Klicks auflisten, aber es kann keine Tokens erstellen oder löschen und weder deine Mail-Einstellungen noch Freigabelinks sehen. Ein Verwaltungs-Token ist auf eine Website beschränkt und kann außerdem die Ziele, Trichter, Kurzlinks, Link-Domains, E-Mail-Berichte und Freigabelinks dieser Website ändern, dazu ihren Namen, ihre Zeitzone und ihre Aufbewahrungsdauer, und Tickets für die Elementauswahl holen, wie in der API beschrieben. Ein eigenständiger Server bekommt eines, wenn er eine Website verbindet, du musst also selten eines von Hand erstellen. Die MCP-Werkzeuge lesen immer nur, egal welches Token ein Assistent hat. Ein Token, das du an derselben Stelle löschst, funktioniert sofort nicht mehr, und die Liste zeigt, wann jedes Token zuletzt genutzt wurde.
Deinen Assistenten verbinden
Ersetze in jedem dieser Beispiele die Adresse durch deine eigene und rl_... durch dein Token.
Für Claude Code führst du diesen Befehl aus.
bash
claude mcp add --transport http runlight https://example.com/runlight/mcp --header "Authorization: Bearer rl_..."Für Cursor fügst du das zu ~/.cursor/mcp.json oder zur .cursor/mcp.json eines Projekts hinzu.
json
{
"mcpServers": {
"runlight": {
"url": "https://example.com/runlight/mcp",
"headers": { "Authorization": "Bearer rl_..." }
}
}
}Für VS Code fügst du das zu .vscode/mcp.json hinzu.
json
{
"servers": {
"runlight": {
"type": "http",
"url": "https://example.com/runlight/mcp",
"headers": { "Authorization": "Bearer rl_..." }
}
}
}Claude Desktop verbindet sich über mcp-remote. Füge das zu claude_desktop_config.json hinzu.
json
{
"mcpServers": {
"runlight": {
"command": "npx",
"args": ["mcp-remote", "https://example.com/runlight/mcp", "--header", "Authorization:${AUTH_HEADER}"],
"env": { "AUTH_HEADER": "Bearer rl_..." }
}
}
}Jeder andere Client, der MCP über Streamable HTTP spricht und einen Header senden kann, funktioniert genauso.
Mit OAuth verbinden
Die Konnektoren in den Web-Apps von Claude und ChatGPT melden sich mit OAuth an statt mit einem eingefügten Token, und auch das unterstützt Runlight. Füge die Adresse deines MCP-Servers als benutzerdefinierten Konnektor hinzu. Die App schickt dich zu einer Runlight-Seite, die dich bittet, sie zu erlauben, nachdem du dich gegebenenfalls angemeldet hast, und auf der du sie auf eine Website beschränken kannst. Die App bekommt dann ein eigenes Lese-Token, das unter Einstellungen, API und KI mit „(OAuth)“ hinter seinem Namen erscheint. Wenn du es dort löschst, wird die App getrennt.
Der eigenständige Server braucht nichts weiter. In deiner eigenen App suchen OAuth-Clients außerdem nach zwei Dokumenten im Stammverzeichnis deiner Website. Leite daher auch /.well-known/oauth-authorization-server und /.well-known/oauth-protected-resource an Runlight weiter. In Next.js ist das eine weitere Routendatei.
app/.well-known/[...path]/route.ts
import { rl } from "@/lib/runlight";
export const { GET, OPTIONS } = rl.routes();Was es beantworten kann
| Werkzeug | Was es liest |
|---|---|
list_sites |
Die Websites, die das Token lesen kann, mit ihren Zeitzonen. |
get_stats |
Besucher, Besuche, Seitenaufrufe, Seiten pro Besuch, Absprungrate und Besuchsdauer, verglichen mit dem Zeitraum davor. |
get_timeseries |
Dieselben Zahlen nach Stunde, Tag, Woche oder Monat. |
get_breakdown |
Die Top-Seiten, Einstiegs- und Ausstiegsseiten, Verweise, Quellen, Kanäle, UTM-Tags, Länder, Regionen, Städte, Browser, Systeme, Geräte, Bildschirme, Sprachen, Ereignisse und KI-Agenten. |
get_visit_times |
Besuche nach Wochentag und Stunde. |
get_realtime |
Wie viele Personen gerade auf der Website sind, welche Seiten gelesen werden und woher Besuche kamen, nie wer. |
list_goals, get_goal |
Conversions, Raten und Umsatz für jedes Ziel, oder ein Ziel aufgeschlüsselt nach Kanal, Quelle und Seite. |
get_journeys |
Die Wege, die Besuche Schritt für Schritt durch die Website nehmen, auf Wunsch ab einer Seite oder bis zu einer Seite. |
list_funnels |
Die Schritte jedes Trichters und wie viele Besuche jeden erreicht haben. |
get_event_properties |
Die mit einem Ereignis gesendeten Werte, etwa welche Links geklickt oder welche Dateien heruntergeladen wurden. |
list_links |
Kurzlinks und ihre Klicks. |
Jedes Werkzeug nimmt die Zeiträume des Dashboards (today, 7d, 30d, month, last_month, 12mo, all und die übrigen) oder Daten an. Jedes nimmt außerdem einen Vergleich und Filter wie channel:is:Organic Search oder page:contains:/blog an. Assistenten lernen das aus den Beschreibungen der Werkzeuge, du kannst also einfach fragen.
Hier sind ein paar Dinge zum Ausprobieren.
- „Wie war der letzte Monat im Vergleich zum Monat davor, und was hat sich am meisten verändert?“
- „Welche Blogbeiträge lesen Leute von Google am längsten?“
- „Woher kommen die Besucher, die kaufen?“
- „Ist diese Woche etwas Ungewöhnliches passiert?“
Skripte
Dasselbe Token funktioniert mit der HTTP-API, du kannst es also in deinen eigenen Skripten und Dashboards nutzen.
bash
curl "https://example.com/runlight/api/stats?period=7d" -H "Authorization: Bearer rl_..."