Gemini MCP — AI de background ieftin (NU Claude!)

HARD RULE: Wednesday nu se foloseşte de Claude pentru task-uri de background (rezumare log-uri, analize bulk, parse fişiere mari, agregări de date). Astea cad pe Gemini sau Grok — token-uri ieftine, capacitate mare, fără să mănânci din cota Claude.

MCP-ul ăsta e cum Wednesday cheamă Gemini direct, fără să iasă din sesiunea Claude Code.

Ce face

Wrapper peste API-ul Google AI Studio (generativelanguage.googleapis.com). Default model: gemini-3.5-flash — rapid, ieftin, capabil. Pentru sarcini mai grele (verificare cod, analiză arhitectură) ai gemini-3.5-pro pe acelaşi MCP.

Wednesday auto-delegă către Gemini când:

  • ai cerut “analizează log-urile astea 50MB” (Claude n-ar încăpea)
  • vrei un al doilea opinion pe cod (cross-LLM diversity)
  • e o sarcină pură de text-transformare/extracţie (nu necesită judecată Claude)
  • background pentru daemoni (rezumat zilnic, evaluare task-uri)

Tool-uri exposed

  • raw_prompt — un mesaj cu prompt simplu, Gemini răspunde. Cel mai folosit.
  • analyze_files <paths> — Gemini citeşte unul sau mai multe fişiere şi răspunde despre ele (foloseşte context-window-ul Gemini Pro de 2M tokens pentru fişiere mari)
  • analyze_directory <path> — Gemini face un walk peste un director şi-ţi dă overview
  • verify_feature — Gemini verifică dacă o anumită funcţionalitate funcţionează aşa cum spui în spec (al doilea opinion)
  • get_config / set_config — vezi sau schimbă modelul default, temperatura, max_tokens

Exemple de prompts

  • “Wednesday, dă-i ăstuia 50MB de log-uri la Gemini să-l rezume” → analyze_files cu calea log-urilor
  • “Gemini, vezi _infra/scripts/ ce face fiecare script” → analyze_directory
  • “Întreabă Gemini dacă vede vreun bug în codul ăsta” → raw_prompt cu codul în context
  • “Trimite la Gemini analiza pe arhitectura asta” — automat dacă request-ul e mare
  • “Cross-check cu Gemini decizia pe alegerea de DB” — second opinion

Credenţiale

_infra/config/.credentials/gemini_api.envGEMINI_API_KEY (format AIza...) + GEMINI_DEFAULT_MODEL.

Cheia e şi în ~/.mcp.json inline (env block), şi în ~/.hermes/config.yaml, şi ~/.grok/config.toml — propagat via mcp_sync.py. Single source of truth: fişierul .env.

Cont: Google AI Studio (free tier 60 req/min, suficient pentru ce face Wednesday în background).

Diferenţa între MCP gemini şi alte căi

  1. MCP gemini (acest ghid) = Wednesday rămâne pe Claude şi cere lui Gemini ad-hoc, ca un tool
  2. hermes_dispatch.py = Wednesday delegă task întreg către un agent Grok sau Gemini (via Hermes gateway). Gemini face tot lucrul end-to-end, Claude doar primeşte rezultatul
  3. grok_agent.py local = la fel ca Hermes dar pentru Grok Build CLI local, nu remote

MCP-ul e pentru calls scurte. Pentru delegare lungă (citeşte 100 fişiere şi fă-mi planul), foloseşte Hermes dispatch.

Gotchas

  • API_KEY-ul ăsta e legat de contul Google al lui Sabin — nu-l da nimănui; rate limit per cont, nu per cheie
  • Free tier are limită — dacă faci 60+ requests/min, primeşti 429. Wednesday face backoff automat dar dacă ţi-e ciudă pe latenţă, ăsta e motivul
  • Modelele se schimbă rapid — Google lansează versiuni noi des. Dacă gemini-3.5-flash cade din catalog, schimbă în .env la următoarea versiune (gemini-3.6-flash etc.)
  • NU pune date private/sensibile prin Gemini fără să fii conştient — termenii Google AI Studio permit folosirea datelor pentru training pe free tier. Pentru lucruri sensibile, foloseşte Grok (xAI termini: NU folosesc pentru training)
  • HARD RULE durabilitate: dacă vezi Wednesday folosind Claude pentru ceva care evident ar trebui să fie Gemini, e un bug — raportează-l (probabil cost routing e off în context-ul respectiv)