MCP-Docs Installation
Setup, Konfiguration und Registrierung des MCP-Docs Servers.
Voraussetzungen
- Python 3.10+
- MariaDB/MySQL mit ki_system und ki_protokoll Datenbanken
- Claude Code CLI
Installation
1. Verzeichnis erstellen
mkdir -p /opt/mcp-servers/mcp-docs
cd /opt/mcp-servers/mcp-docs
2. Virtual Environment
python3 -m venv venv
source venv/bin/activate
pip install mcp pymysql python-dotenv
3. Environment-Datei
# .env
# Hauptdatenbank (ki_system für Dokumentation)
DB_HOST=localhost
DB_PORT=3306
DB_NAME=ki_system
DB_USER=claude_code
DB_PASSWORD=geheim
# Logging-Datenbank (ki_protokoll für mcp_log)
LOG_DB_HOST=localhost
LOG_DB_NAME=ki_protokoll
LOG_DB_USER=mcp_logger
LOG_DB_PASSWORD=geheim
4. Datenbank-Tabelle
-- In ki_system ausführen
CREATE TABLE IF NOT EXISTS dokumentation (
id INT AUTO_INCREMENT PRIMARY KEY,
parent_id INT DEFAULT NULL,
slug VARCHAR(100) NOT NULL,
path VARCHAR(500) NOT NULL,
title VARCHAR(255) NOT NULL,
description TEXT,
content LONGTEXT,
status ENUM('draft','published','archived') DEFAULT 'draft',
sort_order INT DEFAULT 0,
depth INT DEFAULT 0,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
UNIQUE KEY (path),
FOREIGN KEY (parent_id) REFERENCES dokumentation(id) ON DELETE SET NULL
);
Registrierung in Claude Code
# MCP-Server registrieren
claude mcp add mcp-docs \
/opt/mcp-servers/mcp-docs/venv/bin/python \
/opt/mcp-servers/mcp-docs/server.py
# Registrierung prüfen
claude mcp list
Test
# In Claude Code Session
docs_list(compact=True)
docs_statistics()
docs_hierarchy()
Fehlerbehebung
Server startet nicht
# Manuell testen
/opt/mcp-servers/mcp-docs/venv/bin/python \
/opt/mcp-servers/mcp-docs/server.py
# Logs prüfen
tail -f ~/.claude/logs/mcp-*.log
Datenbankverbindung fehlgeschlagen
- .env Credentials prüfen
- DB-User Berechtigungen prüfen
- MariaDB-Service Status:
systemctl status mariadb
Tool nicht gefunden
# MCP-Server neu registrieren
claude mcp remove mcp-docs
claude mcp add mcp-docs ...
Berechtigungen
| DB-User | Datenbank | Rechte |
|---|---|---|
claude_code | ki_system | SELECT, INSERT, UPDATE, DELETE auf dokumentation |
mcp_logger | ki_protokoll | INSERT auf mcp_log |
Konfiguration (config.py)
from pathlib import Path
from dotenv import load_dotenv
import os
load_dotenv(Path(__file__).parent / ".env")
# Hauptdatenbank (ki_system)
DB_CONFIG = {
"host": os.getenv("DB_HOST", "localhost"),
"port": int(os.getenv("DB_PORT", 3306)),
"database": os.getenv("DB_NAME", "ki_system"),
"user": os.getenv("DB_USER"),
"password": os.getenv("DB_PASSWORD"),
}
# Logging-Datenbank (ki_protokoll)
LOG_DB_CONFIG = {
"host": os.getenv("LOG_DB_HOST", "localhost"),
"database": os.getenv("LOG_DB_NAME", "ki_protokoll"),
"user": os.getenv("LOG_DB_USER"),
"password": os.getenv("LOG_DB_PASSWORD"),
}