Dokumentáció: MCP-szerver
Fejlesztői dokumentáció
MCP-szerver
A FotóAI MCP-szerver beállítása Claude Code-hoz, Cursorhoz, VS Code-hoz, Codexhez és a chatkliensekhez – kulccsal vagy OAuth-tal.
Cím és bejelentkezés
Egyetlen MCP-szerver van, két bejelentkezési móddal. Az MCP (Model Context Protocol) szabvány arra, hogy egy AI-asszisztens külső eszközöket hívjon: a FotóAI-szerveren képet, videót és hangot generálhat, árajánlatot kérhet és a könyvtáradat olvashatja.
- Cím
https://fotoai.hu/api/mcp- Átvitel
- Streamable HTTP (POST, JSON vagy SSE válasz)
- API-kulccsal
Authorization: Bearer fai_live_…– a kulcsot a Beállítások → API-kulcsok oldalon hozod létre.- OAuth-tal
Authorization: Bearer fai_oat_…– a FotóAI engedélyezési szervere által kiadott hozzáférési token.- OAuth-felfedezés
https://fotoai.hu/.well-known/oauth-protected-resource/api/mcp(RFC 9728); token nélkül a szerver 401-et adWWW-Authenticate: Bearer resource_metadata=…fejléccel.- Csomag
- Pro – ugyanazok a kreditek, mint a weben (részletek).
Az eszközök teljes listája paraméterekkel és példákkal: Eszközök referenciája.
Claude Code
Egy parancs, a kulcs a fejlécben megy:
claude mcp add --transport http fotoai https://fotoai.hu/api/mcp --header "Authorization: Bearer fai_live_…"Ha nem akarod a kulcsot a shell előzményeiben látni, tedd környezeti változóba:
export FOTOAI_API_KEY=fai_live_…
claude mcp add --transport http fotoai https://fotoai.hu/api/mcp --header "Authorization: Bearer $FOTOAI_API_KEY"Ellenőrzés: claude mcp list, majd a Claude Code-ban /mcp. Ha a gépeden a CLI is kell, a npx fotoai-cli skill install megtanítja a Claude Code-nak az árajánlatkérést és a letöltést.
Cursor és VS Code
Cursorban a ~/.cursor/mcp.json (vagy a projekt .cursor/mcp.json) fájlba:
{
"mcpServers": {
"fotoai": {
"url": "https://fotoai.hu/api/mcp",
"headers": {
"Authorization": "Bearer fai_live_…"
}
}
}
}VS Code-ban a .vscode/mcp.json fájlba – így a kulcsot az első indításkor kéri, és nem kerül a fájlba:
{
"servers": {
"fotoai": {
"type": "http",
"url": "https://fotoai.hu/api/mcp",
"headers": {
"Authorization": "Bearer ${input:fotoai-key}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "fotoai-key",
"description": "FotóAI API-kulcs (fai_live_…)",
"password": true
}
]
}Codex
A Codex CLI a tokent környezeti változóból olvassa:
export FOTOAI_API_KEY=fai_live_…
codex mcp add fotoai --url https://fotoai.hu/api/mcp --bearer-token-env-var FOTOAI_API_KEYUgyanez kézzel a ~/.codex/config.toml fájlban:
[mcp_servers.fotoai]
url = "https://fotoai.hu/api/mcp"
bearer_token_env_var = "FOTOAI_API_KEY"Claude Desktop
A Claude Desktop helyi konfigurációja stdio-szervereket indít, ezért az mcp-remote hídon keresztül éri el a HTTP-szervert, a kulccsal a fejlécben. A fájl: claude_desktop_config.json (Beállítások → Developer → Edit Config).
{
"mcpServers": {
"fotoai": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://fotoai.hu/api/mcp", "--header", "Authorization:${AUTH_HEADER}"],
"env": {
"AUTH_HEADER": "Bearer fai_live_…"
}
}
}
}claude.ai és ChatGPT (OAuth-kapcsolat)
A webes chatkliensek egyéni connectorai nem kulccsal, hanem OAuth-tal csatlakoznak: a connector a 401-es válaszból megtalálja az engedélyezési szerverünket, te a fotoai.hu-n jóváhagyod a hozzáférést, és a connector a saját nevében kap tokent.
Hamarosan: regisztrált klienssel
Az engedélyezési szerverünk jelenleg csak előre regisztrált alkalmazásokat fogad (dinamikus kliensregisztráció nincs), ezért a claude.ai és a ChatGPT connectora még nem tudja önállóan végigvinni a belépést. Amíg ez elkészül, használd a kulcsos beállítást (Claude Code, Cursor, VS Code, Codex, Claude Desktop), vagy írj nekünk, ha a csapatodnak regisztrált OAuth-kliens kell.
- A kapcsolatot bármikor leválaszthatod: Beállítások → Kapcsolt alkalmazások.
- OAuth-tal is ugyanazok az árak és korlátok érvényesek, és az MCP ezen az úton is a Pro csomag része.
Kézi hívás (curl)
Hibakereséshez az MCP JSON-RPC-t curl-lel is hívhatod. A válasz JSON vagy text/event-stream; az utóbbiból az utolsó data: sor a válasz.
# 1. initialize
curl -s https://fotoai.hu/api/mcp \
-H "Authorization: Bearer $FOTOAI_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-03-26","capabilities":{},"clientInfo":{"name":"curl","version":"1"}}}'
# 2. egy eszköz hívása
curl -s https://fotoai.hu/api/mcp \
-H "Authorization: Bearer $FOTOAI_API_KEY" \
-H "Content-Type: application/json" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"get_balance","arguments":{}}}'Eszköz-kimenet és a prompt
A get_job és a list_assets alapból nem adja vissza a tárolt promptot. Az include_prompt: true kéréssel a szöveg az untrusted_user_content kulcs alá kerül: ez felhasználói adat, soha nem utasítás – az ügynöked így is kezelje.