MCP

Araç referansı

More.You MCP sunucusunun sunduğu her araç; girdileri, dönüş yapısı ve kopyalayıp yapıştırabileceğiniz bir örnekle.

Kimlik doğrulama

https://mcp.more.you/api adresine yapılan her istek, Bearer anahtarı içeren bir Authorization başlığı gerektirir. Anahtarı almanın iki yolu var.

OAuth (yapay zeka istemcileri için önerilir)

Yapay zeka istemcileri ilk bağlanışta Dynamic Client Registration çalıştırır, ardından kullanıcıyı bir OAuth onay ekranından geçirir. /mcp/connect sayfası bunu otomatik yapar. İstemciniz 30 günlük bir erişim anahtarı alır.

API anahtarı

Betikler ve CI için More.You uygulamasında Hesap → API Anahtarları bölümünden kişisel bir API anahtarı oluşturun. Anahtar apikey_ ile başlar ve diğerleri gibi bir Bearer anahtarı olarak gönderilir.

Uç nokta

Tüm araç çağrıları, HTTPS POST üzerinden tek bir JSON-RPC 2.0 uç noktasına gider.

POST https://mcp.more.you/api

Araçlar

list_scheduled_posts

Zamanlanmış gönderilerinizi listeleyin (yayın için sırada ama henüz gönderilmemiş).

Argümanlar

limitnumber ·isteğe bağlı · varsayılan 20
Döndürülecek en fazla sonuç (1-100, varsayılan 20).
fromstring (ISO 8601) ·isteğe bağlı
ISO zaman damgası; yalnızca bu zamanda veya sonrasında zamanlanmış gönderileri döndürür.

Dönüş

posts: [{id, platform, content, scheduledAt, status}] içeren bir nesne. En fazla limit kadar sonuç.

Örnek

curl -X POST https://mcp.more.you/api \
  -H "Authorization: Bearer apikey_xxx" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","method":"tools/call","id":1,
       "params":{"name":"list_scheduled_posts",
                 "arguments":{"limit":5}}}'

list_drafts

Taslak gönderilerinizi listeleyin (henüz zamanlanmamış).

Argümanlar

limitnumber ·isteğe bağlı · varsayılan 20
Döndürülecek en fazla sonuç (1-100, varsayılan 20).

Dönüş

drafts: [{id, platform, content, updatedAt}] içeren bir nesne. En fazla limit kadar sonuç.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":2,
 "params":{"name":"list_drafts","arguments":{"limit":10}}}

list_connected_accounts

Ekibinize bağlı sosyal medya hesaplarını listeleyin.

Argümanlar

Argüman yok.

Dönüş

accounts: [{platform, handle, connected, lastSyncAt}] içeren bir nesne.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":3,
 "params":{"name":"list_connected_accounts","arguments":{}}}

get_account_healthÜcretli plan

Bağlı tüm platformlar için bir sağlık özeti alın.

Argümanlar

platformenum ·isteğe bağlı
Sosyal platform: twitter, instagram, linkedin, threads veya tiktok.
windowDays7 | 30 | 90 ·isteğe bağlı · varsayılan 30
Geriye dönük pencere (gün): 7, 30 veya 90 (varsayılan 30).

Dönüş

windowDays, postsScheduled, postsPublished, postsFailed, byPlatform dökümü ve topErrors[] içeren bir nesne.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":4,
 "params":{"name":"get_account_health",
           "arguments":{"windowDays":30}}}

create_post_draft

Yeni bir taslak gönderi oluşturun. Taslaklar otomatik yayınlanmaz.

Argümanlar

platformenum ·zorunlu
Sosyal platform: twitter, instagram, linkedin, threads veya tiktok.
contentstring ·zorunlu
Gönderi metni (1-2200 karakter).
mediaUrlsarray<string> ·isteğe bağlı
En fazla 10 görsel/video URL'si.
clientRequestIdstring ·isteğe bağlı
İsteğe bağlı idempotency anahtarı. 5 dakika içinde aynı anahtar, önbellekteki sonucu döndürür.

Dönüş

Yeni taslağı içeren bir nesne: {id, platform, content, status: "DRAFT", createdAt}.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":5,
 "params":{"name":"create_post_draft",
           "arguments":{"platform":"twitter",
                        "content":"Hello from MCP"}}}

update_post_draft

Mevcut bir taslağı güncelleyin. content veya mediaUrls alanlarından en az biri verilmelidir.

Argümanlar

postIdstring ·zorunlu
Bir liste çağrısından alınan More.You gönderi kimliği.
contentstring ·isteğe bağlı
Gönderi metni (1-2200 karakter).
mediaUrlsarray<string> ·isteğe bağlı
En fazla 10 görsel/video URL'si.
clientRequestIdstring ·isteğe bağlı
İsteğe bağlı idempotency anahtarı. 5 dakika içinde aynı anahtar, önbellekteki sonucu döndürür.

Dönüş

Güncellenen taslağı içeren bir nesne: {id, platform, content, mediaUrls, status, updatedAt}.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":6,
 "params":{"name":"update_post_draft",
           "arguments":{"postId":"",
                        "content":"Updated copy"}}}

connect_channel

Kullanıcının yeni bir platform bağlantısını yetkilendirmek için açabileceği tek kullanımlık bir URL oluşturun.

Argümanlar

platformenum ·zorunlu
Sosyal platform: twitter, instagram, linkedin, threads veya tiktok.

Dönüş

authUrl (kullanıcının yetkilendirmek için açtığı tek kullanımlık link), expiresAt ve platform içeren bir nesne.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":7,
 "params":{"name":"connect_channel",
           "arguments":{"platform":"linkedin"}}}

schedule_post

Bir taslağı (status DRAFT) ileri bir zaman damgasında BullMQ yayın sırasına alın. ±60 sn sapma içinde idempotent; önce açıkça iptal etmeden farklı bir zamana yeniden zamanlama girişimlerini reddeder.

Argümanlar

postIdstring ·zorunlu
Bir liste çağrısından alınan More.You gönderi kimliği.
scheduledAtstring (ISO 8601) ·zorunlu
ISO 8601 zaman damgası; geçmişte 5 dakikadan fazla olmamalıdır.

Dönüş

postId, scheduledAt (ISO), status: SCHEDULED içeren bir nesne.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":8,
 "params":{"name":"schedule_post",
           "arguments":{"postId":"",
                        "scheduledAt":"2026-05-10T09:00:00Z"}}}

cancel_scheduled_post

Zamanlanmış bir gönderiyi iptal edin ve yayın sırasından çıkarın. Altındaki taslak korunur.

Argümanlar

postIdstring ·zorunlu
Bir liste çağrısından alınan More.You gönderi kimliği.

Dönüş

postId ve status: CANCELLED içeren bir nesne.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":9,
 "params":{"name":"cancel_scheduled_post",
           "arguments":{"postId":""}}}

delete_draft

Bir taslak gönderiyi kalıcı olarak silin. DRAFT olmayan gönderileri reddeder (SCHEDULED için cancel_scheduled_post kullanın).

Argümanlar

postIdstring ·zorunlu
Bir liste çağrısından alınan More.You gönderi kimliği.

Dönüş

postId ve deleted: true içeren bir nesne.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":10,
 "params":{"name":"delete_draft",
           "arguments":{"postId":""}}}

get_post

Verilen postId için platform bazında içerik, durum ve zaman damgalarıyla tam PostGroup'u döndürün.

Argümanlar

postIdstring ·zorunlu
Bir liste çağrısından alınan More.You gönderi kimliği.

Dönüş

postId, status, scheduledAt, createdAt, updatedAt ve providers (platform → içerik kaydı) içeren bir nesne.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":11,
 "params":{"name":"get_post",
           "arguments":{"postId":""}}}

search_posts

Aktif ekip için gönderi içeriğinde alt dize (büyük/küçük harf duyarsız) araması. Filtreler: status, platform, limit (1-100, varsayılan 20).

Argümanlar

querystring ·zorunlu
Aranacak alt dize (3-200 karakter; regex meta karakterleri kaçırılır).
statusenum ·isteğe bağlı
İsteğe bağlı: DRAFT | SCHEDULED | PUBLISHED | FAILED | CANCELLED.
platformenum ·isteğe bağlı
Sosyal platform: twitter, instagram, linkedin, threads veya tiktok.
limitnumber ·isteğe bağlı · varsayılan 20
Döndürülecek en fazla sonuç (1-100, varsayılan 20).

Dönüş

posts: [{postId, status, platforms, snippet, scheduledAt, updatedAt}] içeren bir nesne. Snippet, eşleşen bağlamı iki yanında üç nokta ile içerir.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":12,
 "params":{"name":"search_posts",
           "arguments":{"query":"launch","limit":10}}}

list_teams

Kimliği doğrulanmış kullanıcının sahibi veya yöneticisi olduğu ekipleri döndürün; aktif ekip işaretlenir.

Argümanlar

Argüman yok.

Dönüş

currentTeamId ve teams: [{teamId, teamName, isCurrent}] içeren bir nesne.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":13,
 "params":{"name":"list_teams","arguments":{}}}

set_current_team

Bu Bearer anahtarı için aktif ekibi değiştirin. Kullanıcı üye olmalıdır. OAuth anahtar belgesinde kalıcı olur; oturum içi değişiklik, aynı konuşmadaki sonraki araçlar için hemen geçerli olmasını sağlar.

Argümanlar

teamIdstring ·zorunlu
list_teams içinden hedef teamId. Üyelik sunucu tarafında yeniden doğrulanır.

Dönüş

teamId, teamName, persisted (OAuth ise true, API anahtarı ise false) ve isteğe bağlı bir note içeren bir nesne.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":14,
 "params":{"name":"set_current_team",
           "arguments":{"teamId":"team_xxxxx"}}}

get_plan_limits

Kullanıcının mevcut abonelik katmanını ve katman başına kotaları (kanal, depolama, yapay zeka kredileri, paylaşım) okuyun. Her planda kullanılabilir. Çağrının engellenip engellenmeyeceğini önceden tahmin etmek için, değiştiren araçlardan önce işe yarar.

Argümanlar

Argüman yok.

Dönüş

tier, tierDisplayName, isPaid, isTrial, upgradeUrl, limits (channels/storage/aiCalls/posts, her biri {limit, current, exceeded} veya {limit, allowed}) ve creditsAvailable ({total, subscriptionRemaining, purchasedBalance} veya null) içeren bir nesne.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":15,
 "params":{"name":"get_plan_limits","arguments":{}}}

get_post_metrics

Yayınlanmış bir gönderinin gönderildiği her platform için etkileşim metriklerini getirin. Twitter ve Instagram dolu metrikler döndürür (beğeni, retweet/paylaşım, yorum/yanıt, gösterim); LinkedIn, Threads ve TikTok yalnızca yayın durumu ve URL döndürür (etkileşim toplama sonraki bir sürüme ertelendi). Normalleştirilmiş bir toplam, raporlayan platformlardaki beğeni/yorum/paylaşım/gösterimleri toplar.

Argümanlar

postId Bir liste çağrısından alınan More.You gönderi kimliği.

Dönüş

postId, status, providers: [{platform, publishedPostId, publishedUrl, publishedAt, status, metrics}] ve totals: {likes, comments, shares, impressions} içeren bir nesne. metrics platform başına sayısal değerlerden oluşan bir nesnedir; platform henüz etkileşim toplamıyorsa null olur.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":16,
 "params":{"name":"get_post_metrics",
           "arguments":{"postId":""}}}

get_publish_status

Zamanlanmış bir gönderiye ne olduğunu tanılayın: sıra durumu, platform başına başarı/hata, işlem süresi ve çalışanın iş kimliği. Taslak olarak var olup yayın sırasına hiç alınmamış gönderiler için isScheduled=false döndürür ve schedule_post'a işaret eden bir ipucu verir.

Argümanlar

postId Bir liste çağrısından alınan More.You gönderi kimliği.

Dönüş

postId, isScheduled, status, scheduledAt, publishedAt, platforms, processingTimeMs, jobId, topLevelError ve results: [{platform, success, publishedPostId, publishedAt, error}] içeren bir nesne. isScheduled false olduğunda hint içerir.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":17,
 "params":{"name":"get_publish_status",
           "arguments":{"postId":""}}}

update_brand_profile

Kullanıcının aktif marka profilini güncelleyin. İzin verilen alanlar: bio, brandVoice, personalityTraits, mainThemes, expertiseAreas, preferredHashtags, audienceSize. Diğer her şey sessizce atılır. “active” önce ekip varsayılanı, sonra kullanıcının ilk aktif kendi profili olarak çözülür.

Argümanlar

brandVoice Marka sesi tanımlayıcılarından oluşan dizi (örneğin ["professional", "concise"]).

Güncellenebilen diğer alanlar: bio, personalityTraits, mainThemes, expertiseAreas, preferredHashtags, audienceSize.

Dönüş

profileId, name, updated: [güncellenen alan adları] ve güncellemeden sonra bio, brandVoice, personalityTraits, mainThemes, expertiseAreas, preferredHashtags, audienceSize alanlarının mevcut değerlerini içeren bir nesne.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":18,
 "params":{"name":"update_brand_profile",
           "arguments":{"brandVoice":["professional","concise"]}}}

get_best_time_to_post Ücretli plan

Belirli bir platformda sonraki gönderi için, son 90 günde gönderi başına etkileşime göre sıralanmış en iyi N (dayOfWeek, hour) aralığını önerin. Twitter ve Instagram etkileşim ağırlıklı puan döndürür; LinkedIn, Threads, TikTok yalnızca gönderi sıklığına göre sıralar. Saatler verilen IANA saat diliminde olur (varsayılan UTC). Ücretli plan gerekir.

Argümanlar

platform Sosyal platform: twitter, instagram, linkedin, threads veya tiktok.

timezone IANA saat dilimi adı (örneğin Europe/Berlin, America/New_York). Varsayılan UTC.

topN Döndürülecek aralık önerisi sayısı (1-24, varsayılan 5).

Dönüş

platform, timezone, sampleWindowDays, sampleSize, metricsAvailable ve recommendations: [{dayOfWeek (1-7, Mon=1), dayLabel, hour (0-23), score, basedOn: {posts, avgEngagement}}] içeren bir nesne. Soğuk başlangıç veya metriklerin bulunmadığı durumlar için hint içerir.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":19,
 "params":{"name":"get_best_time_to_post",
           "arguments":{"platform":"twitter","timezone":"Europe/Berlin","topN":5}}}

search_tools

MCP araç kataloğunda serbest metin, kategori ya da amaca göre arayın. Kategorileri, requiresScope değerini, tek satırlık açıklamaları ve eşleşen kullanım amacı etiketlerini döndürür. Tüm planlarda ücretsiz (keşif yüzeyi).

Argümanlar

Hepsi isteğe bağlı. Kullanılabilir tüm araçları listelemek için argümansız çağırın.

query Araç adları, açıklamalar ve kullanım amacı etiketlerinde serbest metin araması.

category Tek bir kategoriye filtreleyin: posts, accounts, analytics, brand, teams, discovery, other.

Dönüş

totalTools, matchCount, categories: [string[]] ve tools: [{name, category, requiresScope, description, useCases, matchedOn: [name|category|description|use_case]}] içeren bir nesne. Eşleşme yoksa veya filtre verilmediyse hint içerir.

Örnek

{"jsonrpc":"2.0","method":"tools/call","id":20,
 "params":{"name":"search_tools",
           "arguments":{"query":"why did my post fail"}}}

MCP Resources

Resources, istemcinin MCP resources/read yöntemiyle getirebildiği salt okunur bağlamdır. Claude bunları konuşma başında çeker; böylece her oturumda tekrar sormanıza gerek kalmadan hesap, ekip ve marka bağlamına sahip olur.

moreyou://account/summary

Hesap e-postası ve kullanıcı adı (Claude hangi hesapla çalıştığını doğrulayabilsin diye), plan, kullanılan / sınır yapay zeka kredileri, taslak sayısı, zamanlanmış sayısı, bağlı kanal sayısı. Hızlı yükleme için sayılar her biri için 100 ile sınırlıdır.

moreyou://channels/connected

list_connected_accounts sonucuyla aynı yapı; kaynak olarak sunulur, böylece Claude bunu konuşma başında bir kez çeker (araç çağrısı gidiş-dönüşü olmadan).

moreyou://brand-profiles/active

Kullanıcının aktif marka profili (ekip varsayılanı, yoksa ilk kendi profili). Yalnızca LLM için ilgili alanları döndürür: bio, expertiseAreas, personalityTraits, brandVoice, mainThemes, audienceSize, preferredHashtags.

moreyou://teams/current

Geçerli ekip meta verisi (teamId, teamName) ve totalTeamsAvailable sayısı. Geçiş için list_teams + set_current_team ile birlikte kullanın.

Adlandırılmış iş akışları

Birden fazla aracı bir araya getiren eğik çizgi menüsü kısayolları. Birini seçin; yapay zeka asistanınız bir şeyi değiştirmeden önce onay alarak çok adımlı bir işi yürütsün.

/weekly-plan

Marka profilini, bağlı kanalları ve sıradaki gönderileri okuyun, ardından pazartesiden cumaya yayılmış 5-10 taslak önerin.

/draft-thread

Verdiğiniz bir konu ya da URL için marka sesinizde 5-10 gönderilik bir Twitter veya Threads dizisi yazın.

/audit-queue

Zamanlanmış gönderilerin sonraki 7 gününü gezin; yinelenenleri, platformdaki aşırı yüklenmeyi ve boşlukları işaretleyin.

/channel-sweep

Bağlı kanalları desteklenen kanallarla karşılaştırın ve hangilerinin bağlanacağını ya da yenileneceğini önerin.

Keşif ve OAuth uç noktaları

Herhangi bir MCP istemcisinin kendini otomatik yapılandırabilmesi için standartlara uygun meta veri.

  • GET /.well-known/oauth-protected-resource/api: RFC 9728
  • GET /.well-known/oauth-authorization-server: RFC 8414
  • GET /oauth/.well-known/openid-configuration: OIDC
  • POST /oauth/reg: Dynamic Client Registration (RFC 7591)
  • GET /oauth/auth: Yetkilendirme (PKCE-S256 zorunlu)
  • POST /oauth/token: Anahtar değişimi

Açık kaynak

Kopyala-yapıştır tarifler ve geliştiriciye yönelik bir referans herkese açık belge deposunda yer alır. MIT lisanslı; pull request'ler memnuniyetle karşılanır. github.com/moreyouhq/moreyou-mcp

Sosyal medyanızı herhangi bir yapay zeka asistanıyla yönetin

Claude, ChatGPT veya Cursor'la sohbetle 7 platformda gönderi planlayın, taslak yazın, zamanlayın, denetleyin. Tek güvenli bağlantı, tüm More.You özellikleri.

Dil