átlagos kiegészítséek jó sok
This commit is contained in:
233
docs/mcp_config_audit_2026-03-15.md
Normal file
233
docs/mcp_config_audit_2026-03-15.md
Normal file
@@ -0,0 +1,233 @@
|
||||
# MCP Konfiguráció Audit és Hibaelhárítási Útmutató
|
||||
|
||||
**Dátum:** 2026-03-15
|
||||
**Auditor:** Rendszerauditőr / Főmérnök
|
||||
**Cél:** A globális és projekt MCP beállítások elemzése, működési problémák azonosítása, valamint a saját rendszerbeállításhoz szükséges információk összegyűjtése.
|
||||
|
||||
## 1. Jelenlegi Konfigurációk
|
||||
|
||||
### 1.1 Globális MCP Beállítások
|
||||
**Fájl:** `/home/coder/.local/share/code-server/User/globalStorage/rooveterinaryinc.roo-cline/settings/mcp_settings.json`
|
||||
|
||||
```json
|
||||
{
|
||||
"mcpServers": {
|
||||
"focalboard": {
|
||||
"command": "docker",
|
||||
"args": [
|
||||
"run",
|
||||
"-i",
|
||||
"--rm",
|
||||
"--network",
|
||||
"shared_db_net",
|
||||
"--env-file",
|
||||
"/opt/docker/dev/service_finder/.roo/.env.focalboard",
|
||||
"mcp-focalboard-custom",
|
||||
"node",
|
||||
"build/index.js"
|
||||
],
|
||||
"disabled": true,
|
||||
"autoApprove": [],
|
||||
"alwaysAllow": [
|
||||
"create_card",
|
||||
"move_card",
|
||||
"get_boards",
|
||||
"get_cards"
|
||||
]
|
||||
},
|
||||
"postgres-wiki": {
|
||||
"command": "npx",
|
||||
"args": [
|
||||
"-y",
|
||||
"@modelcontextprotocol/server-postgres",
|
||||
"postgresql://wikijs:MiskociA74@wikijs-db:5432/wiki"
|
||||
]
|
||||
},
|
||||
"postgres-service-finder": {
|
||||
"command": "npx",
|
||||
"args": [
|
||||
"-y",
|
||||
"@modelcontextprotocol/server-postgres",
|
||||
"postgresql://sf_user:AppSafePass_2026@service-finder-db:5432/service_finder_db"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 1.2 Projekt MCP Beállítások
|
||||
**Fájl:** `.roo/mcp.json`
|
||||
```json
|
||||
{
|
||||
"mcpServers": {
|
||||
"postgres-wiki": {
|
||||
"command": "npx",
|
||||
"args": [
|
||||
"-y",
|
||||
"@modelcontextprotocol/server-postgres",
|
||||
"postgresql://wikijs:${WIKIJS_DB_PASSWORD}@wikijs-db:5432/wiki"
|
||||
]
|
||||
},
|
||||
"postgres-service-finder": {
|
||||
"command": "npx",
|
||||
"args": [
|
||||
"-y",
|
||||
"@modelcontextprotocol/server-postgres",
|
||||
"postgresql://sf_user:${SF_DB_PASSWORD}@service-finder-db:5432/service_finder_db"
|
||||
]
|
||||
},
|
||||
"filesystem": {
|
||||
"command": "npx",
|
||||
"args": [
|
||||
"-y",
|
||||
"@modelcontextprotocol/server-filesystem",
|
||||
"/opt/docker/dev/service_finder"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Fájl:** `.roo/mcp_settings.json`
|
||||
```json
|
||||
{
|
||||
"mcpServers": {
|
||||
"focalboard": {
|
||||
"command": "docker",
|
||||
"args": [
|
||||
"run",
|
||||
"-i",
|
||||
"--rm",
|
||||
"--network", "shared_db_net",
|
||||
"--env-file", "/opt/docker/dev/service_finder/.roo/.env.focalboard",
|
||||
"mcp-focalboard-custom",
|
||||
"node",
|
||||
"build/index.js"
|
||||
],
|
||||
"disabled": false,
|
||||
"autoApprove": [],
|
||||
"alwaysAllow": ["create_card", "move_card", "get_boards", "get_cards"]
|
||||
},
|
||||
"postgres-wiki": {
|
||||
"command": "npx",
|
||||
"args": [
|
||||
"-y",
|
||||
"@modelcontextprotocol/server-postgres",
|
||||
"postgresql://wikijs:'MiskociA74'@wikijs-db:5432/wiki"
|
||||
]
|
||||
},
|
||||
"postgres-service-finder": {
|
||||
"command": "npx",
|
||||
"args": [
|
||||
"-y",
|
||||
"@modelcontextprotocol/server-postgres",
|
||||
"postgresql://sf_user:'AppSafePass_2026'@service-finder-db:5432/service_finder_db"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### 1.3 Környezeti Fájlok
|
||||
- **`.roo/.env.focalboard`** – tartalmazza a Focalboard kapcsolati adatokat:
|
||||
```
|
||||
FOCALBOARD_HOST=http://focalboard:8000
|
||||
FOCALBOARD_USERNAME=kincses
|
||||
FOCALBOARD_PASSWORD=MiskociA74
|
||||
FOCALBOARD_TOKEN=k6p5mijdxdtg3ig6bhq5wurfx4y
|
||||
```
|
||||
|
||||
## 2. Azonosított Problémák
|
||||
|
||||
### 2.1 Inkonzisztens `disabled` állapot
|
||||
- **Globális beállítás:** `focalboard` → `disabled: true`
|
||||
- **Projekt beállítás:** `focalboard` → `disabled: false`
|
||||
- **Hatás:** A szerver nem indul el, ha a globális beállítás felülírja a projektet.
|
||||
|
||||
### 2.2 Hiányzó Filesystem Szerver a Globális Beállításokban
|
||||
- A projekt `.roo/mcp.json` definiál egy `filesystem` szervert, amely a munkaterület könyvtárát szolgálja ki.
|
||||
- A globális beállítások **nem tartalmaznak** `filesystem` szervert, így a fájlrendszer MCP nem lesz elérhető a kliens számára.
|
||||
|
||||
### 2.3 Jelszó Escape Karakterek
|
||||
- A projekt `mcp_settings.json` a jelszavakat aposztrófok között adja meg (pl. `'MiskociA74'`). Ez lehet, hogy felesleges, és hibás kapcsolódást eredményezhet.
|
||||
|
||||
### 2.4 Docker Hálózati Függőség
|
||||
- A `focalboard` szerver a `shared_db_net` Docker hálózatra támaszkodik.
|
||||
- A Docker daemon nem érhető el a jelenlegi felhasználói környezetből (`permission denied`). Ennek oka:
|
||||
- A felhasználó nincs a `docker` csoportban, vagy
|
||||
- A Docker socket nem megfelelően van mountolva a konténerbe.
|
||||
|
||||
### 2.5 MCP Szerver Képek Hiánya
|
||||
- A `mcp-focalboard-custom` image nem feltétlenül létezik a helyi Docker registry‑ben.
|
||||
- Az `npx` csomagok (`@modelcontextprotocol/server-postgres`, `@modelcontextprotocol/server-filesystem`) telepítve vannak? Ha nem, az első futtatáskor letöltődnek, de időtúllépést okozhatnak.
|
||||
|
||||
## 3. Szükséges Információk a Saját Rendszer Beállításához
|
||||
|
||||
Ahhoz, hogy a felhasználó a saját környezetében működő MCP konfigurációt építsen ki, a következő információkat kell összegyűjtenie / ellenőriznie:
|
||||
|
||||
### 3.1 Docker Konfiguráció
|
||||
- **Docker csoporttagság:** `groups` parancs – a felhasználónak a `docker` csoportban kell lennie.
|
||||
- **Docker socket elérési út:** `/var/run/docker.sock` jogosultságai (`ls -la /var/run/docker.sock`).
|
||||
- **Hálózat létezése:** `docker network ls | grep shared_db_net` (sudo-val).
|
||||
- **Konténerek állapota:** `docker ps | grep roo-helper` – a `roo-helper` konténernek futnia kell a `gitea_manager.py` script futtatásához.
|
||||
|
||||
### 3.2 Környezeti Változók
|
||||
- **WIKIJS_DB_PASSWORD** és **SF_DB_PASSWORD** – a projekt `.env` fájlból kell kinyerni, hogy a helyettesítés működjön.
|
||||
- **Focalboard token** érvényessége – a tokennek meg kell egyeznie a Focalboard szerver konfigurációjával.
|
||||
|
||||
### 3.3 MCP Szerver Képek és Csomagok
|
||||
- **Egyéni MCP kép:** `docker images | grep mcp-focalboard-custom`
|
||||
- **NPM csomagok:** `npx @modelcontextprotocol/server-postgres --version` (a konténeren belül)
|
||||
|
||||
### 3.4 Roo‑Cline Beállítási Hierarchia
|
||||
- **Melyik beállítás fájl érvényes?** A Roo‑Cline a globális (`~/.local/share/code-server/...`) vagy a projekt (`.roo/`) beállításokat használja?
|
||||
*Általában a globális beállítások felülírják a projekt szintűeket, de ez függ a kliens implementációjától.*
|
||||
|
||||
### 3.5 Tesztelési Lépések
|
||||
1. **Focalboard szerver indítása kézzel:**
|
||||
```bash
|
||||
docker run -i --rm --network shared_db_net --env-file .roo/.env.focalboard mcp-focalboard-custom node build/index.js
|
||||
```
|
||||
2. **PostgreSQL szerver teszt:**
|
||||
```bash
|
||||
npx -y @modelcontextprotocol/server-postgres postgresql://sf_user:AppSafePass_2026@service-finder-db:5432/service_finder_db
|
||||
```
|
||||
3. **Filesystem szerver teszt:**
|
||||
```bash
|
||||
npx -y @modelcontextprotocol/server-filesystem /opt/docker/dev/service_finder
|
||||
```
|
||||
|
||||
## 4. Javasolt Javítási Lépések
|
||||
|
||||
1. **Globális beállítások frissítése:**
|
||||
Másold át a projekt `filesystem` szerver definícióját a globális `mcp_settings.json` fájlba, és állítsd a `focalboard` `disabled` értékét `false`-ra (ha a Focalboard szükséges).
|
||||
|
||||
2. **Jelszó escape egységesítése:**
|
||||
Távolítsd el a felesleges aposztrófokat a jelszavak körül a `mcp_settings.json`-ból.
|
||||
|
||||
3. **Docker jogosultságok ellenőrzése:**
|
||||
Add hozzá a felhasználót a docker csoporthoz: `sudo usermod -aG docker $USER`, majd jelentkezz be újra.
|
||||
|
||||
4. **Hálózat létrehozása (ha hiányzik):**
|
||||
```bash
|
||||
docker network create shared_db_net
|
||||
```
|
||||
|
||||
5. **MCP kép buildelése (ha szükséges):**
|
||||
A `mcp-focalboard-custom` kép forráskódja a projektben lehet. Buildeld le:
|
||||
```bash
|
||||
docker build -t mcp-focalboard-custom -f Dockerfile.focalboard .
|
||||
```
|
||||
|
||||
6. **Tesztelés a Roo‑Cline‑ben:**
|
||||
Indítsd újra a VS Code‑ot (vagy a Roo‑Cline bővítményt), hogy a módosított beállítások érvénybe lépjenek, majd próbáld ki az MCP szervereket (pl. fájllistázás, adatbázis lekérdezés).
|
||||
|
||||
## 5. Következő Lépések a Projektben
|
||||
|
||||
- Hozz létre egy Gitea kártyát a fenti javítások végrehajtására (ha a Docker elérhető).
|
||||
- Dokumentáld a végleges működő konfigurációt a `docs/` mappában.
|
||||
- Frissítsd a `.roo/history.md` fájlt a változtatásokról.
|
||||
|
||||
---
|
||||
|
||||
*Ez a dokumentum a Service Finder projekt Audit módjában készült, kizárólag információgyűjtés és elemzés céljából. A javításokat a megfelelő szerepkör (pl. Fast Coder vagy Architect) hajthatja végre.*
|
||||
Reference in New Issue
Block a user