This release consolidates the project into a single clean MCP backend for natural-language-to-PDDL planning and Fast Downward execution.
Highlights
- Rebuilt the project around a modern
src/pddl_mcp/Python package layout. - Added stable MCP tools:
plan_from_text,generate_plan,validate_config, andget_system_info. - Added configurable LLM support with deterministic fallback when the model is unavailable or returns an incomplete response.
- Added Fast Downward execution, plan parsing, validation, and artifact reporting.
- Added a curated domain template resource file under
src/pddl_mcp/resources/domain_templates.json. - Added a farmer, wolf, goat, and cabbage river-crossing demo that solves to a valid 7-step plan.
- Removed old duplicate scripts, broken examples, debug files, and legacy project structure.
Demo Result
Input:
A farmer must take a wolf, a goat, and a cabbage across a river.
The boat must be driven by the farmer and can carry at most one item.
If the farmer is absent, the wolf eats the goat and the goat eats the cabbage.
Plan:
(cross-with goat left right)
(cross-alone right left)
(cross-with cabbage left right)
(cross-with goat right left)
(cross-with wolf left right)
(cross-alone right left)
(cross-with goat left right)
Validation
pytest: 13 passed
ruff: all checks passed
compileall: passed
secret scan: no hard-coded keys found
Upgrade Notes
- Real secrets should be configured through
.env, local environment variables, or deployment secrets. .env, generated planner output, and local Fast Downward builds are intentionally ignored by Git.- If you previously used the old root-level modules, switch imports to
pddl_mcp.*.