Chunk #511
Aus: Architektur (Index: 3)
130
Tokens
Synced
Status
Taxonomie
| Kategorie | Architektur |
|---|---|
| Pfad | Architektur > Datenfluss > Datenzugriff |
| Heading-Pfad | Architektur > MCP-DB Architektur > Datenfluss |
Entities
| Name | Typ |
|---|---|
| Claude Code | SERVICE |
| db_select | COMMAND |
| Tool | SERVICE |
| QueryValidator | CONCEPT |
| SelectExecutor | SERVICE |
| ProtokollLogger | SERVICE |
| mcp_log | CONFIG |
| MariaDB | TECHNOLOGY |
| cursor | CONCEPT |
Keywords
Inhalt
1. Claude Code ruft db_select(query, database, max_rows, params)
2. Tool empfängt Request
3. QueryValidator.validate_query() prüft:
- SELECT-Only
- Keyword-Blocklist
- Database-Allowlist
- Table-Allowlist
- Query-Länge
- Max-Rows
4. Bei Fehler: DENIED Response + Log
5. Bei Erfolg: SelectExecutor.execute()
- Connection aus Pool
- SET max_statement_time (MariaDB)
- cursor.execute(query, params)
- fetchmany(max_rows)
6. ProtokollLogger.log() schreibt nach mcp_log
7. Response zurück an Claude CodeClean Content
``` `1. Claude Code ruft db_select(query, database, max_rows, params) 2. Tool empfängt Request 3. QueryValidator.validate_query() prüft: - SELECT-Only - Keyword-Blocklist - Database-Allowlist - Table-Allowlist - Query-Länge - Max-Rows 4. Bei Fehler: DENIED Response + Log 5. Bei Erfolg: SelectExecutor.execute() - Connection aus Pool - SET max_statement_time (MariaDB) - cursor.execute(query, params) - fetchmany(max_rows) 6. ProtokollLogger.log() schreibt nach mcp_log 7. Response zurück an Claude Code` ```
Metadaten
| Analysiert am | 20.12.2025 12:41:58 |
|---|---|
| Analyse-Modell | gemma3:4b-it-qat |
| Embedding-Modell | mxbai-embed-large |
| Qdrant-ID | 946223c3-77a6-40a3-8a7c-b38ce2d53902 |
| Erstellt | 20.12.2025 12:34:42 |
| Aktualisiert | 20.12.2025 12:53:38 |