Replicate'in API'si aracılığıyla görüntü oluşturma olanağı sağlar.
Claude Desktop config.json'a ekle
{
"mcpServers": {
"awkoy-replicate-flux-mcp": {
"command": "node",
"args": [
"~/.mcp/replicate-flux-mcp/index.js"
]
}
}
} Kaynak kodu al ve yerel olarak çalıştır
git clone https://github.com/awkoy/replicate-flux-mcp.git ~/.mcp/replicate-flux-mcp
cd ~/.mcp/replicate-flux-mcp Replicate Flux MCP, yapay zeka asistanlarına yüksek kaliteli resimler ve vektör grafikler oluşturma gücü veren gelişmiş bir Model Context Protocol (MCP) sunucusudur. Raster görseller için Black Forest Labs'ın Flux Schnell modelinden ve vektör grafikler için Recraft'ın V3 SVG modelinden yararlanarak Replicate API aracılığıyla çalışır.
Replicate API Token Alın
Entegrasyon Yönteminizi Seçin
AI Asistanınızdan Bir Resim Oluşturmasını İsteyin
Gelişmiş Özellikleri Keşfedin
generate_svg kullanarak deneyin.cursor/mcp.json dosyasını oluşturun veya düzenleyin:{
"mcpServers": {
"replicate-flux-mcp": {
"command": "env REPLICATE_API_TOKEN=YOUR_TOKEN npx",
"args": ["-y", "replicate-flux-mcp"]
}
}
}
YOUR_TOKEN yerine gerçek Replicate API token'inizi yazınenv REPLICATE_API_TOKEN=YOUR_TOKEN npx -y replicate-flux-mcp
YOUR_TOKEN yerine gerçek Replicate API token'inizi yazınmcp.json dosyasını oluşturun veya düzenleyin:{
"mcpServers": {
"replicate-flux-mcp": {
"command": "npx",
"args": ["-y", "replicate-flux-mcp"],
"env": {
"REPLICATE_API_TOKEN": "YOUR TOKEN"
}
}
}
}
YOUR_TOKEN yerine gerçek Replicate API token'inizi yazınBu MCP sunucusu, Smithery'de barındırılan bir hizmet olarak mevcuttur ve kendi sunucunuzu kurmanıza gerek kalmadan kullanmanıza izin verir.
MCP istemcilerinizle Smithery'yi kullanma hakkında daha fazla bilgi için Smithery dokümantasyonunu ziyaret edin.
Bu MCP sunucusu ayrıca Glama.ai'de barındırılan bir hizmet olarak mevcuttur ve yerel kurulum olmadan kullanmanız için başka bir seçenek sağlar.
Daha fazla bilgi için Glama.ai MCP sunucuları dokümantasyonunu ziyaret edin.
run_replicate_model kaçış kapısı, OpenAPI giriş şeması için get_model_schema introspeksiyonu ile birlikte herhangi bir owner/name[:version] referansını kabul eder. REPLICATE_MODEL_ALLOWLIST aracılığıyla isteğe bağlı izin listesi.generate_* aracı, her araç outputSchema'sı (URL, istem, format, en boy oranı, varyant başına seed, vb.) eşleşen, insan tarafından okunabilir içeriğin yanında makine tarafından okunabilir structuredContent döndürür.progressToken aracılığıyla katılım sağlayan istemciler için notifications/progress yayınlar, böylece uzun çalışmalar kara kutu değildir.logo, portrait, svg-icon, product-shot, isometric-diagram) Claude Desktop'ın slash paletinde ve Cursor'ın @-menüsünde yüzey oluşturulmuştur.readOnlyHint / destructiveHint / openWorldHint / idempotentHint doğru şekilde ayarlanmıştır, böylece istemciler güvenlik ve maliyet hakkında akıl yürütebilir.notifications/message üzerinden seyahat eder.imagelist, svglist ve predictionlist kaynakları aracılığıyla geçmiş çalışmaları inceleyin.generate_imageFlux Schnell modelini kullanarak bir metin istemine dayalı olarak bir resim oluşturur.
{
prompt: string; // Gerekli: Oluşturulacak resmin metin açıklaması
seed?: number; // İsteğe bağlı: Yeniden üretilebilir oluşturma için rastgele seed
go_fast?: boolean; // İsteğe bağlı: Optimize edilmiş model ile daha hızlı tahminler çalıştır (varsayılan: true)
megapixels?: "1" | "0.25"; // İsteğe bağlı: Resim çözünürlüğü (varsayılan: "1")
num_outputs?: number; // İsteğe bağlı: Oluşturulacak resim sayısı (1-4) (varsayılan: 1)
aspect_ratio?: string; // İsteğe bağlı: En boy oranı (örn. "16:9", "4:3") (varsayılan: "1:1")
output_format?: string; // İsteğe bağlı: Çıktı formatı ("webp", "jpg", "png") (varsayılan: "webp")
output_quality?: number; // İsteğe bağlı: Resim kalitesi (0-100) (varsayılan: 80)
num_inference_steps?: number; // İsteğe bağlı: Denoising adımlarının sayısı (1-4) (varsayılan: 4)
disable_safety_checker?: boolean; // İsteğe bağlı: Güvenlik filtresini devre dışı bırak (varsayılan: false)
}
generate_multiple_imagesFlux Schnell modelini kullanarak bir istem dizisine dayalı olarak birden çok resim oluşturur.
{
prompts: string[]; // Gerekli: Oluşturulacak resimler için metin açıklamalarının dizisi (1-10 istem)
seed?: number; // İsteğe bağlı: Yeniden üretilebilir oluşturma için rastgele seed
go_fast?: boolean; // İsteğe bağlı: Optimize edilmiş model ile daha hızlı tahminler çalıştır (varsayılan: true)
megapixels?: "1" | "0.25"; // İsteğe bağlı: Resim çözünürlüğü (varsayılan: "1")
aspect_ratio?: string; // İsteğe bağlı: En boy oranı (örn. "16:9", "4:3") (varsayılan: "1:1")
output_format?: string; // İsteğe bağlı: Çıktı formatı ("webp", "jpg", "png") (varsayılan: "webp")
output_quality?: number; // İsteğe bağlı: Resim kalitesi (0-100) (varsayılan: 80)
num_inference_steps?: number; // İsteğe bağlı: Denoising adımlarının sayısı (1-4) (varsayılan: 4)
disable_safety_checker?: boolean; // İsteğe bağlı: Güvenlik filtresini devre dışı bırak (varsayılan: false)
}
generate_image_variantsTek bir isteme dayalı olarak aynı resmin birden çok varyantını oluşturur.
{
prompt: string; // Gerekli: Varyantları oluşturulacak resim için metin açıklaması
num_variants: number; // Gerekli: Oluşturulacak resim varyantı sayısı (2-10, varsayılan: 4)
prompt_variations?: string[]; // İsteğe bağlı: Varyantlara uygulanacak istem değiştiricileri listesi (örn. ["suluboya stilinde", "yağlıboya stilinde"])
variation_mode?: "append" | "replace"; // İsteğe bağlı: Varyasyonlar nasıl uygulanır - 'append' temel isteme ekler, 'replace' varyasyonları doğrudan kullanır (varsayılan: "append")
seed?: number; // İsteğe bağlı: Temel rastgele seed. Her varyant seed+variant_index kullanacak
go_fast?: boolean; // İsteğe bağlı: Optimize edilmiş model ile daha hızlı tahminler çalıştır (varsayılan: true)
megapixels?: "1" | "0.25"; // İsteğe bağlı: Resim çözünürlüğü (varsayılan: "1")
aspect_ratio?: string; // İsteğe bağlı: En boy oranı (örn. "16:9", "4:3") (varsayılan: "1:1")
output_format?: string; // İsteğe bağlı: Çıktı formatı ("webp", "jpg", "png") (varsayılan: "webp")
output_quality?: number; // İsteğe bağlı: Resim kalitesi (0-100) (varsayılan: 80)
num_inference_steps?: number; // İsteğe bağlı: Denoising adımlarının sayısı (1-4) (varsayılan: 4)
disable_safety_checker?: boolean; // İsteğe bağlı: Güvenlik filtresini devre dışı bırak (varsayılan: false)
}
generate_svgRecraft V3 SVG modelini kullanarak bir metin istemine dayalı olarak bir SVG vektör resmi oluşturur.
{
prompt: string; // Gerekli: Oluşturulacak SVG için metin açıklaması
size?: string; // İsteğe bağlı: Oluşturulan SVG'nin boyutu (varsayılan: "1024x1024")
style?: string; // İsteğe bağlı: Oluşturulan resmin stili (varsayılan: "any")
// Seçenekler: "any", "engraving", "line_art", "line_circuit", "linocut"
}
prediction_listReplicate'ten son tahminlerinizin listesini alır.
{
limit?: number; // İsteğe bağlı: Döndürülecek maksimum tahmin sayısı (1-100) (varsayılan: 50)
}
get_predictionBelirli bir tahmin hakkında ayrıntılı bilgi alır.
{
predictionId: string; // Gerekli: Alınacak tahminin ID'si
}
run_replicate_modelReplicate'te barındırılan herhangi bir modeli owner/name[:version] referansı ile çalıştırır. Curated araçlardan hiçbiri uygun olmadığında bunu kaçış kapısı olarak kullanın. Giriş şeklini bilmiyorsanız önce get_model_schema çağırın.
{
model: string; // Gerekli: 'owner/name' veya 'owner/name:version'
input: Record<string, unknown>; // Gerekli: Model giriş parametreleri
prefer_wait?: number; // İsteğe bağlı: Senkron çıktı için bekleme saniyesi (1-60, varsayılan 60)
return_as?: "url" | "base64" | "both"; // İsteğe bağlı: Dosya çıktıları nasıl döndürülür (varsayılan "url")
}
REPLICATE_MODEL_ALLOWLIST env var'ını (virgülle ayrılmış owner/name girişleri) ayarlayarak hangi modellerin çağrılabileceğini kısıtlayın. Ayarlanmamış = herhangi bir model izin verilir. Ayarlanmış-ama-boş = tümünü reddet (sunucu başarısız kapanır ve her şeye sessizce izin vermez).
get_model_schemaBir Replicate modelinin OpenAPI giriş şemasını ve açıklamasını alır; böylece run_replicate_model'e doğru parametreleri geçebilirsiniz.
{
model: string; // Gerekli: 'owner/name' formunda Replicate model referansı
}
imagelistFlux Schnell modeliyle oluşturulan oluşturulmuş resimlerinizin geçmişine göz atın.
svglistRecraft V3 SVG modeliyle oluşturulan oluşturulmuş SVG resimlerinizin geçmişine göz atın.
predictionlistTüm Replicate tahminlerinizin geçmişine göz atın.
Claude Desktop'ın slash menüsü ve Cursor'ın @-paletinde yüzey oluşturulan curated şablonlar. Her biri makul varsayılanları doldurur, sonra ilgili oluşturma aracına devreder.
| İstem | Açıklama | Argümanlar |
|---|---|---|
logo |
Marka/ürün logosu | brand, style?, palette? |
portrait |
Fotogerçekçi portre | subject, mood?, lens? |
svg-icon |
Tek konseptli vektör ikon | concept, style? |
product-shot |
Stüdyo ürün fotoğrafyası | product, surface? |
isometric-diagram |
İzometrik teknik illüstrasyon | subject, emphasis? |
Her generate_* aracı hem insan tarafından okunabilir content (metin + resim blokları) hem de aracın outputSchema'sı eşleşen makine tarafından okunabilir structuredContent döndürür.
| Araç | structuredContent şekli |
|---|---|
generate_image |
{ url, prompt, format, aspect_ratio, seed? } |
generate_svg |
{ url, prompt, size, style, svg? } |
generate_multiple_images |
{ images: [{ url, prompt }], format, aspect_ratio } |
generate_image_variants |
{ base_prompt, variation_mode, variants: [{ variant_index, url, prompt_used, seed? }], format, aspect_ratio } |
MCP yapılandırılmış çıktıyı anlayan istemciler, prose ayrıştırılmadan doğrudan URL'leri ve meta verileri tüketebilir.
| Değişken | Gerekli | Amaç |
|---|---|---|
REPLICATE_API_TOKEN |
evet | Replicate için API token'ı. Eksikse sunucu hemen çıkar. |
REPLICATE_MODEL_ALLOWLIST |
hayır | run_replicate_model'i gate eden virgülle ayrılmış owner/name girişleri. Ayarlanmamış = herhangi bir model izin verilir. Ayarlanmış-ama-boş = tümünü reddet (başarısız kapanır). İşlem başlangıcında bir kez değerlendirilir, bu nedenle MCP istemcinizin env bloğunda ayarlayın (daha sonra yüklenen dotenv aracılığıyla değil). |
git clone https://github.com/awkoy/replicate-flux-mcp.git
cd replicate-flux-mcp
npm install
npm run watch
npm run build
npm run inspector
{
"mcpServers": {
"image-generation-mcp": {
"command": "npx",
"args": [
"/Users/{USERNAME}/{PATH_TO}/replicate-flux-mcp/build/index.js"
],
"env": {
"REPLICATE_API_TOKEN": "YOUR REPLICATE API TOKEN"
}
}
}
}
Bu projenin şu anda otomatik test paketi yoktur. Doğrulama yapılır:
npm run build — TypeScript tür-kontrolü çoğu gerilemeyi yakalar.npm run inspector — oluşturulan ikiliyi resmi MCP Inspector aracılığıyla yönlendirerek araçlar, kaynaklar ve istemler için uçtan uca smoke testlemesi yapar.Uygun bir test çerçevesi ekleyen katkılar (örn. Vitest + bir MCP stdio istemci harnesı) kabul edilir.
Sunucu, src/config/index.ts dosyasındaki CONFIG nesnesini değiştirerek yapılandırılabilir:
export const CONFIG = {
serverName: "replicate-flux-mcp",
serverVersion: "0.4.0",
imageModelId: "black-forest-labs/flux-schnell",
svgModelId: "recraft-ai/recraft-v3-svg",
pollingAttempts: 25,
pollingInterval: 2000, // ms
modelAllowlist: (process.env.REPLICATE_MODEL_ALLOWLIST ?? "")
.split(",")
.map((s) => s.trim())
.filter(Boolean),
};
modelAllowlist, REPLICATE_MODEL_ALLOWLIST ortam değişkeninden işlem başlangıcında değerlendirilir. Değiştirdikten sonra sunucuyu yeniden başlatın.
REPLICATE_API_TOKEN'in ortamda doğru şekilde ayarlandığından emin olunpollingAttempts veya pollingInterval'i yapılandırmada artırmanız gerekebilirKatkılar kabul edilir! Katkıda bulunmak için aşağıdaki adımları izleyin:
git checkout -b feature/amazing-feature)git commit -m 'Add some amazing feature')git push origin feature/amazing-feature)Özellik istekleri veya hata raporları için lütfen bir GitHub issue oluşturun. Bu projeyi beğeniyorsanız, repository'ye yıldız vermeyi düşünün!
Bu proje MIT Lisansı kapsamında lisanslanmıştır - ayrıntılar için LICENSE dosyasına bakın.
Tüm MCP protokol özelliklerini kullanan MCP sunucusu.
Python'da MCP sunucuları oluşturmak için üst düzey bir framework.
Ekran ve ses kaydını zaman damgasıyla indeksleyen, SQL/embedding storage kullanan, semantic search ve LLM tabanlı geçmiş analizi yapan local-first sistem. NextJS plugin ekosistemi aracılığıyla bağlam farkında AI ajanlar oluşturmayı ve event-triggered aksiyonları destekler.
YouTube video bilgilerini çıkartıp dönüştürün.
Obsidian ile REST API aracılığıyla etkileşim kurma
AI ajanlarını 600+ entegrasyon ile tek bir arayüzden bağlayın - OAuth, scaling ve monitoring dahil