v0.1 wave 2B (step 7): MCP server — stdio JSON-RPC, 8 tools
- mcp/ subpackage: crafting-table-mcp (separate pip install) - Self-contained requests-based HTTP client (mirrors clawdforge_mcp pattern) - 8 tools: list_projects / register_project / run_audit / run_build / run_test / get_job / get_findings / draft_patch (stub) - draft_patch is stubbed — full impl lands in wave 3 / step 9 - tests/: client + tool coverage, 401/404 surfacing - Tools designed for LLM consumption; descriptions tuned for "when to use" guidance Spec: memory/spec-crafting-table.md
This commit is contained in:
parent
d467b2f5be
commit
ecb9d76e6d
13 changed files with 2889 additions and 2 deletions
21
README.md
21
README.md
|
|
@ -15,7 +15,7 @@ through clawdforge.
|
|||
|
||||
Spec: `Sulkta-Coop/openclaw-workspace/memory/spec-crafting-table.md` (LAN-only).
|
||||
|
||||
## Status — v0.1 step 6 of 10
|
||||
## Status — v0.1 step 7 of 10
|
||||
|
||||
- [x] Step 1: Dockerfile + per-language smoke
|
||||
- [x] Step 2: SQLite ledger + project registry
|
||||
|
|
@ -23,7 +23,7 @@ Spec: `Sulkta-Coop/openclaw-workspace/memory/spec-crafting-table.md` (LAN-only).
|
|||
- [x] Step 4: Job runner core (asyncio worker pool, git worktree, subprocess)
|
||||
- [x] Step 5: Per-language parsers (Rust / Python / Go / TS first)
|
||||
- [x] Step 6: Findings extraction + storage
|
||||
- [ ] Step 7: MCP server (stdio JSON-RPC, 8 tools)
|
||||
- [x] Step 7: MCP server (stdio JSON-RPC, 8 tools) — see [mcp/README.md](mcp/README.md)
|
||||
- [x] Step 8: Email digest scheduler
|
||||
- [ ] Step 9: Autonomous patch loop (clawdforge integration)
|
||||
- [ ] Step 10: Production recipes — clawdforge, cauldron, tradecraft
|
||||
|
|
@ -209,6 +209,7 @@ without lock contention. The runner is the only mutator of `jobs`/
|
|||
│ ├── models.py # Pydantic schemas
|
||||
│ └── config.py # env-driven config
|
||||
├── tests/ # pytest suite (~60 tests)
|
||||
├── mcp/ # crafting-table-mcp — MCP stdio bridge (separate pip install)
|
||||
├── pyproject.toml
|
||||
├── requirements.txt
|
||||
└── .env.example
|
||||
|
|
@ -331,6 +332,22 @@ curl -sH "Authorization: Bearer $ADMIN" \
|
|||
Idempotency: `digest_runs` table holds `UNIQUE(date, project_name)`, so the
|
||||
06:00 loop is safe to re-fire on the same day — only the first call sends.
|
||||
|
||||
## MCP bridge
|
||||
|
||||
The `mcp/` subdirectory ships a self-contained `crafting-table-mcp` Python
|
||||
package that exposes the HTTP API to MCP-aware clients (Claude Desktop, Claude
|
||||
Code, Cursor, Zed, custom agents). See [mcp/README.md](mcp/README.md) for the
|
||||
tool surface, installation, and configuration.
|
||||
|
||||
Quickstart:
|
||||
|
||||
```bash
|
||||
pip install -e mcp
|
||||
export CRAFTING_TABLE_BASE_URL=http://192.168.0.5:8810
|
||||
export CRAFTING_TABLE_TOKEN=ct_...
|
||||
crafting-table-mcp # stdio JSON-RPC server
|
||||
```
|
||||
|
||||
## License
|
||||
|
||||
MIT
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue