gilles
6c889f1561
fix(mcp+alembic): désactive DNS rebinding (421) + rechaîne migrations 006
...
MCP :
- FastMCP recevait Host=localhost (sans port) mais le pattern par défaut
allowed_hosts=["localhost:*", ...] EXIGE un port → 421 Invalid Host header
pour tout accès non-localhost (ex: Hermes via http://10.0.0.50:3001/mcp )
- Désactive enable_dns_rebinding_protection : le Bearer MCP_API_KEY est la
vraie barrière (protection rebinding = anti-attaque navigateur, inutile ici)
- nginx /mcp : retour à Host $host (le rewrite localhost était cassé)
Alembic :
- Collision : 006_notes_urls et 006_product_tags partageaient revision='006'
→ "Multiple head revisions" au démarrage
- Renumérote notes_urls en 0061, chaîné après product_tags
Chaîne finale : 005 -> 006 (product_tags) -> 0061 (notes_urls) -> 007
v0.5.15
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-30 10:07:00 +02:00
gilles
69c2042995
fix(mcp): nginx Host=localhost pour passer la protection DNS rebinding FastMCP
2026-05-28 10:42:57 +02:00
gilles
20483dc5f9
fix(mcp): désactiver DNS rebinding protection (auth Bearer suffisant)
2026-05-28 10:40:44 +02:00
gilles
39939b9621
fix(mcp): streamable_http_path=/ pour mount FastAPI à /mcp
2026-05-28 10:05:52 +02:00
gilles
5d7dbec67c
fix(mcp): status active + search_products guard + item.product + cleanup auto-name
2026-05-28 06:41:04 +02:00
gilles
87efbcb03d
feat(mcp): 6 outils shopping + tests
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-28 06:37:38 +02:00
gilles
c72ffd0ad6
fix(mcp): FTS colonnes non qualifiées + test positif search_notes
2026-05-28 06:29:36 +02:00
gilles
e902452781
feat(mcp): 5 outils notes + tests
...
Ajoute search_notes, get_note, create_note, update_note, delete_note au serveur MCP.
Tests: 6 nouveaux tests notes (13 tests MCP au total, tous passent).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-25 23:11:15 +02:00
gilles
6cd866c77a
fix(mcp): scope fixture NullPool + suppression imports inutiles + validation enums + cleanup tests
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-25 23:03:43 +02:00
gilles
05db49f27a
feat(mcp): 5 outils todos + tests
...
Ajoute mcp_server.py avec get_todos, create_todo, update_todo, postpone_todo, delete_todo.
Ajoute test_mcp.py (7 tests). Corrige conftest pour injecter NullPool dans AsyncSessionLocal des outils MCP (évite les conflits d'event loop entre tests).
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-05-25 22:58:20 +02:00