{
"event": "PreToolUse",
"tool_name": "mcp__mcp-docs__docs_update",
"tool_input": {
"id": 64,
"content": "<nav class=\"breadcrumb\">\n <a href=\"\/docs\">Dokumentation<\/a> » <a href=\"\/docs\/anwendungen\">Anwendungen<\/a> » Semantic Explorer\n<\/nav>\n\n<h1>Semantic Explorer<\/h1>\n<p class=\"doc-meta\"><strong>Erstellt:<\/strong> 2025-12-20 | <strong>Aktualisiert:<\/strong> 2025-12-29<\/p>\n\n<p>Exploration und Suche in der Dokumentations-Pipeline. Zeigt hierarchische Dokumente, deren Seiten und die extrahierten Text-Chunks mit Taxonomie-Klassifizierung, Keywords und Entities.<\/p>\n\n<table>\n <tr><th>URL<\/th><td><a href=\"\/semantic-explorer\">\/semantic-explorer<\/a><\/td><\/tr>\n <tr><th>Datenbank<\/th><td>ki_content (documents, chunks)<\/td><\/tr>\n <tr><th>Controller<\/th><td>\/src\/Controller\/SemanticExplorerController.php<\/td><\/tr>\n <tr><th>Views<\/th><td>\/src\/View\/semantic-explorer\/<\/td><\/tr>\n <tr><th>Pipeline<\/th><td>\/var\/www\/scripts\/pipeline\/<\/td><\/tr>\n<\/table>\n\n<h2>Datenmodell<\/h2>\n<table>\n <tr><th>Tabelle<\/th><th>Beschreibung<\/th><th>Felder<\/th><\/tr>\n <tr>\n <td><code>documents<\/code><\/td>\n <td>Quelldokumente<\/td>\n <td>id, filename, title, source, page_count, status, created_at<\/td>\n <\/tr>\n <tr>\n <td><code>chunks<\/code><\/td>\n <td>Extrahierte Text-Chunks<\/td>\n <td>id, document_id, chunk_index, content, token_count, embedding_model, qdrant_id<\/td>\n <\/tr>\n<\/table>\n\n<h2>Web-UI Komponenten<\/h2>\n<table>\n <tr><th>Seite<\/th><th>URL<\/th><th>Beschreibung<\/th><\/tr>\n <tr><td>Dashboard<\/td><td><a href=\"\/semantic-explorer\">\/semantic-explorer<\/a><\/td><td>Statistiken, Top-Kategorien, neueste Chunks<\/td><\/tr>\n <tr><td>Entitäten<\/td><td><a href=\"\/semantic-explorer\/entitaeten\">\/semantic-explorer\/entitaeten<\/a><\/td><td>Alle extrahierten Entitäten<\/td><\/tr>\n <tr><td>Relationen<\/td><td><a href=\"\/semantic-explorer\/relationen\">\/semantic-explorer\/relationen<\/a><\/td><td>Beziehungen zwischen Entitäten<\/td><\/tr>\n <tr><td>Taxonomie<\/td><td><a href=\"\/semantic-explorer\/taxonomie\">\/semantic-explorer\/taxonomie<\/a><\/td><td>Taxonomie-Hierarchie<\/td><\/tr>\n <tr><td>Ontologie<\/td><td><a href=\"\/semantic-explorer\/ontologie\">\/semantic-explorer\/ontologie<\/a><\/td><td>Ontologie-Klassen<\/td><\/tr>\n <tr><td>Chunks<\/td><td><a href=\"\/semantic-explorer\/chunks\">\/semantic-explorer\/chunks<\/a><\/td><td>Alle Chunks mit Filter<\/td><\/tr>\n <tr><td>Graph<\/td><td><a href=\"\/semantic-explorer\/graph\">\/semantic-explorer\/graph<\/a><\/td><td>Wissens-Graph Visualisierung<\/td><\/tr>\n<\/table>\n\n<h3>Detail-Ansichten<\/h3>\n<ul>\n <li><code>\/semantic-explorer\/entitaeten\/{id}<\/code> - Entity-Details mit Vorkommen<\/li>\n <li><code>\/semantic-explorer\/chunks\/{id}<\/code> - Chunk-Details: Entities, Keywords, Semantik<\/li>\n<\/ul>\n\n<h2>API-Endpoints<\/h2>\n<table>\n <tr><th>Method<\/th><th>Endpoint<\/th><th>Beschreibung<\/th><\/tr>\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/stats<\/td><td>Statistiken (Documents, Chunks, Entities)<\/td><\/tr>\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/entities<\/td><td>Alle Entitäten<\/td><\/tr>\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/relations<\/td><td>Alle Relationen<\/td><\/tr>\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/taxonomy<\/td><td>Taxonomie-Hierarchie<\/td><\/tr>\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/ontology<\/td><td>Ontologie-Klassen<\/td><\/tr>\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/documents<\/td><td>Alle Dokumente<\/td><\/tr>\n<\/table>\n\n<h2>Chunk-Analyse<\/h2>\n<p>Die Pipeline extrahiert aus jedem Chunk:<\/p>\n<ul>\n <li><strong>entities:<\/strong> Erkannte Entitäten mit Typ (PERSON, ORGANIZATION, CONCEPT, etc.)<\/li>\n <li><strong>keywords:<\/strong> Relevante Schlüsselwörter<\/li>\n <li><strong>token_count:<\/strong> Anzahl Tokens für LLM-Budgetierung<\/li>\n <li><strong>embedding_model:<\/strong> Verwendetes Embedding-Modell<\/li>\n <li><strong>qdrant_id:<\/strong> ID im Vektor-Index<\/li>\n<\/ul>\n\n<h2>HybridSearch<\/h2>\n<p>Die Suche kombiniert semantische Vektorsuche (Qdrant) mit Keyword-Matching (MariaDB).<\/p>\n\n<h3>API-Aufruf<\/h3>\n<pre><code># Einfache Suche\ncurl -X POST https:\/\/dev.campus.systemische-tools.de\/api\/v1\/explorer\/search \\\n -H \"Content-Type: application\/json\" \\\n -d '{\"query\": \"Systemische Therapie\", \"limit\": 10}'<\/code><\/pre>\n\n<h3>Response-Format<\/h3>\n<pre><code>{\n \"success\": true,\n \"data\": {\n \"query\": \"Systemische Therapie\",\n \"results\": [\n {\n \"id\": 42,\n \"content\": \"...\",\n \"document_title\": \"Handbuch\",\n \"score\": 0.87\n }\n ],\n \"count\": 5\n }\n}<\/code><\/pre>\n\n<h2>Statistiken abrufen<\/h2>\n<pre><code>curl https:\/\/dev.campus.systemische-tools.de\/api\/v1\/explorer\/stats<\/code><\/pre>\n\n<h3>Response<\/h3>\n<pre><code>{\n \"success\": true,\n \"data\": {\n \"documents\": 12,\n \"chunks\": {\n \"total\": 234,\n \"tokens\": 125000\n },\n \"entities\": 450,\n \"relations\": 320\n }\n}<\/code><\/pre>\n\n<h2>Pipeline-Integration<\/h2>\n<p>Die Chunks werden von der Analyse-Pipeline generiert:<\/p>\n<ol>\n <li><code>\/var\/www\/scripts\/pipeline\/pipeline.py<\/code> - Haupt-Pipeline<\/li>\n <li><code>\/var\/www\/scripts\/pipeline\/step_chunk.py<\/code> - Chunk-Erstellung<\/li>\n <li><code>\/var\/www\/scripts\/pipeline\/step_embed.py<\/code> - Embedding-Generierung<\/li>\n <li><code>\/var\/www\/scripts\/pipeline\/step_semantic.py<\/code> - Semantik-Analyse<\/li>\n<\/ol>\n\n<p>Siehe: <a href=\"\/docs\/prozesse\/rag-prozess\">RAG-Prozess<\/a><\/p>"
}
}
{
"tool_response": [
{
"type": "text",
"text": "{\n \"success\": true,\n \"doc\": {\n \"id\": 64,\n \"parent_id\": 8,\n \"slug\": \"semantic-explorer\",\n \"path\": \"\/anwendungen\/semantic-explorer\",\n \"title\": \"Doc2Vector Explorer\",\n \"description\": \"Exploration der dokumentation und dokumentation_chunks Pipeline: Dokumente, Seiten, Chunks, Taxonomie und Suche\",\n \"content\": \"<nav class=\\\"breadcrumb\\\">\\n <a href=\\\"\/docs\\\">Dokumentation<\/a> » <a href=\\\"\/docs\/anwendungen\\\">Anwendungen<\/a> » Semantic Explorer\\n<\/nav>\\n\\n<h1>Semantic Explorer<\/h1>\\n<p class=\\\"doc-meta\\\"><strong>Erstellt:<\/strong> 2025-12-20 | <strong>Aktualisiert:<\/strong> 2025-12-29<\/p>\\n\\n<p>Exploration und Suche in der Dokumentations-Pipeline. Zeigt hierarchische Dokumente, deren Seiten und die extrahierten Text-Chunks mit Taxonomie-Klassifizierung, Keywords und Entities.<\/p>\\n\\n<table>\\n <tr><th>URL<\/th><td><a href=\\\"\/semantic-explorer\\\">\/semantic-explorer<\/a><\/td><\/tr>\\n <tr><th>Datenbank<\/th><td>ki_content (documents, chunks)<\/td><\/tr>\\n <tr><th>Controller<\/th><td>\/src\/Controller\/SemanticExplorerController.php<\/td><\/tr>\\n <tr><th>Views<\/th><td>\/src\/View\/semantic-explorer\/<\/td><\/tr>\\n <tr><th>Pipeline<\/th><td>\/var\/www\/scripts\/pipeline\/<\/td><\/tr>\\n<\/table>\\n\\n<h2>Datenmodell<\/h2>\\n<table>\\n <tr><th>Tabelle<\/th><th>Beschreibung<\/th><th>Felder<\/th><\/tr>\\n <tr>\\n <td><code>documents<\/code><\/td>\\n <td>Quelldokumente<\/td>\\n <td>id, filename, title, source, page_count, status, created_at<\/td>\\n <\/tr>\\n <tr>\\n <td><code>chunks<\/code><\/td>\\n <td>Extrahierte Text-Chunks<\/td>\\n <td>id, document_id, chunk_index, content, token_count, embedding_model, qdrant_id<\/td>\\n <\/tr>\\n<\/table>\\n\\n<h2>Web-UI Komponenten<\/h2>\\n<table>\\n <tr><th>Seite<\/th><th>URL<\/th><th>Beschreibung<\/th><\/tr>\\n <tr><td>Dashboard<\/td><td><a href=\\\"\/semantic-explorer\\\">\/semantic-explorer<\/a><\/td><td>Statistiken, Top-Kategorien, neueste Chunks<\/td><\/tr>\\n <tr><td>Entitäten<\/td><td><a href=\\\"\/semantic-explorer\/entitaeten\\\">\/semantic-explorer\/entitaeten<\/a><\/td><td>Alle extrahierten Entitäten<\/td><\/tr>\\n <tr><td>Relationen<\/td><td><a href=\\\"\/semantic-explorer\/relationen\\\">\/semantic-explorer\/relationen<\/a><\/td><td>Beziehungen zwischen Entitäten<\/td><\/tr>\\n <tr><td>Taxonomie<\/td><td><a href=\\\"\/semantic-explorer\/taxonomie\\\">\/semantic-explorer\/taxonomie<\/a><\/td><td>Taxonomie-Hierarchie<\/td><\/tr>\\n <tr><td>Ontologie<\/td><td><a href=\\\"\/semantic-explorer\/ontologie\\\">\/semantic-explorer\/ontologie<\/a><\/td><td>Ontologie-Klassen<\/td><\/tr>\\n <tr><td>Chunks<\/td><td><a href=\\\"\/semantic-explorer\/chunks\\\">\/semantic-explorer\/chunks<\/a><\/td><td>Alle Chunks mit Filter<\/td><\/tr>\\n <tr><td>Graph<\/td><td><a href=\\\"\/semantic-explorer\/graph\\\">\/semantic-explorer\/graph<\/a><\/td><td>Wissens-Graph Visualisierung<\/td><\/tr>\\n<\/table>\\n\\n<h3>Detail-Ansichten<\/h3>\\n<ul>\\n <li><code>\/semantic-explorer\/entitaeten\/{id}<\/code> - Entity-Details mit Vorkommen<\/li>\\n <li><code>\/semantic-explorer\/chunks\/{id}<\/code> - Chunk-Details: Entities, Keywords, Semantik<\/li>\\n<\/ul>\\n\\n<h2>API-Endpoints<\/h2>\\n<table>\\n <tr><th>Method<\/th><th>Endpoint<\/th><th>Beschreibung<\/th><\/tr>\\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/stats<\/td><td>Statistiken (Documents, Chunks, Entities)<\/td><\/tr>\\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/entities<\/td><td>Alle Entitäten<\/td><\/tr>\\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/relations<\/td><td>Alle Relationen<\/td><\/tr>\\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/taxonomy<\/td><td>Taxonomie-Hierarchie<\/td><\/tr>\\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/ontology<\/td><td>Ontologie-Klassen<\/td><\/tr>\\n <tr><td>GET<\/td><td>\/api\/v1\/explorer\/documents<\/td><td>Alle Dokumente<\/td><\/tr>\\n<\/table>\\n\\n<h2>Chunk-Analyse<\/h2>\\n<p>Die Pipeline extrahiert aus jedem Chunk:<\/p>\\n<ul>\\n <li><strong>entities:<\/strong> Erkannte Entitäten mit Typ (PERSON, ORGANIZATION, CONCEPT, etc.)<\/li>\\n <li><strong>keywords:<\/strong> Relevante Schlüsselwörter<\/li>\\n <li><strong>token_count:<\/strong> Anzahl Tokens für LLM-Budgetierung<\/li>\\n <li><strong>embedding_model:<\/strong> Verwendetes Embedding-Modell<\/li>\\n <li><strong>qdrant_id:<\/strong> ID im Vektor-Index<\/li>\\n<\/ul>\\n\\n<h2>HybridSearch<\/h2>\\n<p>Die Suche kombiniert semantische Vektorsuche (Qdrant) mit Keyword-Matching (MariaDB).<\/p>\\n\\n<h3>API-Aufruf<\/h3>\\n<pre><code># Einfache Suche\\ncurl -X POST https:\/\/dev.campus.systemische-tools.de\/api\/v1\/explorer\/search \\\\\\n -H \\\"Content-Type: application\/json\\\" \\\\\\n -d '{\\\"query\\\": \\\"Systemische Therapie\\\", \\\"limit\\\": 10}'<\/code><\/pre>\\n\\n<h3>Response-Format<\/h3>\\n<pre><code>{\\n \\\"success\\\": true,\\n \\\"data\\\": {\\n \\\"query\\\": \\\"Systemische Therapie\\\",\\n \\\"results\\\": [\\n {\\n \\\"id\\\": 42,\\n \\\"content\\\": \\\"...\\\",\\n \\\"document_title\\\": \\\"Handbuch\\\",\\n \\\"score\\\": 0.87\\n }\\n ],\\n \\\"count\\\": 5\\n }\\n}<\/code><\/pre>\\n\\n<h2>Statistiken abrufen<\/h2>\\n<pre><code>curl https:\/\/dev.campus.systemische-tools.de\/api\/v1\/explorer\/stats<\/code><\/pre>\\n\\n<h3>Response<\/h3>\\n<pre><code>{\\n \\\"success\\\": true,\\n \\\"data\\\": {\\n \\\"documents\\\": 12,\\n \\\"chunks\\\": {\\n \\\"total\\\": 234,\\n \\\"tokens\\\": 125000\\n },\\n \\\"entities\\\": 450,\\n \\\"relations\\\": 320\\n }\\n}<\/code><\/pre>\\n\\n<h2>Pipeline-Integration<\/h2>\\n<p>Die Chunks werden von der Analyse-Pipeline generiert:<\/p>\\n<ol>\\n <li><code>\/var\/www\/scripts\/pipeline\/pipeline.py<\/code> - Haupt-Pipeline<\/li>\\n <li><code>\/var\/www\/scripts\/pipeline\/step_chunk.py<\/code> - Chunk-Erstellung<\/li>\\n <li><code>\/var\/www\/scripts\/pipeline\/step_embed.py<\/code> - Embedding-Generierung<\/li>\\n <li><code>\/var\/www\/scripts\/pipeline\/step_semantic.py<\/code> - Semantik-Analyse<\/li>\\n<\/ol>\\n\\n<p>Siehe: <a href=\\\"\/docs\/prozesse\/rag-prozess\\\">RAG-Prozess<\/a><\/p>\",\n \"status\": \"published\",\n \"sort_order\": 50,\n \"depth\": 1,\n \"created_at\": \"2025-12-20T11:25:16\",\n \"updated_at\": \"2025-12-29T14:59:39\"\n },\n \"message\": \"Document #64 updated\"\n}"
}
]
}