https://api.so-me.studio/mcp) et peut être appelé
par tout agent authentifié avec son X-API-Key.
Les 205 outils sont disponibles sur l’unique point de terminaison MCP public — il n’y a aucune surface MCP
d’administration séparée. Des outils comme
create_tenant, delete_tenant et list_tenants sont des outils
d’espace de travail ordinaires, limités à l’utilisateur authentifié.Les contrôleurs admin/mcp-tool-costs et api-access/mcp sont des routes de tableau de bord protégées par JWT,
utilisées pour consulter/modifier les coûts en crédits par outil et les journaux d’utilisation — ils n’exposent pas d’outils
MCP supplémentaires.Chaque appel d’outil consomme des crédits de votre forfait et compte dans votre limite de débit par minute. Consultez
les coûts à l’exécution avec
list_mcp_tools et votre solde restant avec
get_mcp_usage. Niveaux de crédits : 1 lecture/liste/consultation, 2 écriture/modification/suppression,
3 statistiques, 5 texte IA, 8 image IA, 10 actions IA composées.Énumérations communes
Ces valeurs d’énumération sont réutilisées par de nombreux outils.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, STORYLes valeurs de pagination par défaut sont cohérentes pour tous les outils de liste :
page vaut 1 par défaut, limit vaut 20
(max 100), sauf si un outil documente un autre schéma (par ex. pagination par curseur ou par décalage).Publications (11 outils)
Workflow de publication
Les outils d’écriture acceptent trois champs facultatifs en plus detext, fileIds et scheduledAt : threadParts, firstComment et tiktok. Les descriptions des outils indiquent ce que fait chaque champ ; cette section présente l’ordre d’opérations recommandé pour un agent qui publie au nom d’un utilisateur.
1
Vérifier d'abord les médias
Lorsque le média a été généré, modifié ou choisi par l’agent, appelez
validate_post_media avec les
targets prévues avant create_post ou schedule_post. Il renvoie, pour chaque destination, la
largeur, la hauteur, la durée, le codec et la fréquence d’images mesurés, les limites configurées, et une chaîne fix
pour chaque écart. Appliquez la correction et validez à nouveau lorsque l’agent a produit le fichier ; affichez
le rapport et laissez l’utilisateur décider lorsque c’est lui qui l’a fourni. N’envoyez que des valeurs mesurées — chaque
propriété omise ressort en needs_review plutôt qu’en réussite. get_media_rules renvoie le tableau
complet par plateforme, ce qui est le moyen le plus économique de générer d’emblée des médias à la bonne taille.2
Confirmer les téléversements
presign_media_upload réserve des fichiers de la bibliothèque et renvoie des URL PUT. Chaque PUT doit envoyer un
en-tête Content-Type égal au mimetype déclaré, sinon le stockage répond 403. Le téléversement n’est
terminé qu’une fois les octets stockés : appelez get_media_file avec verifyUpload: true avant de
joindre le fichier à une publication.3
TikTok : demander au créateur, ne jamais deviner
TikTok rejette toute publication sans niveau de confidentialité, et seul le créateur peut le choisir. Appelez
get_tiktok_creator_info pour le compte cible, ne proposez à l’utilisateur que les valeurs renvoyées dans
privacy_level_options (un compte privé ne peut pas choisir PUBLIC_TO_EVERYONE), suggérez
PUBLIC_TO_EVERYONE pour un compte public, demandez si les commentaires sont autorisés, puis envoyez
{ privacyLevel, allowComments, allowDuet, allowStitch } dans l’objet tiktok. Une publication sans
tiktok.privacyLevel est rejetée avec TIKTOK_PRIVACY_LEVEL_REQUIRED ; un niveau que le créateur ne peut pas
utiliser renvoie TIKTOK_PRIVACY_LEVEL_NOT_ALLOWED. Un avertissement TIKTOK_SETTING_FORCED signifie que le créateur
a désactivé les commentaires, le duo ou le stitch pour tout le compte — répétez-le à l’utilisateur.4
Fils et premiers commentaires
threadParts construit une chaîne de plusieurs publications sur X, Threads, Bluesky et Mastodon uniquement : text est
la tête et threadParts[0] est la première réponse. La publication au-delà de la tête se fait au mieux ; signalez
metaData.threadPartWarning s’il est défini et ne republiez jamais la tête. firstComment publie un
commentaire sous la publication (sous la dernière partie d’une chaîne) sur Facebook, Instagram, X, LinkedIn,
LinkedIn Page, Threads, YouTube, TikTok, Bluesky et Mastodon (TikTok nécessite que l’accès aux commentaires du compte soit
activé dans Comptes). Vérifiez capabilities.firstComment dans list_accounts avant de
le promettre — une cible non prise en charge publie quand même et renvoie un avertissement FIRST_COMMENT_UNSUPPORTED.
Lisez firstCommentStatus sur la publication avant d’annoncer que le commentaire est en ligne.Commentaires de publication (5 outils)
Brouillons (6 outils)
Comptes (3 outils)
Médias (13 outils)
Boîte de réception (18 outils)
Approbations (4 outils)
Équipes (6 outils)
Biolinks (19 outils)
Contenu IA (10 outils)
Vidéo IA / UGC (9 outils)
Statistiques (26 outils)
Multi-plateformes et par publication
Statistiques par plateforme
days vaut 7 par défaut (période d’analyse) pour chaque outil de statistiques.Meilleur moment pour publier (3 outils)
Notifications (5 outils)
Connaissances / RAG (6 outils)
Pour
create_knowledge, fileId est obligatoire pour les types de source pdf/image/text_file, et
body est obligatoire pour note.Canva (4 outils)
Modèles (3 outils)
Aide et support (5 outils)
WhatsApp (6 outils)
Aides à l’intégration (9 outils)
Résolvez les cibles propres à chaque plateforme (tableaux, canaux, subreddits, établissements) avant de publier.Webhooks (10 outils)
Les
categories de webhook acceptent : post, inbox, account, subscription, ai, team, support.
Le filtre status des livraisons accepte : pending, success, retrying, failed.
TWITTER,INSTAGRAM,LINKEDIN,LINKEDIN_PAGE,FACEBOOK,TIKTOK,YOUTUBE,THREADS,WHATSAPP,DRIBBBLE,PINTEREST