Hermoso ist ein Marketing-MCP-Server: 922+ Tools über einen einzigen OAuth-geschützten Endpunkt. Damit kann ein Agent die Anzeigen recherchieren, die in einem Markt bereits laufen, fertige Bild- und Video-Anzeigen erstellen, sie veröffentlichen und die bezahlten Kampagnen dahinter aufbauen. Codex erreicht all das über eine einzige Verbindung. Diese Seite behandelt einen Ausschnitt davon: was Codex auf X tatsächlich tun kann und was X nicht zulässt.
Hermoso mit Codex verbinden
- Ein Befehl, und kein Schlüssel.
Codex liest die Marketplace-Datei im öffentlichen Repository von Hermoso und installiert dessen fünf Skills (research, ad-from-brand, generate, product-photoshoot und marketing). Die Skills führen den Befehlcodex plugin marketplace add hermoso-ai/hermoso && codex plugin add hermoso@hermosohermosoübernpxaus. Deshalb wird keine Tool-Liste in deine Sitzungen geladen, und nichts kostet Kontext, bis ein Befehl läuft. - Einmal anmelden.
Es öffnet sich eine Anmeldung im Browser, und es wird ein nur für den Besitzer lesbarer Zugang innpx -y hermoso auth login~/.hermoso/config.jsongespeichert. Kein Browser auf dem Rechner, etwa bei CI oder in einem Container? Erstelle einen Schlüssel unter MCP & CLI → Terminal- und API-Schlüssel und führenpx -y hermoso auth login --token hmk_…aus. Ein Schlüssel hat echte Ausgabenbefugnis, behandle ihn also wie ein Passwort. - Optional: der MCP-Server auch.
Das schreibt den Server incodex mcp add hermoso -- npx -y hermoso mcp~/.codex/config.tomlund liest dieselben gespeicherten Zugangsdaten, sodass kein Schlüssel in der Datei landet. Lieber den gehosteten Endpunkt? Danncodex mcp add hermoso --url https://app.hermoso.ai/mcpund danachcodex mcp login hermosofür die OAuth-Anmeldung. Die Skills erreichen jedes Tool auch ohne beides. - Bitte Codex um etwas. „Hol dir die längsten laufenden Anzeigen meiner drei nächsten Konkurrenten und bau den besten Hook in ein 9:16-Video um“ oder „Veröffentliche dieses Render im Kanal“. Der Agent wählt die Tools aus, du bestätigst die Ausgaben.
Codex speichert MCP-Server in ~/.codex/config.toml oder in .codex/config.toml in einem vertrauenswürdigen Projekt. Diese Datei ist TOML, nicht JSON: Ein kopierter mcpServers-Block lädt nicht, und ein von Hand geschriebener Eintrag ist [mcp_servers.hermoso] mit command = "npx" und args = ["-y", "hermoso", "mcp"]. Das abschließende mcp ist zwingend: npx -y hermoso ohne Unterbefehl zeigt nur die Hilfe und beendet sich. Codex liest Plugin-Marktplätze im selben .claude-plugin-Layout wie Claude Code, deshalb installiert ein Repository in beiden.
Verbinde danach X selbst einmal unter Einstellungen → Connectors in Hermoso. Das ist eine OAuth-Zustimmungsseite, deshalb ist es der eine Schritt, der einen Browser braucht. Alles danach ist ein Tool-Aufruf.
Die X-Tools, die Codex bekommt
post_to_x: postet Text, ein Bild oder ein Video mit Alt-Text, einen ganzen Thread, eine Antwort, einen Zitat-Post oder eine Umfrage und kann festlegen, wer antworten darf.post_x_article: veröffentlicht einen langen Artikel. Du schreibst ihn in Markdown, dann bleiben Überschriften, Listen, Zitate, Links, Codeblöcke und Tabellen erhalten.edit_x_post: überarbeitet einen bereits veröffentlichten Post innerhalb der Stunde, die X dafür erlaubt.schedule_post: stellt ihn in den gemeinsamen Kalender.x_post_metrics: die öffentlichen Zahlen eines Posts.x_post_insights: Zahlen in Werbequalität, aber nur für die letzten 28 Stunden: Impressionen, Link-Klicks, Profilbesuche, Videoaufrufe und Abschluss-Quartile.x_post_insights_historical: dieselben Zahlen für einen beliebigen Zeitraum, bis zu 25 Posts auf einmal. Das ist das Tool für „Wie lief der letzte Monat?“.x_mentions: wer über die Marke spricht.delete_x_post: entfernt einen Post.
X ist der einzige Connector, der pro Aufruf Geld kostet, und die Zahlen werden veröffentlicht statt versteckt. Meta, TikTok, LinkedIn, YouTube, Threads und Drive kosten pro Anfrage nichts. X berechnet uns etwas, deshalb verbrauchen diese Aufrufe jeweils ein paar Credits. Ein normaler Post kostet $0.015 pro Anfrage, ein Post mit Link $0.200, rund 13× mehr. Löschen, Lesen und das Schreiben von Alt-Text haben jeweils eigene Preise, und Insights werden pro zurückgegebenem Post berechnet. Die Link-Erkennung geht bewusst eher davon aus, dass ein Link drin ist, denn falsch zu liegen in die andere Richtung kostet uns das 13-Fache. Die praktische Folge: Auf X schlägt ein guter Post fünf, und dein Agent bekommt den Preis genannt, bevor er postet. Die Länge richtet sich nach dem Konto, das postet, und nicht nach festen 280 Zeichen. Hermoso liest das X-Abo des Kontos aus und lässt bis zu 25.000 Zeichen zu, wo Premium das erlaubt. Ein langer Post geht also ganz raus und wird nicht abgelehnt, und es wird nie gekürzt. Das ist zugleich die günstige Variante: Ein langer Post ist ein einziger berechneter X-Aufruf, während dieselben Worte auf fünf Posts verteilt fünf Aufrufe wären. X Premium schaltet außerdem zwei Dinge frei, die Hermoso für dich veröffentlicht: einen langen Artikel, in Markdown geschrieben, mit intakten Überschriften, Listen, Zitaten, Codeblöcken und Tabellen, und eine Bearbeitung eines bereits veröffentlichten Posts innerhalb der Stunde, die X erlaubt.
Limits von X, die du kennen solltest, bevor du etwas automatisierst
| Text | Die Länge richtet sich nach dem Konto, das postet: gewöhnlich 280 Zeichen, mit X Premium bis zu 25.000. Hermoso liest das Abo von X aus, sodass ein langer Post ganz rausgeht. Es wird nie gekürzt. Die Grenze wird beim Erstellen oder Einplanen geprüft. Ein zu langer Post wird daher abgelehnt, solange du noch da bist, um ihn zu korrigieren, statt auf dem Weg nach draußen stillschweigend abgeschnitten zu werden. |
|---|---|
| Sichtbarkeit | Nur öffentlich. Ein Post auf X ist in dem Moment öffentlich, in dem er existiert. Die API kennt weder Entwurf noch nicht gelistete Posts. Geschützte Konten gibt es zwar, das ist aber eine kontoweite Einstellung, die Hermoso weder liest noch steuert, keine Wahl pro Post. |
| Karussell | Abgelehnt, mit genau benanntem Grund. „X hat kein wischbares Karussell.“ Die API hängt bis zu 4 Medien an einen Post, und sie werden als Raster dargestellt, in dem alle Bilder gleichzeitig zu sehen sind und nichts zum Wischen da ist. Ein nummeriertes Folien-Deck mit „1/6 · WISCHEN“ lässt sich dort also nicht wie gedacht veröffentlichen. Die Ablehnung sagt, was stattdessen zu tun ist: „Veröffentliche nur die stärkste Folie auf X, oder nimm X aus diesem Post.“ Ein Deck, das den Leser zum Wischen auffordert und dann als Raster erscheint, ist schlechter als gar keine Veröffentlichung. |
| Welches Konto | Keine. X veröffentlicht auf das verbundene Konto. |
Probier es in Codex aus
Bitte es in ganz normaler Sprache. Das sind einfache Sätze, keine Befehlssprache:
„Nicht interaktiv: Veröffentliche pro Release ein X-Update unter 280 Zeichen, den Link nur in diesem einen Post, und protokolliere die abgerechneten Kosten.“
Das läuft so ab: get_brand → generate_text → post_to_x → x_post_insights_historical. Interaktiv zeigt Codex den Aufruf, bevor es ihn ausführt. Unbeaufsichtigt gibt es niemanden, der gefragt werden könnte. Das sollte man bei jedem Schritt berücksichtigen, der veröffentlicht oder Geld ausgibt.
Codex auf X: der heikle Teil
Plane das Budget hier bewusst. Jeder Post, jedes Löschen und jedes Lesen ist eine abgerechnete Anfrage, Insights werden pro zurückgegebenem Post berechnet, und ein Post mit Link kostet etwa das 13-Fache eines einfachen Posts. Für einen unbeaufsichtigten Job heißt das: ein Post pro Ereignis statt eines Threads, ein Link statt mehrerer und eine Obergrenze dafür, wie oft der Job laufen darf. Die Zeichengrenze ist eine saubere Ablehnung, ein fehlschlagender Job schlägt also laut fehl, statt etwas Halbgesagtes zu posten.
Für unbeaufsichtigte Läufe ist die hermoso-CLI mit --json besser als das vollständige Tool-Manifest. Sie ist im Kontext deutlich günstiger und lässt sich leichter prüfen.
X recherchieren, bevor du postest
Es gibt keine X-Anzeigenbibliothek zum Durchsuchen. Die X-Recherche hier betrifft dein eigenes Konto: Erwähnungen, Post-Zahlen und die historischen Zahlen für Werbetreibende. Der Rest der Recherche-Oberfläche bleibt unberührt: die Anzeigenbibliotheken von Meta, Google und LinkedIn sowie organisches TikTok, Instagram, YouTube, Reddit und Threads.
Die bezahlte Hälfte
X-Ads kamen im August 2026, damit ist X jetzt auf beiden Seiten. Die X-Ads-API ist ein eigenes Produkt auf einem eigenen Host mit eigener OAuth-1.0a-Signatur, deshalb kam sie später als der Rest. Hermoso baut darauf den ganzen Baum für beworbene Posts: Kampagne, Line Item (so nennt X eine Anzeigengruppe), beworbener Tweet, Targeting, Budgets, Status und Reporting. Eine X-Anzeige bewirbt einen Post, das Creative ist also ein Post, derselbe, den Hermoso organisch veröffentlicht. Der Schalter, der echtes Geld scharf schaltet, läuft nicht ohne ausdrückliche Bestätigung, genau wie bei den anderen elf Plattformen. Eine Sache solltest du wissen, bevor du ein Budget planst: X vergibt den Zugang zur Ads-API pro Werbekonto statt pro App. Deshalb gibt es dafür keinen OAuth-Button. Du fügst den X-Benutzer von Hermoso unter business.x.com → Kontozugriff zu deinem Werbekonto hinzu, und er erscheint dann in list_x_ads_accounts mit der Berechtigungsstufe, die X ihm gegeben hat.
Was Codex nicht allein kann
Ein Agent mit Budget ist nur nützlich, wenn der mögliche Schaden begrenzt ist, deshalb steht die Sperre im Server und nicht in einem Prompt. Jede Werbekampagne, jedes Anzeigenset, jede Anzeigengruppe und jede Anzeige wird pausiert angelegt, und die Statusumschaltungen, die echtes Geld scharf schalten, laufen nur mit einem ausdrücklichen Bestätigungs-Flag. Jedes Render wird zuerst bepreist (hermoso_capabilities nennt die genauen Credit-Kosten jedes Modells, bevor etwas ausgegeben wird). Credits werden vor dem ersten Aufruf des Anbieters reserviert und danach zum genauen Preis abgerechnet, sodass ein fehlgeschlagener Versand erstattet wird und du nicht für nichts belastet wirst. Löschungen sind ebenfalls bestätigungspflichtig, und jede Kampagnenstruktur wird von der Werbeplattform zurückgelesen, bevor dein Agent dir sagt, was er gebaut hat.
Ein Schritt ist bewusst nicht kopflos: einen Account zu verknüpfen ist ein OAuth-Zustimmungsbildschirm, du verbindest den Kanal also einmal im Browser. Alles danach ist ein Tool-Aufruf.
Der Rest der Matrix
Aus Codex posten auf: Facebook · Instagram · Threads · TikTok · YouTube · LinkedIn · Pinterest · Bluesky · Telegram. Oder siehe alles, wohin Codex veröffentlichen kann.
Auf X posten aus: Claude · ChatGPT · Claude Code · Cursor · Cline · OpenClaw · Grok Bot · Hermes · Gemini CLI · Perplexity · Le Chat · Claude Cowork · Perplexity Computer · Paperclip · Anzeigen von der Kommandozeile
Häufige Fragen
Kann Codex auf X posten?
Ja, mit dem Codex-Plugin von Hermoso. Führe codex plugin marketplace add hermoso-ai/hermoso && codex plugin add hermoso@hermoso aus, das installiert die Skills von Hermoso. Melde dich danach einmal mit npx -y hermoso auth login an. Die Anmeldung öffnet einen Browser und speichert die Zugangsdaten selbst, du musst also keinen Schlüssel erstellen und keinen einfügen. Für den MCP-Server führst du zusätzlich codex mcp add hermoso -- npx -y hermoso mcp aus. Codex hat dann 922+ Tools, darunter die, die auf X veröffentlichen, sowie die, die die Anzeigen recherchieren, die in deinem Markt schon laufen, und das Creative überhaupt erst rendern.
Wie verbinde ich X mit Codex?
Zwei Schritte, jeweils einmal. Führe codex plugin marketplace add hermoso-ai/hermoso && codex plugin add hermoso@hermoso aus, das installiert die Skills von Hermoso. Melde dich danach einmal mit npx -y hermoso auth login an. Die Anmeldung öffnet einen Browser und speichert die Zugangsdaten selbst, du musst also keinen Schlüssel erstellen und keinen einfügen. Für den MCP-Server führst du zusätzlich codex mcp add hermoso -- npx -y hermoso mcp aus. Verbinde danach X in Hermoso unter Einstellungen → Connectors. Das ist ein OAuth-Zustimmungsbildschirm im Browser. Danach veröffentlicht Codex auf X als ganz normaler Tool-Aufruf.
Kann Codex ein Karussell auf X posten?
Nein. Die X-API hängt bis zu vier Medien an einen Post, und sie werden als Raster dargestellt, in dem alle Bilder gleichzeitig zu sehen sind und nichts zum Wischen da ist. Ein nummeriertes Folien-Deck lässt sich dort daher nicht wie vorgesehen veröffentlichen. Codex ruft in beiden Fällen dasselbe Veröffentlichungs-Tool auf, und ein Kanal, der kein Karussell tragen kann, wird mit dem echten Grund abgelehnt.
Was kostet es, von Codex aus auf X zu posten?
X ist der einzige Connector, der Credits pro Aufruf abrechnet, weil X uns pro API-Anfrage berechnet: etwa $0.015 für einen Post und $0.200 für einen Post mit Link, also rund 13-mal mehr. Dein Agent bekommt den Preis genannt, bevor er postet. Die Pläne kosten $29, $69 und $149 im Monat für 1.200, 3.000 und 7.000 Credits, und jede Funktion ist in jedem Plan enthalten, auch im Free-Plan. Einzige Ausnahme ist SSO im Enterprise-Plan.
Braucht Codex mein X-Passwort?
Nein. Du verbindest X einmal mit Hermoso über eine OAuth-Zustimmungsseite im Browser, und Codex spricht X danach als Tool-Aufruf an. Das Konto zu verknüpfen ist der einzige Schritt, der keinen Browser umgehen kann. Danach braucht nichts mehr ein Passwort, und keine Zugangsdaten gelangen je zum Modell.
Kann Codex einen X-Post für später planen?
Ja. schedule_post stellt ihn in einen Kalender, den alle anderen Kanäle teilen, mit einer kanalspezifischen Bildunterschrift, falls der Text sich unterscheiden soll. list_scheduled und cancel_scheduled lesen ihn aus und ziehen ihn zurück. X ist einer von elf Kanälen mit Planung.
Starte kostenlos mit 30 Credits bei der Anmeldung, und du kannst 250+ weitere verdienen. Jede Funktion ist in jedem Plan enthalten.
Kostenlos starten → Preise ansehen