chore: reorganize into polyglot monorepo (workshop)
- Move bigmind/ -> mcp/bigmind/ - Move webscraper/ -> mcp/webscraper/ - Move mss-failsafe/ -> java/mss-failsafe/ - Move Wellmann-Shop/ -> java/wellmann-shop/ (normalize to kebab-case) - Add .roo/ IDE config files to tracking - Add plans/REPO_STRATEGY.md (monorepo strategy document) - Expand .gitignore: Java/Maven, Node/TS, coverage, uv.lock - Rewrite README.md as navigation index - Update .roo/mcp.json webscraper path to mcp/webscraper/
This commit is contained in:
@@ -1,30 +1,71 @@
|
||||
# pi_mcps — Homelab MCP Servers Monorepo
|
||||
# Workshop — Patrick's Homelab Monorepo
|
||||
|
||||
This repository contains all MCP (Model Context Protocol) servers for Patrick's homelab setup on Fedora + TrueNAS.local.
|
||||
A polyglot monorepo for personal engineering projects: MCP servers, Java web apps, and whatever comes next. Hosted on [Gitea @ TrueNAS.local](http://192.168.188.119:30008/pplate/pi_mcps).
|
||||
|
||||
## Structure
|
||||
See [`plans/REPO_STRATEGY.md`](plans/REPO_STRATEGY.md) for the full structure rationale and conventions.
|
||||
|
||||
- `bigmind/` — BigMind persistent memory MCP server (SQLite, FastMCP, web profile UI)
|
||||
- `webscraper/` — Web scraping MCP server (httpx + BeautifulSoup + html2text)
|
||||
- [future servers...]
|
||||
---
|
||||
|
||||
## Build & Run
|
||||
## 📂 Structure
|
||||
|
||||
Each subdirectory is a standalone Python package with its own `pyproject.toml` and `run.sh`.
|
||||
|
||||
```bash
|
||||
cd bigmind # or webscraper/
|
||||
./run.sh # uv sync && uv run src/server.py
|
||||
```
|
||||
workshop/
|
||||
├── mcp/ Python MCP servers (FastMCP + uv)
|
||||
├── java/ Java web projects (Maven + Jakarta EE)
|
||||
├── plans/ Architecture & strategy docs
|
||||
└── .roo/ IDE config (Roo Code, MCP wiring)
|
||||
```
|
||||
|
||||
## MCP Config
|
||||
---
|
||||
|
||||
Wired into IDEs via `.roo/mcp.json` (VS Code) and equivalent configs in IntelliJ/PyCharm.
|
||||
## 🐍 MCP Servers (`mcp/`)
|
||||
|
||||
## Gitea
|
||||
| Server | Description | Stack |
|
||||
|---|---|---|
|
||||
| [`mcp/bigmind/`](mcp/bigmind/) | Persistent AI memory — sessions, facts, hypotheses, profile UI | Python, FastMCP, SQLite, Flask |
|
||||
| [`mcp/webscraper/`](mcp/webscraper/) | Web scraping — fetch, links, tables, sections, sitemaps | Python, FastMCP, httpx, BeautifulSoup |
|
||||
|
||||
Hosted at http://192.168.188.119:30008/pplate/pi_mcps
|
||||
**Run a server:**
|
||||
```bash
|
||||
cd mcp/bigmind # or mcp/webscraper
|
||||
./run.sh
|
||||
```
|
||||
|
||||
Each server is an independent Python package. `uv sync` handles dependencies, no shared virtualenv.
|
||||
|
||||
---
|
||||
|
||||
## ☕ Java Projects (`java/`)
|
||||
|
||||
| Project | Description | Stack |
|
||||
|---|---|---|
|
||||
| [`java/mss-failsafe/`](java/mss-failsafe/) | MSS Failsafe — multi-module Java EE web application | Java EE, Maven, WildFly |
|
||||
| [`java/wellmann-shop/`](java/wellmann-shop/) | Wellmann online shop — JSF/PrimeFaces e-commerce | Java 8, JSF, PrimeFaces, EclipseLink, MySQL |
|
||||
|
||||
**Build a project:**
|
||||
```bash
|
||||
cd java/wellmann-shop
|
||||
mvn clean package
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📐 Plans & Architecture (`plans/`)
|
||||
|
||||
| Document | Description |
|
||||
|---|---|
|
||||
| [`plans/REPO_STRATEGY.md`](plans/REPO_STRATEGY.md) | Monorepo strategy, taxonomy, naming conventions, migration log |
|
||||
|
||||
---
|
||||
|
||||
## 🔧 IDE Wiring
|
||||
|
||||
MCP servers are wired into VS Code via [`.roo/mcp.json`](.roo/mcp.json).
|
||||
|
||||
BigMind memory DB lives at `~/.mcp/bigmind/memory.db` (outside the repo — not committed).
|
||||
|
||||
---
|
||||
|
||||
## License
|
||||
|
||||
MIT — personal homelab use.
|
||||
MIT — personal homelab use.
|
||||
|
||||
Reference in New Issue
Block a user