{
"event": "PreToolUse",
"tool_name": "mcp__mcp-docs__docs_update",
"tool_input": {
"id": 78,
"content": "<![CDATA[<nav class=\"breadcrumb\">\n <a href=\"\/docs\">Dokumentation<\/a> » <a href=\"\/docs\/api\">API<\/a> » Tasks API\n<\/nav>\n\n<h1>Tasks API<\/h1>\n<p class=\"doc-meta\"><strong>Erstellt:<\/strong> 2025-12-20 | <strong>Aktualisiert:<\/strong> 2025-12-31<\/p>\n\n<p>REST-API für Task-Management mit Zuweisungen, Ergebnissen und KI-Ausführung.<\/p>\n\n<table>\n <tr><th>Controller<\/th><td>Controller\\Api\\TaskController<\/td><\/tr>\n <tr><th>Base-URL<\/th><td>\/api\/v1\/tasks<\/td><\/tr>\n <tr><th>Format<\/th><td>JSON<\/td><\/tr>\n<\/table>\n\n<h2>Endpoints<\/h2>\n\n<h3>Tasks auflisten<\/h3>\n<pre><code>GET \/api\/v1\/tasks?status=pending&type=ai_task&limit=50&offset=0<\/code><\/pre>\n<table>\n <tr><th>Parameter<\/th><th>Typ<\/th><th>Beschreibung<\/th><\/tr>\n <tr><td>status<\/td><td>string<\/td><td>pending, in_progress, completed, failed, cancelled<\/td><\/tr>\n <tr><td>type<\/td><td>string<\/td><td>human_task, ai_task, mixed<\/td><\/tr>\n <tr><td>search<\/td><td>string<\/td><td>Volltextsuche<\/td><\/tr>\n <tr><td>limit<\/td><td>int<\/td><td>Max. Ergebnisse (default: 50)<\/td><\/tr>\n <tr><td>offset<\/td><td>int<\/td><td>Pagination-Offset<\/td><\/tr>\n<\/table>\n\n<h3>Task erstellen<\/h3>\n<pre><code>POST \/api\/v1\/tasks\nContent-Type: application\/json\n\n{\n \"title\": \"Dokumentation prüfen\",\n \"description\": \"Alle Links in der Doku validieren\",\n \"type\": \"ai_task\",\n \"due_date\": \"2025-12-25T12:00:00Z\"\n}<\/code><\/pre>\n\n<h3>Task-Details abrufen<\/h3>\n<pre><code>GET \/api\/v1\/tasks\/{id}<\/code><\/pre>\n<p>Liefert Task mit Assignments und Results.<\/p>\n\n<h3>Task aktualisieren<\/h3>\n<pre><code>PUT \/api\/v1\/tasks\/{id}\nContent-Type: application\/json\n\n{\n \"title\": \"Neuer Titel\",\n \"description\": \"Neue Beschreibung\",\n \"type\": \"mixed\",\n \"due_date\": \"2025-12-30T18:00:00Z\"\n}<\/code><\/pre>\n\n<h3>Task löschen<\/h3>\n<pre><code>DELETE \/api\/v1\/tasks\/{id}<\/code><\/pre>\n\n<h3>Status ändern<\/h3>\n<pre><code>PUT \/api\/v1\/tasks\/{id}\/status\nContent-Type: application\/json\n\n{\n \"status\": \"in_progress\",\n \"updated_by\": \"claude\",\n \"updated_by_type\": \"ai\"\n}<\/code><\/pre>\n\n<h3>Task zuweisen<\/h3>\n<pre><code>POST \/api\/v1\/tasks\/{id}\/assign\nContent-Type: application\/json\n\n{\n \"assignee\": \"claude\",\n \"assignee_type\": \"claude\",\n \"model_name\": \"claude-3-5-sonnet\",\n \"notes\": \"Priorität hoch\"\n}<\/code><\/pre>\n\n<h3>Ergebnis speichern<\/h3>\n<pre><code>POST \/api\/v1\/tasks\/{id}\/results\nContent-Type: application\/json\n\n{\n \"executor\": \"claude\",\n \"executor_type\": \"claude\",\n \"model_name\": \"claude-3-5-sonnet\",\n \"response\": \"Task erfolgreich abgeschlossen\",\n \"status\": \"success\",\n \"tokens_input\": 1500,\n \"tokens_output\": 500\n}<\/code><\/pre>\n\n<h3>Ergebnisse abrufen<\/h3>\n<pre><code>GET \/api\/v1\/tasks\/{id}\/results<\/code><\/pre>\n\n<h3>KI-Ausführung<\/h3>\n<pre><code>POST \/api\/v1\/tasks\/{id}\/execute\nContent-Type: application\/json\n\n{\n \"model\": \"mistral\",\n \"auto_complete\": true\n}<\/code><\/pre>\n<p>Führt den Task mit lokalem Ollama aus.<\/p>\n\n<h3>Statistiken<\/h3>\n<pre><code>GET \/api\/v1\/tasks\/statistics<\/code><\/pre>\n<p>Liefert Statistiken zu Tasks, Token-Verbrauch und Modell-Nutzung.<\/p>\n\n<h4>Response<\/h4>\n<pre><code>{\n \"success\": true,\n \"data\": {\n \"tasks\": {\n \"by_status\": {\"pending\": 10, \"completed\": 50, ...},\n \"by_type\": {\"ai_task\": 30, \"human_task\": 20, ...},\n \"total\": 60\n },\n \"tokens\": {\n \"total_input\": 150000,\n \"total_output\": 50000,\n \"total\": 200000\n },\n \"models\": [\n {\"model_name\": \"claude-opus-4-5\", \"count\": 25, \"total_tokens\": 80000},\n {\"model_name\": \"mistral\", \"count\": 15, \"total_tokens\": 40000}\n ]\n }\n}<\/code><\/pre>\n\n<h2>Response-Format<\/h2>\n\n<h3>Erfolg<\/h3>\n<pre><code>{\n \"success\": true,\n \"data\": { ... },\n \"meta\": {\n \"total\": 42,\n \"limit\": 50,\n \"offset\": 0\n }\n}<\/code><\/pre>\n\n<h3>Fehler<\/h3>\n<pre><code>{\n \"success\": false,\n \"error\": \"Fehlermeldung\"\n}<\/code><\/pre>\n\n<h2>Task-Objekt<\/h2>\n<pre><code>{\n \"id\": 100,\n \"uuid\": \"76c8b3ed-...\",\n \"title\": \"Dokumentation prüfen\",\n \"description\": \"...\",\n \"type\": \"ai_task\",\n \"status\": \"pending\",\n \"created_by\": \"mcp-tasks\",\n \"created_by_type\": \"ai\",\n \"parent_task_id\": null,\n \"due_date\": \"2025-12-25T12:00:00\",\n \"created_at\": \"2025-12-20T10:00:00\",\n \"updated_at\": \"2025-12-20T10:00:00\",\n \"completed_at\": null\n}<\/code><\/pre>\n\n<h2>UseCases<\/h2>\n<table>\n <tr><th>UseCase<\/th><th>Beschreibung<\/th><\/tr>\n <tr><td>GetTasksUseCase<\/td><td>Tasks laden und filtern<\/td><\/tr>\n <tr><td>CreateTaskUseCase<\/td><td>Task erstellen<\/td><\/tr>\n <tr><td>UpdateTaskStatusUseCase<\/td><td>Status ändern<\/td><\/tr>\n <tr><td>DeleteTaskUseCase<\/td><td>Task löschen<\/td><\/tr>\n <tr><td>AssignTaskUseCase<\/td><td>Zuweisung erstellen<\/td><\/tr>\n <tr><td>SaveTaskResultUseCase<\/td><td>Ergebnis speichern<\/td><\/tr>\n <tr><td>ExecuteAITaskUseCase<\/td><td>KI-Ausführung mit Ollama<\/td><\/tr>\n<\/table>\n\n<h2>Verwandte Dokumentation<\/h2>\n<ul>\n <li><a href=\"\/docs\/anwendungen\/ki-tasks\">KI-Tasks Übersicht<\/a><\/li>\n <li><a href=\"\/docs\/mcp\/mcp-tasks\">MCP-Tasks Server<\/a><\/li>\n<\/ul>]]>"
}
}
{
"tool_response": [
{
"type": "text",
"text": "{\n \"success\": true,\n \"doc\": {\n \"id\": 78,\n \"parent_id\": 51,\n \"slug\": \"tasks\",\n \"path\": \"\/api\/tasks\",\n \"title\": \"Tasks API\",\n \"description\": \"REST-API für Task-Management mit KI-Ausführung\",\n \"content\": \"<![CDATA[<nav class=\\\"breadcrumb\\\">\\n <a href=\\\"\/docs\\\">Dokumentation<\/a> » <a href=\\\"\/docs\/api\\\">API<\/a> » Tasks API\\n<\/nav>\\n\\n<h1>Tasks API<\/h1>\\n<p class=\\\"doc-meta\\\"><strong>Erstellt:<\/strong> 2025-12-20 | <strong>Aktualisiert:<\/strong> 2025-12-31<\/p>\\n\\n<p>REST-API für Task-Management mit Zuweisungen, Ergebnissen und KI-Ausführung.<\/p>\\n\\n<table>\\n <tr><th>Controller<\/th><td>Controller\\\\Api\\\\TaskController<\/td><\/tr>\\n <tr><th>Base-URL<\/th><td>\/api\/v1\/tasks<\/td><\/tr>\\n <tr><th>Format<\/th><td>JSON<\/td><\/tr>\\n<\/table>\\n\\n<h2>Endpoints<\/h2>\\n\\n<h3>Tasks auflisten<\/h3>\\n<pre><code>GET \/api\/v1\/tasks?status=pending&type=ai_task&limit=50&offset=0<\/code><\/pre>\\n<table>\\n <tr><th>Parameter<\/th><th>Typ<\/th><th>Beschreibung<\/th><\/tr>\\n <tr><td>status<\/td><td>string<\/td><td>pending, in_progress, completed, failed, cancelled<\/td><\/tr>\\n <tr><td>type<\/td><td>string<\/td><td>human_task, ai_task, mixed<\/td><\/tr>\\n <tr><td>search<\/td><td>string<\/td><td>Volltextsuche<\/td><\/tr>\\n <tr><td>limit<\/td><td>int<\/td><td>Max. Ergebnisse (default: 50)<\/td><\/tr>\\n <tr><td>offset<\/td><td>int<\/td><td>Pagination-Offset<\/td><\/tr>\\n<\/table>\\n\\n<h3>Task erstellen<\/h3>\\n<pre><code>POST \/api\/v1\/tasks\\nContent-Type: application\/json\\n\\n{\\n \\\"title\\\": \\\"Dokumentation prüfen\\\",\\n \\\"description\\\": \\\"Alle Links in der Doku validieren\\\",\\n \\\"type\\\": \\\"ai_task\\\",\\n \\\"due_date\\\": \\\"2025-12-25T12:00:00Z\\\"\\n}<\/code><\/pre>\\n\\n<h3>Task-Details abrufen<\/h3>\\n<pre><code>GET \/api\/v1\/tasks\/{id}<\/code><\/pre>\\n<p>Liefert Task mit Assignments und Results.<\/p>\\n\\n<h3>Task aktualisieren<\/h3>\\n<pre><code>PUT \/api\/v1\/tasks\/{id}\\nContent-Type: application\/json\\n\\n{\\n \\\"title\\\": \\\"Neuer Titel\\\",\\n \\\"description\\\": \\\"Neue Beschreibung\\\",\\n \\\"type\\\": \\\"mixed\\\",\\n \\\"due_date\\\": \\\"2025-12-30T18:00:00Z\\\"\\n}<\/code><\/pre>\\n\\n<h3>Task löschen<\/h3>\\n<pre><code>DELETE \/api\/v1\/tasks\/{id}<\/code><\/pre>\\n\\n<h3>Status ändern<\/h3>\\n<pre><code>PUT \/api\/v1\/tasks\/{id}\/status\\nContent-Type: application\/json\\n\\n{\\n \\\"status\\\": \\\"in_progress\\\",\\n \\\"updated_by\\\": \\\"claude\\\",\\n \\\"updated_by_type\\\": \\\"ai\\\"\\n}<\/code><\/pre>\\n\\n<h3>Task zuweisen<\/h3>\\n<pre><code>POST \/api\/v1\/tasks\/{id}\/assign\\nContent-Type: application\/json\\n\\n{\\n \\\"assignee\\\": \\\"claude\\\",\\n \\\"assignee_type\\\": \\\"claude\\\",\\n \\\"model_name\\\": \\\"claude-3-5-sonnet\\\",\\n \\\"notes\\\": \\\"Priorität hoch\\\"\\n}<\/code><\/pre>\\n\\n<h3>Ergebnis speichern<\/h3>\\n<pre><code>POST \/api\/v1\/tasks\/{id}\/results\\nContent-Type: application\/json\\n\\n{\\n \\\"executor\\\": \\\"claude\\\",\\n \\\"executor_type\\\": \\\"claude\\\",\\n \\\"model_name\\\": \\\"claude-3-5-sonnet\\\",\\n \\\"response\\\": \\\"Task erfolgreich abgeschlossen\\\",\\n \\\"status\\\": \\\"success\\\",\\n \\\"tokens_input\\\": 1500,\\n \\\"tokens_output\\\": 500\\n}<\/code><\/pre>\\n\\n<h3>Ergebnisse abrufen<\/h3>\\n<pre><code>GET \/api\/v1\/tasks\/{id}\/results<\/code><\/pre>\\n\\n<h3>KI-Ausführung<\/h3>\\n<pre><code>POST \/api\/v1\/tasks\/{id}\/execute\\nContent-Type: application\/json\\n\\n{\\n \\\"model\\\": \\\"mistral\\\",\\n \\\"auto_complete\\\": true\\n}<\/code><\/pre>\\n<p>Führt den Task mit lokalem Ollama aus.<\/p>\\n\\n<h3>Statistiken<\/h3>\\n<pre><code>GET \/api\/v1\/tasks\/statistics<\/code><\/pre>\\n<p>Liefert Statistiken zu Tasks, Token-Verbrauch und Modell-Nutzung.<\/p>\\n\\n<h4>Response<\/h4>\\n<pre><code>{\\n \\\"success\\\": true,\\n \\\"data\\\": {\\n \\\"tasks\\\": {\\n \\\"by_status\\\": {\\\"pending\\\": 10, \\\"completed\\\": 50, ...},\\n \\\"by_type\\\": {\\\"ai_task\\\": 30, \\\"human_task\\\": 20, ...},\\n \\\"total\\\": 60\\n },\\n \\\"tokens\\\": {\\n \\\"total_input\\\": 150000,\\n \\\"total_output\\\": 50000,\\n \\\"total\\\": 200000\\n },\\n \\\"models\\\": [\\n {\\\"model_name\\\": \\\"claude-opus-4-5\\\", \\\"count\\\": 25, \\\"total_tokens\\\": 80000},\\n {\\\"model_name\\\": \\\"mistral\\\", \\\"count\\\": 15, \\\"total_tokens\\\": 40000}\\n ]\\n }\\n}<\/code><\/pre>\\n\\n<h2>Response-Format<\/h2>\\n\\n<h3>Erfolg<\/h3>\\n<pre><code>{\\n \\\"success\\\": true,\\n \\\"data\\\": { ... },\\n \\\"meta\\\": {\\n \\\"total\\\": 42,\\n \\\"limit\\\": 50,\\n \\\"offset\\\": 0\\n }\\n}<\/code><\/pre>\\n\\n<h3>Fehler<\/h3>\\n<pre><code>{\\n \\\"success\\\": false,\\n \\\"error\\\": \\\"Fehlermeldung\\\"\\n}<\/code><\/pre>\\n\\n<h2>Task-Objekt<\/h2>\\n<pre><code>{\\n \\\"id\\\": 100,\\n \\\"uuid\\\": \\\"76c8b3ed-...\\\",\\n \\\"title\\\": \\\"Dokumentation prüfen\\\",\\n \\\"description\\\": \\\"...\\\",\\n \\\"type\\\": \\\"ai_task\\\",\\n \\\"status\\\": \\\"pending\\\",\\n \\\"created_by\\\": \\\"mcp-tasks\\\",\\n \\\"created_by_type\\\": \\\"ai\\\",\\n \\\"parent_task_id\\\": null,\\n \\\"due_date\\\": \\\"2025-12-25T12:00:00\\\",\\n \\\"created_at\\\": \\\"2025-12-20T10:00:00\\\",\\n \\\"updated_at\\\": \\\"2025-12-20T10:00:00\\\",\\n \\\"completed_at\\\": null\\n}<\/code><\/pre>\\n\\n<h2>UseCases<\/h2>\\n<table>\\n <tr><th>UseCase<\/th><th>Beschreibung<\/th><\/tr>\\n <tr><td>GetTasksUseCase<\/td><td>Tasks laden und filtern<\/td><\/tr>\\n <tr><td>CreateTaskUseCase<\/td><td>Task erstellen<\/td><\/tr>\\n <tr><td>UpdateTaskStatusUseCase<\/td><td>Status ändern<\/td><\/tr>\\n <tr><td>DeleteTaskUseCase<\/td><td>Task löschen<\/td><\/tr>\\n <tr><td>AssignTaskUseCase<\/td><td>Zuweisung erstellen<\/td><\/tr>\\n <tr><td>SaveTaskResultUseCase<\/td><td>Ergebnis speichern<\/td><\/tr>\\n <tr><td>ExecuteAITaskUseCase<\/td><td>KI-Ausführung mit Ollama<\/td><\/tr>\\n<\/table>\\n\\n<h2>Verwandte Dokumentation<\/h2>\\n<ul>\\n <li><a href=\\\"\/docs\/anwendungen\/ki-tasks\\\">KI-Tasks Übersicht<\/a><\/li>\\n <li><a href=\\\"\/docs\/mcp\/mcp-tasks\\\">MCP-Tasks Server<\/a><\/li>\\n<\/ul>]]>\",\n \"status\": \"published\",\n \"sort_order\": 3,\n \"depth\": 1,\n \"created_at\": \"2025-12-20T13:39:31\",\n \"updated_at\": \"2025-12-31T04:19:07\"\n },\n \"message\": \"Document #78 updated\"\n}"
}
]
}