Standardizes and automates developer-AI interaction through the Model Context Protocol (MCP).
Ctxfy standardizes and automates interaction between developers and AI agents. It generates technical specifications from business requirements using the Model Context Protocol (MCP) with STDIO transport, transforming ad-hoc prompts into repeatable, auditable, and scalable processes.
- Technical Specification Generation: AI-powered generation from business requirements
- YAML-based Prompt Configuration: Flexible templates in YAML files
- MCP Protocol Compliance: Native integration with LLMs via STDIO transport
- Dynamic Prompt Registration: Automatic registration from YAML configuration
- Functional Architecture: Clean separation of business logic and side effects
Functional Core, Imperative Shell architecture with MCP Protocol compliance:
- Functional Core: Pure specification generation logic (no side effects)
- Imperative Shell: Handles MCP communication, YAML loading, and I/O operations
- Ports and Adapters: Protocol-based interfaces for clean separation of concerns
- Language: Python 3.13+
- Framework: FastMCP for Model Context Protocol
- Tools: Poetry, Ruff, MyPy, Tox
- Protocol: MCP with STDIO transport
- Python 3.13+, Docker, Poetry, Git
-
Clone and install:
git clone https://github.com/your-username/ctxfy.git cd ctxfy poetry install poetry shell -
Configure environment variables:
cp example.env .env # Edit .env with your configurationAvailable variables:
PROMPTS_FILE_PATH: Path to prompts config (default:resources/prompts.yaml)DEBUG: Enable debug mode (default: 0)
Start the MCP server:
# Using Tox (recommended)
tox -e start
# Direct execution
python src/app.pyServer uses STDIO transport for MCP communication.
Deploy as a container:
-
Build the image:
docker build -t ctxfy-mcp:latest . -
Run with STDIO transport:
docker run -i --rm -v "$PWD:/workspace:rw" ctxfy-mcp:latest -
Using Docker Compose:
docker-compose up ctxfy-mcp
Project uses Tox for workflows:
- Linting:
tox -e lint - Formatting:
tox -e format - Type checking:
tox -e type - Unit tests:
tox -e unit - Integration tests:
tox -e integration - Security checks:
tox -e security - Compliance validation:
tox -e compliance - Start server:
tox -e start - All checks:
tox
Server communicates via STDIO transport (standard for MCP clients like Claude Code, Cursor). Configure your MCP client to use STDIO transport with Ctxfy server.
- Fork repository
- Create feature branch
- Follow FCIS principles
- Write tests with TDD
- Run quality checks:
tox - Open Pull Request
MIT License - see LICENSE file.
Report issues on GitHub Issues. Include Python version, OS, MCP client version, and reproduction steps.