Packages

This project is organized as a set of focused Julia packages. The table below summarizes responsibilities and typical usage.

PackagePurposeTypical Use
JCGECoreRunSpec, sections, sets/mappings, scenarios, validation, and closure-condition rolesDefine model structure and closure choices
JCGEBlocksReusable CGE blocks, auxiliary-quantity equations, and stable equation-condition keysAssemble production/household/market systems, make supplementary quantities endogenous, and declare accounting checks
JCGERuntimeRole-aware compilation, solver execution, residual diagnostics, and experiment workflowsSolve a RunSpec and run parameter/policy batches
JCGECalibrateSAM loading and calibrationDerive parameters and starting values
JCGEOutputEquation rendering, results containers, accounting-check reporting, and satellite quantitiesExport equations, tidy results, physical-flow projections, balance checks, and DualSignals
JCGEExamplesReference models and scenariosCanonical model ports, documented input contracts, and solver-backed scenario examples
JCGEImportDataSource adapters, IO/SUT transformations, balance diagnostics, and canonical-data writingPrepare declared source accounts for model-owned SAM construction
JCGEImportMPSGEMPSGE.jl importerTranslate MPSGE objects to RunSpecs
JCGEAgentInterfaceMCP-compatible framework interfaceAI-assisted catalogue discovery, source-data and modelling guidance, and controlled model workflows through a separate MCP host

Each package has its own documentation site and API reference. This repository keeps the ecosystem narrative consistent, but package-specific details belong in those package docs.

Reference-model coverage

JCGEExamples includes models ranging from small teaching examples to literature-based CGE formulations. Its GTAP7 example is an independent, data-driven implementation of the core GTAP Standard 7 multi-region structure. It demonstrates CDE private demand, bilateral Armington sourcing and CET sales allocation, regional external accounts, and global saving–investment closure using a small open synthetic fixture. It also provides declared shocks to factor endowments, productivity, taxes, demand preferences, private saving, and route delivery costs. The full model and its input contract are documented in JCGEExamples. GTAP7MCP is its PATH/MCP companion: it uses the same compact fixture and declared counterfactuals while pairing the equilibrium conditions explicitly with their model variables.

Resources

PackageSource CodeDocumentation
JCGECorehttps://github.com/equicirco/JCGECore.jlhttps://Core.JCGE.org
JCGEBlockshttps://github.com/equicirco/JCGEBlocks.jlhttps://Blocks.JCGE.org
JCGERuntimehttps://github.com/equicirco/JCGERuntime.jlhttps://Runtime.JCGE.org
JCGECalibratehttps://github.com/equicirco/JCGECalibrate.jlhttps://Calibrate.JCGE.org
JCGEOutputhttps://github.com/equicirco/JCGEOutput.jlhttps://Output.JCGE.org
JCGEExampleshttps://github.com/equicirco/JCGEExamples.jlhttps://Examples.JCGE.org
JCGEImportDatahttps://github.com/equicirco/JCGEImportData.jlhttps://ImportData.JCGE.org
JCGEImportMPSGEhttps://github.com/equicirco/JCGEImportMPSGE.jlhttps://ImportMPSGE.JCGE.org
JCGEAgentInterfacehttps://github.com/equicirco/JCGEAgentInterface.jlhttps://AgentInterface.JCGE.org

For agent-based use, see the AI Agent Interface guide. The released MCP server is registered as io.github.equicirco/JCGEAgentInterface.jl and the container image is published as ghcr.io/equicirco/jcge-agentinterface-mcp:<release-version>.

For solver conditions, retained accounting identities, and their reporting, see Closures & Checks.