Docs Current For: AGOUTIC 3.6.6
Service Version: 0.3.0
Status: Active Development
Launchpad is the execution engine for the AGOUTIC bioinformatics platform. It receives job requests from Cortex (the Agent Engine) and manages the execution of Dogme/Nextflow pipelines for genomic analysis.
- 🚀 Job Submission: Receive and queue Dogme pipeline jobs (DNA/RNA/cDNA)
- 📊 Job Monitoring: Track job progress in real-time
- 📝 Logging: Capture detailed execution logs
- 🔍 Status Tracking: Maintain persistent job state in database
- 📤 Result Retrieval: Return analysis outputs and reports
- 🤝 Dual Interface: REST API + MCP Protocol for LLM agents
Launchpad provides both interfaces, allowing flexible integration patterns:
- Port: 8003 (default)
- Location:
launchpad/app.py - Use Case: Web dashboards, external scripts, periodic polling.
- Endpoints:
POST /jobs/submit- Submit jobGET /jobs- List jobsGET /jobs/{uuid}- Get detailsGET /jobs/{uuid}/logs- Stream logs
- Port: 8002 (MCP-over-HTTP)
- Location:
launchpad/mcp_server.py - Use Case: LLM Agents (Cortex) directly controlling tools.
- Tools:
submit_dogme_job: Generic submission wrappersubmit_dogme_nextflow: Low-level submission with config generationcheck_nextflow_status: Query database for statusfind_pod5_directory: Locate data files
- Python 3.10+
- Nextflow (installed and in PATH)
- Java 11+ (for Nextflow)
-
Environment Setup:
cd /path/to/agoutic source load_env.sh
-
Start the Server:
# Starts both REST (8003) and MCP (8002) interfaces ./agoutic_servers.sh start launchpad -
Verify Status:
curl http://localhost:8003/health # Expected: {"status":"ok","version":"0.3.0",...}
app.py: FastAPI application entry point (REST).mcp_server.py: FastMCP application (MCP-over-HTTP). Exposes/tools/schemaendpoint for Cortex to fetch tool contracts.mcp_tools.py: Logic for MCP tools integration.nextflow_executor.py: Core logic for spawning and monitoring Nextflow processes.models.py: SQLAlchemy models forDogmeJobandJobLog.db.py: Database connection and CRUD operations.config.py: Configuration for paths, reference genomes, and pipelines.
pytest tests/launchpad -qManual Launchpad helpers now live under scripts/launchpad/:
python scripts/launchpad/submit_real_job.py --url http://localhost:8001 --input /path/to/data --mode DNA
python scripts/launchpad/debug_job.py <run_uuid>