ORCA Router Skill
SkillDev toolsRoutes ORCA calculation requests to opt, neb_ts, or freq sub-skills. Enforces ORCA-specific policies for method, basis set, charge, and multiplicity.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the ORCA Router Skill skill
What this skill tells your AI
The instructions your AI receives, as published by hello-qm/catgo-lrg in server/catgo/workflow/skills/orca/SKILL.md and read by ahel’s review.
When to Use
Use this skill when the user requests any ORCA-based calculation. Route to the appropriate sub-skill based on what the user needs:
| User intent | Route to |
|---|---|
| Geometry optimization, energy minimization | orca/opt |
| Transition state, NEB, reaction barrier | orca/neb_ts |
| Vibrational frequencies, IR spectrum, thermochemistry | orca/freq |
ORCA-Specific Policies
Method and Basis Set Defaults
Always set software: "orca" in workflow node params. Default method/basis
combinations by use case:
| Use case | Method | Basis | Notes |
|---|---|---|---|
| General organic | B3LYP | def2-SVP | Good balance of cost/accuracy |
| Production organic | B3LYP | def2-TZVP | Publication quality |
| Transition metals | PBE0 | def2-SVP | Better for d-electrons |
| Weak interactions | B3LYP-D3BJ | def2-TZVP | Dispersion-corrected |
| Quick screening | HF-3c | (built-in) | Composite, very fast |
| Accurate energies | DLPNO-CCSD(T) | cc-pVTZ | Gold standard, expensive |
Charge and Multiplicity
ORCA requires explicit charge and multiplicity for every calculation. Always ask the user or infer from the structure:
- Neutral closed-shell:
charge: 0, multiplicity: 1 - Radical (one unpaired e-):
charge: 0, multiplicity: 2 - Anion:
charge: -1, multiplicity: 1(or 2 if radical anion) - Cation:
charge: 1, multiplicity: 1(or 2 if radical cation) - Transition metal complexes: determine from d-electron count and ligand field
If unsure, ask the user. Never guess multiplicity for open-shell systems.
Solvent Models
ORCA supports implicit solvation via CPCM:
orca_extra_keywords: "CPCM(Water)"
Common solvents: Water, Acetonitrile, DMSO, THF, Toluene, DCM.
MCP Tool Examples
Check what the user has loaded
catgo_view(action: "get_state")
Always check the viewer state first to confirm a molecular structure is loaded (not a periodic crystal -- ORCA is for molecular calculations).
Create an ORCA optimization workflow
catgo_workflow_engine(action: "create", params: {
name: "Ethanol B3LYP optimization"
})
Then add an ORCA geo_opt task (see orca/opt skill for full details):
catgo_workflow_engine(action: "add_task", params: {
workflow_id: "<wf_id>",
task_type: "geo_opt",
params: {
software: "orca",
orca_method: "B3LYP",
orca_basis: "def2-SVP",
charge: 0,
multiplicity: 1
}
})
Create an ORCA frequency workflow
catgo_workflow_engine(action: "add_task", params: {
workflow_id: "<wf_id>",
task_type: "freq",
params: {
software: "orca",
orca_method: "B3LYP",
orca_basis: "def2-SVP",
charge: 0,
multiplicity: 1
}
})
Opt + Freq chain (common pattern)
After creating the workflow, add both tasks and connect them:
catgo_workflow_engine(action: "add_task", params: {
workflow_id: "<wf_id>",
task_type: "geo_opt",
task_id: "opt1",
params: { software: "orca", orca_method: "B3LYP", orca_basis: "def2-SVP",
charge: 0, multiplicity: 1 }
})
catgo_workflow_engine(action: "add_task", params: {
workflow_id: "<wf_id>",
task_type: "freq",
depends_on: ["opt1"],
params: { software: "orca", orca_method: "B3LYP", orca_basis: "def2-SVP",
charge: 0, multiplicity: 1 }
})
Routing Decision Tree
- Does the user want to find a transition state or reaction barrier?
- YES -> route to
orca/neb_ts
- YES -> route to
- Does the user want vibrational frequencies, IR spectrum, or thermochemistry?
- YES -> route to
orca/freq
- YES -> route to
- Does the user want to optimize a geometry or get an energy?
- YES -> route to
orca/opt
- YES -> route to
- Unsure? Ask the user what property they need.
Common Mistakes
- Using ORCA for periodic systems (ORCA is molecular only -- use VASP or CP2K)
- Forgetting charge/multiplicity (ORCA will fail or give wrong results)
- Using too large a basis for initial screening (start with def2-SVP)
- Not including dispersion for systems with non-covalent interactions
Signals
- GitHub stars
- 196
- Forks
- 23
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
orca-router- Source
- github.com/hello-qm/catgo-lrg