https://api.so-me.studio/mcp) registriert und kann von
jedem authentifizierten Agenten mit seinem X-API-Key aufgerufen werden.
Alle 205 Tools sind über den einen öffentlichen MCP-Endpunkt verfügbar — es gibt keine separate Admin-
MCP-Oberfläche. Tools wie
create_tenant, delete_tenant und list_tenants sind normale
Workspace-Tools, die auf den authentifizierten Benutzer beschränkt sind.Die Controller admin/mcp-tool-costs und api-access/mcp sind JWT-geschützte Dashboard-Routen,
mit denen Credit-Kosten pro Tool und Nutzungsprotokolle eingesehen bzw. bearbeitet werden — sie stellen keine zusätzlichen
MCP-Tools bereit.Jeder Tool-Aufruf verbraucht Tarif-Credits und zählt auf dein Rate Limit pro Minute. Die Kosten
prüfst du zur Laufzeit mit
list_mcp_tools und dein verbleibendes Guthaben mit
get_mcp_usage. Credit-Stufen: 1 lesen/auflisten/abrufen, 2 schreiben/ändern/löschen,
3 Analysen, 5 KI-Text, 8 KI-Bild, 10 zusammengesetzte KI-Aktionen.Gemeinsame Enums
Diese Enum-Werte werden in vielen Tools wiederverwendet.platform (PLATFORM_ENUM)
platform (PLATFORM_ENUM)
TWITTER, INSTAGRAM, LINKEDIN, FACEBOOK, TIKTOK, YOUTUBE, THREADS, DRIBBBLE,
PINTEREST, WHATSAPP, LINKEDIN_PAGEstatus (STATUS_ENUM)
status (STATUS_ENUM)
POSTED, SCHEDULED, PENDING, FAILED, PENDING_APPROVAL, REJECTEDpostType (POST_TYPE_ENUM)
postType (POST_TYPE_ENUM)
TEXT, IMAGE, MULTIPLE_IMAGES, VIDEO, CAROUSEL, REEL, STORYDie Paginierungs-Standardwerte sind bei allen Listen-Tools einheitlich:
page ist standardmäßig 1, limit standardmäßig
20 (max. 100), sofern ein Tool kein anderes Schema dokumentiert (z. B. cursor- oder offsetbasiert).Beiträge (11 Tools)
Veröffentlichungs-Workflow
Die schreibenden Tools akzeptieren nebentext, fileIds und scheduledAt drei optionale Felder: threadParts, firstComment und tiktok. Die Tool-Beschreibungen erklären, was jedes Feld bewirkt; dieser Abschnitt zeigt die empfohlene Reihenfolge für einen Agenten, der im Namen eines Benutzers veröffentlicht.
1
Zuerst die Medien prüfen
Wurden die Medien vom Agenten generiert, bearbeitet oder ausgewählt, rufe vor
create_post oder schedule_post validate_post_media mit den
vorgesehenen targets auf. Das Tool liefert pro Ziel
die gemessene Breite, Höhe, Dauer, den Codec und die Bildrate, die konfigurierten Limits und einen fix-String
für jede Abweichung. Wende den Fix an und validiere erneut, wenn der Agent die Datei erzeugt hat; zeige
den Bericht und lass den Benutzer entscheiden, wenn der Benutzer sie bereitgestellt hat. Sende nur gemessene Werte — jede
ausgelassene Eigenschaft kommt als needs_review statt als bestanden zurück. get_media_rules liefert die
vollständige Tabelle pro Plattform und ist der günstigste Weg, Medien von Anfang an in der richtigen Größe zu erzeugen.2
Uploads bestätigen
presign_media_upload reserviert Dateien in der Mediathek und liefert PUT-URLs. Jeder PUT muss einen
Content-Type-Header senden, der dem angegebenen mimetype entspricht, sonst antwortet der Speicher mit 403. Der Upload ist
erst abgeschlossen, wenn die Bytes gespeichert sind: Rufe get_media_file mit verifyUpload: true auf, bevor du
die Datei an einen Beitrag anhängst.3
TikTok: den Creator fragen, niemals raten
TikTok lehnt jeden Beitrag ohne Datenschutzstufe ab, und nur der Creator darf sie wählen. Rufe
get_tiktok_creator_info für das Zielkonto auf, biete dem Benutzer nur die Werte an, die in
privacy_level_options zurückkommen (ein privates Konto kann PUBLIC_TO_EVERYONE nicht wählen), schlage
PUBLIC_TO_EVERYONE für ein öffentliches Konto vor, frage, ob Kommentare erlaubt sind, und sende dann
{ privacyLevel, allowComments, allowDuet, allowStitch } im Objekt tiktok. Ein Beitrag ohne
tiktok.privacyLevel wird mit TIKTOK_PRIVACY_LEVEL_REQUIRED abgelehnt; eine Stufe, die der Creator nicht
nutzen kann, liefert TIKTOK_PRIVACY_LEVEL_NOT_ALLOWED. Eine Warnung TIKTOK_SETTING_FORCED bedeutet, dass der Creator
Kommentare, Duett oder Stitch kontoweit deaktiviert hat — gib das an den Benutzer weiter.4
Ketten und erste Kommentare
threadParts erstellt eine Beitragskette mit mehreren Beiträgen nur auf X, Threads, Bluesky und Mastodon: text ist
der Kopf und threadParts[0] die erste Antwort. Die Veröffentlichung nach dem Kopf erfolgt nach bestem Bemühen; melde
metaData.threadPartWarning, falls gesetzt, und veröffentliche den Kopf niemals erneut. firstComment postet einen
Kommentar unter den Beitrag (bei einer Kette unter den letzten Teil) auf Facebook, Instagram, X, LinkedIn,
LinkedIn Page, Threads, YouTube, TikTok, Bluesky und Mastodon (TikTok braucht den aktivierten Kommentarzugriff
des Kontos unter „Konten“). Prüfe capabilities.firstComment bei list_accounts, bevor du es
zusagst — ein nicht unterstütztes Ziel wird trotzdem veröffentlicht und liefert eine Warnung FIRST_COMMENT_UNSUPPORTED.
Lies firstCommentStatus des Beitrags, bevor du den Kommentar als live bezeichnest.Beitragskommentare (5 Tools)
Entwürfe (6 Tools)
Konten (3 Tools)
Medien (13 Tools)
Posteingang (18 Tools)
Freigaben (4 Tools)
Teams (6 Tools)
Biolinks (19 Tools)
KI-Inhalte (10 Tools)
KI-Video / UGC (9 Tools)
Analysen (26 Tools)
Plattformübergreifend & pro Beitrag
Analysen pro Plattform
days ist bei jedem Analyse-Tool standardmäßig 7 (Rückblickzeitraum).Beste Veröffentlichungszeit (3 Tools)
Benachrichtigungen (5 Tools)
Wissen / RAG (6 Tools)
Bei
create_knowledge ist fileId für die Quelltypen pdf/image/text_file erforderlich, und
body ist für note erforderlich.Canva (4 Tools)
Vorlagen (3 Tools)
Hilfe & Support (5 Tools)
WhatsApp (6 Tools)
Integrations-Helfer (9 Tools)
Plattformspezifische Ziele (Boards, Kanäle, Subreddits, Standorte) vor der Veröffentlichung auflösen.Webhooks (10 Tools)
Webhook-
categories akzeptieren: post, inbox, account, subscription, ai, team, support.
Der Zustell-Filter status akzeptiert: pending, success, retrying, failed.
TWITTER,INSTAGRAM,LINKEDIN,LINKEDIN_PAGE,FACEBOOK,TIKTOK,YOUTUBE,THREADS,WHATSAPP,DRIBBBLE,PINTEREST