fluxforge
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@fluxforge predict essential genes for lung cancer"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
FluxForge_MCP
The installable MCP server for FluxForge — a fail-closed Model Context Protocol server that fuses literature, regulatory/PPI networks, and genome-scale metabolic models to predict CRISPR gene dependencies and drug targets. 18 typed tools.
This is a lightweight distribution repo (server + ~1.5 MB runtime data only) so it clones and installs fast. The full research code — the benchmark engine, datasets, figures, and paper materials — lives in the main repo: https://github.com/ali-kishk/FluxForge.
Install
1. Install the package (pulls all Python dependencies — cobra, pandas, networkx, httpx, pydantic, mcp — and ships the ~1.5 MB runtime data bundled inside the wheel):
pip install fluxforge-mcpSolver is GLPK (bundled with cobra; no CPLEX/MATLAB needed).
2a. Claude Code — plugin marketplace (simplest; runs python -m mcp_server.server, no PYTHONPATH
or data-dir env vars needed once the package is installed):
/plugin marketplace add ali-kishk/FluxForge_MCP
/plugin install fluxforge@fluxforge2b. Claude Code — direct:
claude mcp add fluxforge -- python -m mcp_server.server2c. Claude Desktop — config (claude_desktop_config.json → mcpServers):
{
"mcpServers": {
"fluxforge": {
"command": "python",
"args": ["-m", "mcp_server.server"]
}
}
}Use the full path to your interpreter (e.g. .../python.exe) if python isn't on the client's PATH,
or if you installed fluxforge-mcp into a specific virtualenv.
Only literature.extract_claim needs an LLM backend (configure MCP_LLM_*); the other 17 tools run
with no LLM.
Related MCP server: GenomeMCP
Verify
Ask the client to "list your fluxforge tools" → you should get 18, starting with
session.init_artifacts. Or offline:
python -m mcp_server.server --selftest # -> registered tools: 18Data & output locations
The runtime data (Recon3D model, PPI table, regulatory map, CRISPR benchmark, comparators) ships
inside the installed package and is found automatically — no configuration needed. Outputs (session
dumps, viewers, negative-result reports) are written to ~/.fluxforge/outputs by default. Override
either with MCP_INPUT_DIR / MCP_OUTPUT_DIR if you need a different location.
License & citation
Apache-2.0 (see LICENSE / NOTICE) — © 2026 Ali Kishk. Cite via CITATION.cff. For the benchmark
methodology and results, cite the main FluxForge repo / preprint.
Available Tools
18 toolsboolean.augment_compareC
Add LLM edges, re-simulate, and gate llm_adds_value vs no_added_value; also returns a continuous attractor_distance + permuted_edge_null_fraction.
Inputs: llm_edges (required), session_id (required), baseline_signature (required), permuted_null.
boolean.build_and_testC
Compile the subgraph to Boolean rules and find baseline attractors.
Inputs: session_id (required), subgraph_edges (required), subgraph_nodes (required).
integration.convergence_checkB
Deterministic stopping rule for iterative edge integration: given the per-round augment_compare scores, decide continue | converged | noise_indistinguishable | budget_exhausted (a fail-closed hard stop).
Inputs: rounds (required), session_id (required), min_gain, patience, +2 more.
literature.compile_constraintsA
Compile literature.extract_claim's (source,target,sign) triples into the InteractionConstraint list metabolic.simulate/couple_and_test consume. Deterministic server-side policy (not agent judgement): prefer the literal target when it resolves into the model gene universe (role_used=target); else fall back to the source as a confidence-penalized proxy (role_used=source_proxy); else drop the claim (role_used counts + drop reasons returned). Each compiled constraint carries resolution_confidence so a fuzzy alias-tier resolution is visibly weaker evidence than an exact model-id hit.
Inputs: claims (required), session_id (required), min_confidence, default_scale_activating, +2 more.
literature.extract_claimA
High-throughput LLM extraction of span-grounded {source,target,sign,tier,section,disease_specificity,phenotype_relevance} claims with provenance+confidence. Optional disease_context + phenotype_keywords (both fall back to the session) disambiguate references and rank on-phenotype claims — soft signals, never filters.
Inputs: documents (required), session_id (required), disease_context, target_entities, +1 more.
metabolic.couple_and_testD
Couple validated nodes as soft flux constraints; gate on provenance-independent comparator agreement.
Inputs: session_id (required), compilation_rules (required), external_comparators (required), validated_output_nodes (required), +1 more.
metabolic.id_mapA
Reconcile identifiers to canonical ids so the pipeline never relies on the LLM guessing an accession. Metabolites/reactions -> MetaNetX MNXref (BiGG/KEGG/ChEBI/HMDB/... -> MNXM*/MNXR* + xrefs); genes -> the model's Entrez id space via the gene table + symbol map + MyGene (MNXref does NOT map genes). Every mapping carries {authority, confidence, matched_by}: exact id matches are high-confidence, fuzzy name hits low.
Inputs: session_id (required), genes, reactions, use_mygene, +1 more.
metabolic.neighbourhood_extractC
Extract a localized metabolic subnetwork, never routing through currency metabolites.
Inputs: session_id (required), anchor_reactions (required), currency_exclusion_list (required), max_hops.
metabolic.salvage_redundancy_checkC
Fail-closed positive-control gate: is the GEM structurally capable of detecting a known dependency?
Inputs: session_id (required), target_objective (required), positive_control_genes (required).
metabolic.simulateA
Run FBA/pFBA/FVA/MOMA on the (optionally PPI-integrated) model. interaction_constraints=[{reaction_or_gene,effect,scale}] apply soft signed capacity constraints (reversible viral-sequestration encoding, no gene deletion). Returns objective value + top fluxes (FBA/pFBA/MOMA) or per-reaction ranges (FVA).
Inputs: session_id (required), method, objective, top_n_fluxes, +3 more.
namespace.reconcileA
Build a symbol<->entrez crosswalk between PPI hits and model genes. Symbols without a table entrez (or absent from the model) are resolved via the id-map resolver (model gene table + symbol map + MyGene); each entry carries authority/confidence/matched_by provenance.
Inputs: session_id (required), resolve_unmapped.
pipeline.run_dagA
Run the full fail-closed DAG for a session; returns negative_result_report or target_handoff. Set iterative_integration=True to have the SERVER run the edge-integration loop (batched admission, self-stopping via integration.convergence_check) instead of a single-shot augment; integration_params={edge_batch_size,min_gain,null_alpha,patience,max_rounds}. default_visualization=True (default) renders the extracted regulatory subnetwork to OUTPUT_DIR as a standard output of every run.
Inputs: documents (required), ppi_edges (required), seed_nodes (required), session_id (required), +10 more.
ppi.classify_interactorB
Boltz-2 structural gate: classify a bait/prey pair physical/regulatory/context_only from ipTM + flux relevance.
Inputs: bait (required), prey (required), session_id (required), iptm, +2 more.
regmap.subgraph_extractC
Extract the signed regulatory subgraph around seed nodes (representative disease-map module).
Inputs: seed_nodes (required), session_id (required), max_hops, resolved_edges.
session.init_artifactsA
Load canonical inputs (GEM, PPI, regmap, CRISPR, comparators) with provenance tags into a new session. Optional disease_context and phenotype_keywords set the session's disease + phenotype-of-interest for downstream tools.
Inputs: data_dir, session_id, disease_context, phenotype_keywords.
viz.render_metabolic_mapA
DEFAULT metabolic visualizer: overlay compiled constraints on an Escher curated pathway map (biochemically-correct layout); automatically falls back to the cytoscape subnetwork renderer when no curated map covers the model. Returns {backend, out_path, n_reactions_on_map, map_used, fallback_reason}.
Inputs: model (required), constraints (required), title, prefer, +2 more.
viz.render_ppi_metabolicC
Render the 3-layer viral->enzyme->reaction interactive HTML with ipTM tiers and flux overlay.
Inputs: ppi_edges (required), out_path, gpr_edges, session_id.
viz.render_subnetworkC
Render an interactive HTML of the regulatory subnetwork with LLM-added edges highlighted.
Inputs: llm_edges (required), subgraph_edges (required), subgraph_nodes (required), out_path, +2 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 18 tools
Tools are clearly grouped by domain (boolean, literature, metabolic, etc.) with distinct purposes. Each tool has a unique role and no overlapping functionality is evident.
All tools follow a consistent domain.tool_name snake_case naming convention, with verb_noun or verb_verb patterns that are predictable and readable.
18 tools is appropriate for the complex multi-domain pipeline covering Boolean networks, literature, metabolic modeling, PPI, and visualization. Each tool earns its place.
The tool set covers the full pipeline from session initialization through literature extraction, constraint compilation, modeling, integration, and visualization, with crucial operations like identifier mapping and convergence checks.
Related MCP Connectors
Knowledge graph ingestion, entity search, ontology analysis, and CoPass scoring.
Link compounds to protein targets, rank bioactivity, and look up drug mechanisms and indications.
Pharmacogenomics for AI agents: cited drug–gene, gene and rsID lookups plus a medication screen.
Cancer gene co-occurrence and exclusivity in tumour cohorts, with confound controls and exact tests.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceA unified biomedical graph database that integrates 50+ primary data sources — genes, proteins, compounds, diseases, pathways, and clinical data — into a single queryable graph with billions of cross-reference edges. Its native MCP server gives LLMs direct access to structured, authoritative biomedical data, complementing their reasoning with reliable identifiers and up-to-date database content.20AGPL 3.0
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to query clinical genomics databases, retrieve supporting literature, analyze population genetics, and visualize biological pathways.18MIT
- AlicenseAqualityBmaintenanceIntegrates AlphaFold DB and eight other biomedical data sources into MCP tools for variant clinical reporting, disease-target analysis, structural intelligence, and drug repurposing, with results persisted to a local SQLite knowledge graph.29413 PyPI5Apache 2.0
- AlicenseNot gradedqualityDmaintenanceEnables LLMs to directly access and analyze cancer dependency data from the DepMap, including gene search, dependency summaries, and top cell line dependencies, for therapeutic target evidence collection.1MIT