pencms MCP server
Commit 17 Okt 2026Memungkinkan AI agent dan manusia untuk berkolaborasi pada konten berbasis Markdown melalui headless CMS dengan MCP server bawaan.
Juga dikenal sebagai slpstream/pencms
- Stars
- 1
- Tools
- —
- Unduhan, 30 hari
- —
- Versi terbaru
- —
- Commit terakhir
- 17 Okt 2026
- Lisensi
- MIT
Apa itu pencms MCP?
pencms adalah MCP server. Memungkinkan AI agent dan manusia untuk berkolaborasi pada konten berbasis Markdown melalui headless CMS dengan MCP server bawaan.
Ringkasan dibuat dari README proyek
Tentang pencms MCP server
Kolaborasi pada konten berbasis Markdown antara AI agent dan manusia dimungkinkan oleh pencms melalui arsitektur headless miliknya. Sistem self-hosted ini menggunakan backend Python FastAPI dan frontend admin PHP untuk mengelola flat files. Karena sistem ini mengandalkan Markdown dan YAML alih-alih database sekunder untuk draf, agent dan manusia akan selalu bekerja pada source of truth yang sama.
Developer dapat men-deploy sistem ini secara lokal di laptop atau di VPS menggunakan Docker Compose dan Caddy. Setup ini memerlukan backend Python yang berjalan di port 8008 dan frontend PHP di port 8009. Agent berinteraksi dengan sistem melalui endpoint MCP di /api/mcp menggunakan access key yang dapat dicabut. Hal ini memungkinkan proses baca dan tulis berkecepatan tinggi sambil tetap menjaga kontrol atas Git remotes, penyimpanan disk, dan pengaturan TLS. Sistem ini juga menyertakan indeks SQLite lokal untuk memastikan query tetap responsif bahkan pada perangkat dengan spesifikasi rendah.
Apa yang bisa Anda lakukan dengannya
- 1Agentic content creationAI agent dapat membaca dan menulis secara langsung ke file Markdown Anda untuk mempublikasikan postingan baru.
- 2Synchronizing with remote repositoriesAnda dapat menyinkronkan konten ke GitHub atau GitLab menggunakan HTTPS REST API tanpa memerlukan akses shell.
- 3Managing multi-agent workflowsSeorang operator dapat mengelola beberapa AI agent dengan menerbitkan access key masing-masing.
- 4Human-led content administrationUser dapat mengelola tema, penyimpanan, dan struktur melalui antarmuka admin PHP khusus.
Ditulis berdasarkan README proyek. Setiap use case diperiksa terhadap kutipan dari README tersebut.
Konfigurasi
PHP_CLI_SERVER_WORKERS
| Nama | Deskripsi | Tipe |
|---|---|---|
| PHP_CLI_SERVER_WORKERS | — |
Pengecekan otomatis
Berjalan 15 Nov 2026Laporan lengkap →Belum diverifikasi. Sebuah server memerlukan skor 80, tidak ada temuan serius, dan data yang cukup untuk kami periksa. Cara kerja checks · Yang perlu diperbaiki untuk menambah poin
- Source repository terhubung dan dapat dijangkauslpstream/pencms is public and reachablegithub.com/slpstream/pencms ↗Lolos
- Nama paket mencantumkan repositori ini sebagai sumbernyaTidak diperiksa
- Provenance build (atestasi Sigstore)Tidak diperiksa
- Lisensi open source (OSI)MITspdx.org/licenses/MIT.html ↗Lolos
- Ada commit atau release dalam satu tahun terakhirLast commit or release 2026-10-17github.com/slpstream/pencms ↗Lolos
- OpenSSF ScorecardTidak diperiksa
- Nama package tidak mirip dengan package populerTidak diperiksa
- Tidak ada advisory kritis pada paket atau dependensinyaTidak diperiksa
- Tidak ada instruksi tersembunyi untuk model0 tool descriptions and the README read; no override phrases, credential paths or hidden charactersLolos
- Tools yang bersifat destruktif telah diberi labelTidak diperiksa
- Endpoint remote merespons handshake MCPTidak diperiksa
README
Lihat di GitHubMany agents via keys. One operator.
PenCMS is a self-hosted, MIT-licensed Markdown and Git CMS with a Python (FastAPI) backend and a PHP admin frontend. Humans and agents edit the same flat files with no hidden state or secondary database. You control the machine — disk, Git remotes, TLS, and revocable access keys — while agents read and publish directly through MCP.
Self-Hosting PenCMS? Follow the step-by-step Quickstart Guide to get the Python Backend and PHP Frontend running on your machine in 5 minutes.
Key Principles
- Contract-First: Every backend endpoint, schema, and validation rule is defined in a hand-written OpenAPI specification (
core/openapi.yaml). - Flat-File Source of Truth: All pages, posts, and entries are stored as clean Markdown + YAML files. No second database of “AI drafts.”
- Two doors: PHP admin for humans (structure, keys, themes, storage); MCP (
/api/mcp) for agents (read/write at agent speed). - High-Performance Query Cache: Reads use a local SQLite index on write, so the CMS stays responsive on small machines.
- Shell-Free Git Syncing: Remote repos (GitHub/GitLab) via HTTPS REST APIs when a shell is restricted.
- Selfhosting: Run locally, on LAN HTTPS, or a small VPS.
PenCMS v0.2.0 explicitly bundles Traven Editor v0.3.0.
Repository Structure
pencms/
├── core/ # Contract & Specifications
│ ├── openapi.yaml # API Spec (Source of Truth)
│ ├── schemas/ # Document Schemas
│ └── docs/ # Guides (incl. quickstart.md, mcp_guide.md)
│
├── backend-python/ # FastAPI CMS + MCP + OAuth (the product brain, its backend)
│
└── frontend-php/ # Admin UI client (bundles Traven Editor v0.3.0)
Run / Deploy
| Path | Doc |
|---|---|
| Self-hosting on your own hardware (ELI5 Quickstart) | Step-by-step beginner guide — core/docs/quickstart.md |
| VPS / public HTTPS | Docker Compose + Caddy — core/docs/deploy_compose.md (deploy/) |
| LAN home server | mkcert + reverse proxy — core/docs/lan_https.md |
| An agent’s own site | core/docs/agent-owned-site.md |
| Agents / MCP / OAuth | core/docs/mcp_guide.md |
| Users + agent keys | core/docs/users-and-access.md |
2-Minute Local Quickstart (Laptop / Desktop)
PenCMS runs as two coordinated engines—the Python Backend (API & storage on :8008) and the PHP Frontend (Admin UI & Blog on :8009).
-
Start the Backend (Terminal 1):
cd backend-python python3 -m venv venv && source venv/bin/activate pip install -r requirements.txt playwright install chromium uvicorn app.main:app --reload --port 8008 -
Start the Frontend (Terminal 2):
cd frontend-php PHP_CLI_SERVER_WORKERS=8 php -c php.ini -S 127.0.0.1:8009 -t public router.php -
Initialize & Explore:
- Create your admin account: http://127.0.0.1:8009/admin/setup.php
- Admin Dashboard: http://127.0.0.1:8009/admin/
- Public Blog: http://127.0.0.1:8009/blog/
👉 For full step-by-step guidance, home server setup, and troubleshooting, read the ELI5 Quickstart Guide.
Docker Compose (VPS / Public HTTPS)
For cloud VPS deployments with automatic Let's Encrypt TLS:
cd deploy
cp .env.example .env # set PUBLIC_HOST, JWT_SECRET, JWT_ISSUER, MCP_RESOURCE_URL, CORS_ALLOW_ORIGINS
docker compose up -d --build
See core/docs/deploy_compose.md for full VPS configuration and reverse proxy details.
License
Open-source, licensed under the MIT License.
Pertanyaan tentang pencms MCP
Bagaimana cara manusia dan AI agent berinteraksi dengan konten?
Manusia menggunakan frontend admin PHP, sementara agent menggunakan MCP server untuk membaca dan menulis konten secara langsung.
Di mana konten disimpan?
Semua halaman, postingan, dan entri disimpan sebagai file Markdown dan YAML yang bersih dalam sistem flat-file.
Apakah memerlukan database?
Sistem ini menggunakan flat-file sebagai source of truth, meskipun menggunakan indeks SQLite lokal saat proses penulisan untuk menjaga performa query yang tinggi.