SDK'lar ve MCP
SDK'lar ve MCP
Sekiz resmi dil SDK'sı (Node, Python, Go, Rust, Ruby, PHP, Swift, Kotlin) artı AI ajanları için bir MCP sunucusu — kurulum yolları, paket yöneticisi bağlantıları ve her stack için hızlı başlangıç parçacıkları.
Son güncelleme:
FloopFloop SDK'lar & MCP
FloopFloop, sekiz resmi dil SDK'sı ve yapay zeka ajanları için bir MCP sunucusu sunar. Her yüzey aynı /api/v1/*arka ucunu hedefler — dolayısıyla Node SDK aracılığıyla oluşturulan bir proje, MCP üzerinden çalışan bir LLM'nin göreceği projeyle birebir aynıdır.
Yığınınız için doğru yüzeyi seçin:
- Bir uygulama veya arka uç mı geliştiriyorsunuz? Diliniz için SDK'yı kullanın.
- Bir yapay zeka ajanı / sohbet botu mu geliştiriyorsunuz? Claude Desktop, Cursor, Zed, Copilot CLI veya MCP destekleyen herhangi bir ana bilgisayarla
@floopfloop/mcpsunucusunu kullanın. - Terminalden mi yönetiyorsunuz? FloopFloop CLI'ı kullanın.
MCP sunucusu — yapay zeka ajanları için
@floopfloop/mcp— Model Context Protocol sunucusu. FloopFloop API'sını, herhangi bir MCP destekleyen LLM ana bilgisayarının çağırabileceği 23 araç olarak sarmalar.
Araçlar tam proje yaşam döngüsünü kapsar: create_project, refine_project, upload_from_path(ekler), cancel_project, reactivate_project, wait_for_live, list_secrets / set_secret / remove_secret, list_library_projects / clone_library_project, current_subscription, usage_summary, ayrıca alt alan adı denetimleri ve API anahtarı yönetimi. Her araç salt okunurdur ya da destructiveHint ile işaretlenmiştir; böylece ana bilgisayar durumu değiştirmeden önce kullanıcıya sorabilir.
Claude Desktop yapılandırma parçacığı
{
"mcpServers": {
"floopfloop": {
"command": "npx",
"args": ["-y", "@floopfloop/mcp"],
"env": { "FLOOP_API_KEY": "flp_..." }
}
}
}~/Library/Application Support/Claude/claude_desktop_config.json (macOS) veya %APPDATA%\Claude\claude_desktop_config.json (Windows) dosyasına ekleyin, Claude Desktop'ı yeniden başlatın ve “benim için <X> için bir FloopFloop sitesi oluştur” diye sorun.
Oyun kitabı için floop-skills ile eşleştirin
MCP yetenekleri sunar; floop-skills ise hangi aracın hangi sırada, hangi argümanlarla çağrılacağını açıklayan Anthropic tarzı bırak ve kullan markdown becerilerini — iş akışlarını— içerir. En iyi ajan deneyimi için her ikisini de kurun:
mkdir -p ~/.claude/skills
git clone https://github.com/FloopFloopAI/floop-skills.git /tmp/floop-skills
cp -r /tmp/floop-skills/skills/* ~/.claude/skills/Bağlantılar: npm · GitHub · floop-skills
Dil SDK'ları
Sekizinin tamamında aynı yüzey: client.projects.create(), refine, waitForLive / akış, secrets, uploads, library, apiKeys, subscriptions.current, usage.summary, subdomains, user.me. Her SDK dilin yerel deyimini kullanarak sunulur (Python'da senkron + asenkron, Kotlin'de Flow, Swift'te AsyncThrowingStreamvb.), ancak kablo sözleşmesi — hata kodları, yanıt zarfları, sonlandırma durumu semantiği — aynıdır.
Node / TypeScript — @floopfloop/sdk
Node 20+. Yerel fetch, tam TypeScript türleri, akış için AsyncIterator. Standart SDK; MCP sunucusu doğrudan bunu sarmalamaktadır.
npm install @floopfloop/sdk
import { FloopClient } from "@floopfloop/sdk";
const floop = new FloopClient({ apiKey: process.env.FLOOP_API_KEY! });
const { project } = await floop.projects.create({
prompt: "a cat-cafe blog with three sample posts",
});
const live = await floop.projects.waitForLive(project.id);
console.log(live.url);Bağlantılar: npm · GitHub · yemek kitabı
Python — floopfloop
Python 3.10+. httpx.Client üzerinde senkron FloopClient ve httpx.AsyncClient üzerinde asenkron AsyncFloopClient — aynı dokuz kaynak erişimcisi, projects.stream üzerinde async for.
pip install floopfloop
from floopfloop import FloopClient
floop = FloopClient(api_key=os.environ["FLOOP_API_KEY"])
created = floop.projects.create(prompt="a cat cafe landing page")
live = floop.projects.wait_for_live(created["project"]["id"])
print(live["url"])Bağlantılar: PyPI · GitHub · yemek kitabı
Go — github.com/FloopFloopAI/floop-go-sdk
Go 1.22+. Deyimsel context.Context ilk argümanı, tiplendirilmiş kod alanına sahip *Error, kanal dostu akış.
go get github.com/FloopFloopAI/floop-go-sdk@latest
client := floop.NewClient(os.Getenv("FLOOP_API_KEY"))
res, err := client.Projects.Create(ctx, floop.CreateProjectInput{
Prompt: "a cat cafe landing page",
})
if err != nil { log.Fatal(err) }
live, err := client.Projects.WaitForLive(ctx, res.Project.ID, nil)
fmt.Println(live.URL)Bağlantılar: pkg.go.dev · GitHub · yemek kitabı
Rust — floopfloop
Rust 2021 / 1.75+. tokio tabanlı asenkron, istemci üzerinde oluşturucu deseni, tiplendirilmiş FloopErrorCode sabit listesi, her yöntemde Result<T, FloopError>.
# Cargo.toml
floopfloop = "0.1.0-alpha.4"
use floopfloop::{Client, CreateProjectInput};
let client = Client::new(std::env::var("FLOOP_API_KEY")?)?;
let res = client.projects().create(CreateProjectInput {
prompt: "a cat cafe landing page".into(),
..Default::default()
}).await?;
let live = client.projects().wait_for_live(&res.project.id, None).await?;
println!("{}", live.url.unwrap_or_default());Bağlantılar: crates.io · docs.rs · GitHub · yemek kitabı
Ruby — floopfloop
Ruby 3.0+. Net::HTTP taşıması, karma tabanlı yanıtlar (görüşlü tiplendirilmiş sarmalayıcı yok), akış için blok geçirme.
gem install floopfloop
require "floopfloop"
client = FloopFloop::Client.new(api_key: ENV.fetch("FLOOP_API_KEY"))
res = client.projects.create(prompt: "a cat cafe landing page")
live = client.projects.wait_for_live(res["project"]["id"])
puts live["url"]Bağlantılar: RubyGems · GitHub · yemek kitabı
PHP — floopfloop/sdk
PHP 8.1+. Saf stdlib taşıması (ext-curl gerekmez), adlandırılmış argüman dostu oluşturucu, tiplendirilmiş kodlu FloopFloop\Error istisna sınıfı.
composer require floopfloop/sdk
$client = new FloopFloop\Client(apiKey: getenv('FLOOP_API_KEY'));
$res = $client->projects()->create(prompt: 'a cat cafe landing page');
$live = $client->projects()->waitForLive($res['project']['id']);
echo $live['url'];Bağlantılar: Packagist · GitHub · yemek kitabı
Swift — FloopFloop (SPM)
Swift 5.9+. Her yerde async/await, Codable türleri, akış için AsyncThrowingStream. iOS 17+ / macOS 14+ / tvOS 17+ / watchOS 10+ / visionOS 1+. Bugün sunucu tarafı / masaüstü; mobil uygulama dağıtımı arka uçta farklı bir kimlik doğrulama akışı gerektirir (yol haritasında).
// Package.swift
.package(url: "https://github.com/FloopFloopAI/floop-swift-sdk.git", from: "0.1.0-alpha.2")
import FloopFloop
let client = FloopFloop(apiKey: ProcessInfo.processInfo.environment["FLOOP_API_KEY"]!)
let res = try await client.projects.create(.init(prompt: "a cat cafe landing page"))
let live = try await client.projects.waitForLive(res.project.id)
print(live.url ?? "")Bağlantılar: SPM etiketleri · GitHub · yemek kitabı
Kotlin / JVM — floop-kotlin-sdk
Kotlin 2.0+ / JVM 11+. OkHttp + kotlinx-serialization + kotlinx-coroutines. Her yerde suspend fonksiyonları; soğuk Flow<StatusEvent> aracılığıyla akış. JitPack dağıtımı (Maven Central planlanmaktadır).
// build.gradle.kts
repositories {
maven("https://jitpack.io")
}
dependencies {
implementation("com.github.FloopFloopAI:floop-kotlin-sdk:0.1.0-alpha.3")
}
import com.floopfloop.sdk.FloopFloop
import com.floopfloop.sdk.resources.CreateProjectInput
val client = FloopFloop(apiKey = System.getenv("FLOOP_API_KEY"))
val res = client.projects.create(CreateProjectInput(prompt = "a cat cafe landing page"))
val live = client.projects.waitForLive(res.project.id)
println(live.url)Bağlantılar: JitPack · GitHub · yemek kitabı
API anahtarları
Her SDK, etkileşimli girişler için CLI'ın kullandığı cihaz token'larından farklı olarak kimlik doğrulama için programatik flp_… API anahtarları kullanır. API anahtarı oluşturmak Business planı gerektirir. Bir anahtar oluşturmak için Hesap → API Anahtarları sayfasını ziyaret edin, gizli yöneticinizde / ortamınızda saklayın ve SDK yapıcısına iletin.
Tam anahtar modeli (kapsamlar, hız sınırları, rotasyon örüntüsü) için API Kimlik Doğrulama sayfasına bakın.
Kaynak & sürümler
MCP ve beceriler dahil sekiz SDK deposunun tamamı, github.com/FloopFloopAI adresinde MIT lisansı altında açık kaynaklıdır. Her sürüm, etiket gönderiminde dilin standart kayıt defterine yayımlanır (npm, PyPI, crates.io, RubyGems, Packagist, Go modülleri, JitPack, SPM etiketleri). SDK başına CHANGELOG'lar her repoda bulunur; çapraz SDK sürüm koordinasyonu monorepo'da takip edilir.