A context-aware Project Requirements Prompt (PRP) system built with LangChain, PostgreSQL, and MCP servers for biblical text analysis and project management.
BibleProjectProduction is a comprehensive system that generates context-aware project requirements prompts by integrating:
- LangChain for AI-powered query processing
- PostgreSQL database with biblical text data
- MCP (Model Context Protocol) servers for tool integration
- GitHub MCP server for repository context
- Hebrew analysis for biblical text processing
- Modular architecture with 6 specialized modules
- Context-Aware PRP Generation: Uses project data, server logs, and GitHub issues
- MCP Server Integration: 7 core tools accessible via API endpoints
- Hebrew Text Analysis: Query Hebrew terms and Strong's numbers
- Modular System: 6 modules (core, hebrew_analysis, vector_search, web_ui, mcp_server, cli)
- Comprehensive Compliance: Automated rule checking and validation
- Non-Programmer Accessible: Batch scripts and Jupyter notebooks
- Dual Interface: CLI and web UI for different user preferences
- Python 3.11+
- PostgreSQL database
- LM Studio (for local LLM processing)
- Docker (for GitHub MCP server)
-
Set up environment:
# Double-click setup.bat or run: python -m venv C:/Users/mccoy/BibleProjectProduction/venv_new C:/Users/mccoy/BibleProjectProduction/venv_new/Scripts/activate pip install langchain langchain-community langchain-experimental psycopg flask python-dotenv pytest ruff mypy black isort -
Start servers:
# Double-click manage_servers.bat or run: python src/mcp/bible_scholar_api_server.py python src/search/vector_search_server.py python scripts/modules/web_ui/web_ui_setup.py -
Verify setup:
- MCP Server: http://127.0.0.1:5200/health
- Vector Search: http://127.0.0.1:5150/health
- Web UI: http://127.0.0.1:5300
BibleProjectProduction uses Docker to make running and managing all servers easy and consistent, especially for non-programmers. All major services are containerized:
- MCP Server (API server, port 5200)
- Vector Search Server (port 5150)
- Web UI Server (port 5300)
- GitHub MCP Server (port 8080)
- No manual setup or dependency issues
- All services start with a single command
- Consistent environment for everyone
- Easy to stop, restart, or check status
-
Build all containers:
- Double-click or run:
docker compose build
- This prepares all services for use.
- Double-click or run:
-
Start all servers:
- Double-click or run:
docker compose up -d
- All four servers will start in the background.
- Double-click or run:
-
Check server status:
- Double-click or run:
docker compose ps
- Shows which servers are running and their health.
- Double-click or run:
-
Stop all servers:
- Double-click or run:
docker compose down
- This stops and removes all containers.
- Double-click or run:
- Each server has a
/healthendpoint:- MCP Server: http://127.0.0.1:5200/health
- Vector Search: http://127.0.0.1:5150/health
- Web UI: http://127.0.0.1:5300/health
- GitHub MCP: http://127.0.0.1:8080/health
- All sensitive settings are stored in
.env(not shared) - Use
example.envas a template for safe sharing - Docker Compose automatically loads
.envfor all services
- If a server is not healthy, check its logs in the
logs/folder or run:docker compose logs <service-name>
- For most issues, restarting with
docker compose downanddocker compose up -dresolves them.
# Generate PRP
python scripts/modules/cli/cli_setup.py prp --query "What are the requirements for the web UI module?"
# Check compliance
python scripts/modules/cli/cli_setup.py compliance- Open http://127.0.0.1:5300
- Enter your query in the text area
- Click "Generate PRP" to get results
# Generate PRP via API
curl -X POST http://127.0.0.1:5200/api/prp \
-H "Content-Type: application/json" \
-d '{"query": "What are the requirements?", "output_format": "json"}'
# Execute MCP tool
curl -X POST http://127.0.0.1:5200/api/execute-operation \
-H "Content-Type: application/json" \
-d '{"tool": "quick_prp", "params": {"query": "test query"}}'BibleProjectProduction/
├── .cursor/rules/ # Cursor rules for compliance
├── .cursor/commands/ # Command templates
├── config/ # Configuration files
├── context_portal/ # Database schema and context
├── docs/guides/ # User documentation
├── examples/ # Example implementations
├── logs/ # Application logs
├── scripts/ # Development and module scripts
│ ├── dev/ # Development tools
│ └── modules/ # Module-specific scripts
├── src/ # Source code
│ ├── api/ # API implementations
│ ├── mcp/ # MCP server code
│ ├── search/ # Vector search implementation
│ └── utils/ # Utility functions
├── tests/ # Test suites
├── setup.bat # Environment setup script
├── manage_servers.bat # Server management script
└── README.md # This file
- Database initialization and management
- Core functionality and utilities
- Hebrew term querying
- Strong's number lookups
- Biblical text analysis
- Vector search server
- Semantic search capabilities
- Web-based interface
- Dashboard for PRP generation
- MCP server implementation
- 7 core tools registration
- API endpoint management
- Command-line interface
- Script execution tools
The project follows strict compliance rules:
- Coding Standards: Ruff, MyPy, Black, Isort
- Modular System: Required file structure for all modules
- MCP Server: 7 core tools and required endpoints
- Logging: Structured logging with timestamps
- Non-Programmer Accessibility: Batch scripts and notebooks
Run compliance checks:
python scripts/cursor_rules_compliance_checker.pyRun comprehensive tests:
# All tests
python tests/test_comprehensive_system.py
# PRP system tests
python scripts/dev/tests/test_prp_system.py
# Pytest suite
pytest tests/ -vAll configuration is managed through config/config.json:
- Server settings (hosts, ports)
- Model configurations
- API endpoints
- Database connections
Environment variables are loaded from .env and merged with config.
All logs are written to logs/ directory:
- Application logs with timestamps
- Task synchronization logs
- Compliance check results
- Error tracking and debugging
-
Check server status:
manage_servers.bat status
-
Verify compliance:
python scripts/cursor_rules_compliance_checker.py
-
Check logs:
- Review
logs/directory for error messages - Check
logs/task_sync.jsonfor task status
- Review
-
Module-specific issues:
- Open
scripts/modules/[module]/setup.ipynbfor module setup - Follow non-programmer instructions in notebooks
- Open
- Follow all cursor rules in
.cursor/rules/ - Ensure compliance with
scripts/cursor_rules_compliance_checker.py - Use the modular system structure
- Maintain non-programmer accessibility
- Update documentation and changelog
This project is part of the BibleProjectProduction system.
For support and documentation:
- User Guide:
docs/guides/user_guide_2025-07-04.md - Changelog:
CHANGELOG.md - Compliance:
scripts/cursor_rules_compliance_checker.py
Last Updated: 2025-07-04 Version: 1.0.0 Compliance Status: COMPLIANT