# Chemistry Studio

## Links

- Product page URL: https://www.agentpmt.com/marketplace/chemistry-studio
- Product markdown URL: https://www.agentpmt.com/marketplace/chemistry-studio?format=agent-md
- Product JSON URL: https://www.agentpmt.com/marketplace/chemistry-studio?format=agent-json

## Overview

- Product ID: 6ada6971e001971070f32f9a
- Type: function
- Unit type: request
- Price: 500 credits
- Categories: Scientific Computing, Data Science, Quantum Simulation & Analysis, Mathematical Computing, Academic & Scientific Research
- Generated at: 2026-10-23T15:55:24.392Z

### Page Description

Run real quantum chemistry on molecules without installing anything. Calculate energies, dipole moments, and atomic charges with methods from Hartree-Fock and DFT up to coupled cluster and exact diagonalization. Turn any small molecule into a qubit Hamiltonian ready for VQE and other quantum algorithms, export integrals for other chemistry software, map out bond-breaking curves, relax structures to their lowest-energy shape, and predict UV-Vis absorption. Look molecules up by name or paste in coordinates.

### Agent Description

Ab initio quantum chemistry for molecules up to 60 atoms: HF, DFT, MP2, CCSD, CCSD(T), CASCI, CASSCF, and FCI energies with dipole moments, Mulliken charges, and HOMO-LUMO gaps; molecular qubit Hamiltonians (Jordan-Wigner, Bravyi-Kitaev, parity, or tapered parity, any active space) with the Hartree-Fock reference bitstring and exact ground-state energy for VQE and QPE; FCIDUMP integral export; bond dissociation scans; geometry optimization; TDDFT/TDA/CIS excited states with oscillator strengths for UV-Vis spectra; and molecule lookup by name, SMILES, or PubChem CID.

## Details

### Details

Run real quantum chemistry on molecules without installing anything. Calculate energies, dipole moments, and atomic charges with methods from Hartree-Fock and DFT up to coupled cluster and exact diagonalization. Turn any small molecule into a qubit Hamiltonian ready for VQE and other quantum algorithms, export integrals for other chemistry software, map out bond-breaking curves, relax structures to their lowest-energy shape, and predict UV-Vis absorption. Look molecules up by name or paste in coordinates.

### Actions

- `lookup_molecule` (1 credits): Find a compound on PubChem by name, SMILES, or CID and return its 3D geometry (Angstrom), formula, molecular weight, formal charge, and electron count, ready to pass to the other actions.
- `calculate_energy` (5 credits): Compute the total electronic energy with HF, DFT, MP2, CCSD, CCSD(T), CASCI, CASSCF, or FCI, plus dipole moment, Mulliken charges, orbital energies, and HOMO-LUMO gap. Use it for reference energies, reaction energies, and checking VQE results.
- `build_hamiltonian` (5 credits): Build the molecular electronic Hamiltonian as a qubit operator (weighted Pauli strings) for VQE, QPE, and other quantum algorithms. Supports active spaces, Jordan-Wigner, Bravyi-Kitaev, parity, and parity with two-qubit tapering. Returns the Hartree-Fock state bitstring and exact reference energy.
- `export_integrals` (5 credits): Export the one- and two-electron integrals of the molecule or an active space as an FCIDUMP file in File Manager, for DMRG, selected-CI, quantum-chemistry, and quantum-computing packages.
- `scan_bond` (15 credits): Compute a potential energy curve by stretching the distance between two atoms over a range, e.g. a bond dissociation curve. Returns the energy at each distance and the lowest-energy point.
- `optimize_geometry` (10 credits): Relax a molecular structure to its minimum-energy geometry with HF, DFT, or MP2 and return the optimized coordinates and energy.
- `calculate_excited_states` (10 credits): Compute electronic excitation energies, absorption wavelengths, oscillator strengths, and the main orbital transitions (TDDFT, TDA, or CIS) to predict UV-Vis absorption.
- `get_task`: Check a calculation that returned status processing. Free. Completed tasks return the original action result in outputs[0].

### Use Cases

Molecular qubit Hamiltonians for VQE and quantum algorithms, Exact reference energies to validate quantum simulations, Bond dissociation and potential energy curves, Reaction and conformer energy comparisons, Geometry optimization of small molecules, UV-Vis absorption and excited-state prediction, Dipole moments and partial charges, Active-space integrals for DMRG and selected CI, Chemistry teaching and homework examples, Quantum chemistry method benchmarking

### Workflows Using This Tool

#### Replicate and Certify a Quantum Chemistry Result: Exact-Gate Bond Curves with Lean Proofs

Finds recent quantum-chemistry papers with Valency, rebuilds the reported molecule in Chemistry Studio and checks the paper's numbers (geometry, reference state, energies) against exact calculations. It then models the chemical bond as a potential energy curve with exact-gate quantum circuits. For each bond length it runs a classical precision budget (how finely rotation angles must be set to reach chemical accuracy), synthesizes an exact Clifford+T circuit in the Math Engine wherever the angles need finer phases, runs a Qiskit Aer simulation with energies from measurement counts, exports OpenQASM 3 and Qiskit programs, and issues Lean-kernel certificates (qpcert) for every circuit on the curve. The report states exactly what is proven (circuit properties) and what is not (the chemistry). Built for replication studies, method papers and teaching, using molecules such as LiH.

- Page URL: https://www.agentpmt.com/agent-workflow-skills/replicate-and-certify-a-quantum-chemistry-result-exact-gate-bond-curves-with-lean-proofs
- Markdown URL: https://www.agentpmt.com/agent-workflow-skills/replicate-and-certify-a-quantum-chemistry-result-exact-gate-bond-curves-with-lean-proofs?format=agent-md
- Published: 2026-10-22T23:41:27.958Z

### Related Content

No related content is currently linked to this product.

## Documentation

No platform documentation is currently linked to this product.

## Integration Details

### DynamicMCP

- Setup page URL: https://www.agentpmt.com/dynamic-mcp
- Claude setup guide: https://www.agentpmt.com/dynamic-mcp#platform=claude
- ChatGPT setup guide: https://www.agentpmt.com/dynamic-mcp#platform=chatgpt
- Cursor setup guide: https://www.agentpmt.com/dynamic-mcp#platform=cursor
- Windsurf setup guide: https://www.agentpmt.com/dynamic-mcp#platform=windsurf

Use the local router for command-based MCP clients. It forwards requests to `https://api.agentpmt.com/mcp` and does not execute tools locally.

```bash
npm install -g @agentpmt/mcp-router
agentpmt-setup
```

### REST API

The live page renders cURL, Python, JavaScript, and Node.js examples. Logged-in users see those examples prefilled with their own API and budget credentials.

- Purchase endpoint: https://api.agentpmt.com/products/purchase
- Authorization format: `Bearer <base64(apiKey:budgetKey)>`

```bash
curl -X POST "https://api.agentpmt.com/products/purchase" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer eW91ci1hcGkta2V5LWhlcmU6eW91ci1idWRnZXQta2V5LWhlcmU=" \
  -d '{
    "product_id": "6ada6971e001971070f32f9a",
    "parameters": {
      "action": "lookup_molecule"
    }
  }'
```

### Autonomous Agents

Autonomous agents can access this tool through AgentAddress credit balances or direct x402 payments. Use the Autonomous Agent API reference for endpoint shapes after choosing the access pattern below.

- Autonomous Agent API reference URL: https://www.agentpmt.com/docs/api-reference/autonomous-agents
- Autonomous Agent API reference markdown URL: https://www.agentpmt.com/docs/api-reference/autonomous-agents?format=agent-md
- Credit-Based Access Using AgentAddress: https://www.agentpmt.com/docs/autonomous-agents/credit-based-tool-usage-with-agentaddress
- AgentAddress is preferred for persistent file access, stored platform state, and maximum tool use ability across repeated calls.
- Direct x402 is for independent one-off tool calls that do not require shared files or stored platform state.
- Direct x402 public payments: USDC on Base, Arbitrum, Optimism, Polygon, and Avalanche.

### Schema

#### Parameters

- Schema type: actions

```json
{
  "actions": {
    "lookup_molecule": {
      "description": "Find a compound on PubChem by name, SMILES, or CID and return its 3D geometry (Angstrom), formula, molecular weight, formal charge, and electron count, ready to pass to the other actions.",
      "properties": {
        "molecule_name": {
          "type": "string",
          "description": "Compound name, e.g. 'water', 'benzene', 'caffeine'. Give exactly one of molecule_name, smiles, or pubchem_cid.",
          "required": false
        },
        "smiles": {
          "type": "string",
          "description": "SMILES string, e.g. 'CC(=O)O'.",
          "required": false
        },
        "pubchem_cid": {
          "type": "integer",
          "description": "PubChem compound ID.",
          "required": false,
          "minimum": 1
        }
      },
      "price_per_unit": 1
    },
    "calculate_energy": {
      "description": "Compute the total electronic energy with HF, DFT, MP2, CCSD, CCSD(T), CASCI, CASSCF, or FCI, plus dipole moment, Mulliken charges, orbital energies, and HOMO-LUMO gap. Use it for reference energies, reaction energies, and checking VQE results.",
      "properties": {
        "geometry": {
          "type": "string",
          "description": "'symbol x y z' per atom, newline- or ';'-separated, or XYZ file text. Give geometry or molecule_name.",
          "required": false
        },
        "molecule_name": {
          "type": "string",
          "description": "Compound name; fetches a 3D structure from PubChem.",
          "required": false
        },
        "units": {
          "type": "string",
          "description": "Units of geometry and distances. Default angstrom.",
          "required": false,
          "enum": [
            "angstrom",
            "bohr"
          ]
        },
        "charge": {
          "type": "integer",
          "description": "Net charge. Default 0 (PubChem's formal charge for molecule_name).",
          "required": false
        },
        "multiplicity": {
          "type": "integer",
          "description": "2S+1. Default 1 for even electron counts, 2 for odd.",
          "required": false,
          "minimum": 1,
          "maximum": 13
        },
        "basis": {
          "type": "string",
          "description": "Basis set, e.g. sto-3g, 6-31g*, cc-pvdz, def2-svp. Default 6-31g*.",
          "required": false
        },
        "method": {
          "type": "string",
          "description": "ccsd_t is CCSD(T); fci is exact in the basis; casci/casscf need an active space. Default hf.",
          "required": false,
          "enum": [
            "hf",
            "dft",
            "mp2",
            "ccsd",
            "ccsd_t",
            "casci",
            "casscf",
            "fci"
          ]
        },
        "functional": {
          "type": "string",
          "description": "Functional for dft, tddft, tda, e.g. b3lyp, pbe0, wb97x. Default b3lyp.",
          "required": false
        },
        "active_electrons": {
          "type": "integer",
          "description": "Active-space electrons; the rest are frozen core. casci/casscf only.",
          "required": false,
          "minimum": 1
        },
        "active_orbitals": {
          "type": "integer",
          "description": "Active-space spatial orbitals above the core. casci/casscf only.",
          "required": false,
          "minimum": 1
        },
        "frozen_core": {
          "type": "boolean",
          "description": "Freeze core orbitals (mp2, ccsd, ccsd_t). Default false.",
          "required": false
        }
      },
      "price_per_unit": 5
    },
    "build_hamiltonian": {
      "description": "Build the molecular electronic Hamiltonian as a qubit operator (weighted Pauli strings) for VQE, QPE, and other quantum algorithms. Supports active spaces, Jordan-Wigner, Bravyi-Kitaev, parity, and parity with two-qubit tapering. Returns the Hartree-Fock state bitstring and exact reference energy.",
      "properties": {
        "geometry": {
          "type": "string",
          "description": "'symbol x y z' per atom, newline- or ';'-separated, or XYZ file text. Give geometry or molecule_name.",
          "required": false
        },
        "molecule_name": {
          "type": "string",
          "description": "Compound name; fetches a 3D structure from PubChem.",
          "required": false
        },
        "units": {
          "type": "string",
          "description": "Units of geometry and distances. Default angstrom.",
          "required": false,
          "enum": [
            "angstrom",
            "bohr"
          ]
        },
        "charge": {
          "type": "integer",
          "description": "Net charge. Default 0 (PubChem's formal charge for molecule_name).",
          "required": false
        },
        "multiplicity": {
          "type": "integer",
          "description": "2S+1. Default 1 for even electron counts, 2 for odd.",
          "required": false,
          "minimum": 1,
          "maximum": 13
        },
        "basis": {
          "type": "string",
          "description": "Basis set, e.g. sto-3g, 6-31g*, cc-pvdz, def2-svp. Default sto-3g.",
          "required": false
        },
        "active_electrons": {
          "type": "integer",
          "description": "Active-space electrons; the rest are frozen core. Default: all electrons and orbitals.",
          "required": false,
          "minimum": 1
        },
        "active_orbitals": {
          "type": "integer",
          "description": "Active-space spatial orbitals above the core. Default: all electrons and orbitals.",
          "required": false,
          "minimum": 1
        },
        "mapping": {
          "type": "string",
          "description": "Fermion-to-qubit mapping; parity_tapered removes 2 symmetry qubits. Default jordan_wigner.",
          "required": false,
          "enum": [
            "jordan_wigner",
            "bravyi_kitaev",
            "parity",
            "parity_tapered"
          ]
        },
        "spin_order": {
          "type": "string",
          "description": "interleaved (OpenFermion/PennyLane) or block (Qiskit Nature: all spin-up then spin-down). Default interleaved.",
          "required": false,
          "enum": [
            "interleaved",
            "block"
          ]
        },
        "pauli_format": {
          "type": "string",
          "description": "sparse ('X0 Y1 Z3') or qiskit (dense label, qubit 0 rightmost). Default sparse.",
          "required": false,
          "enum": [
            "sparse",
            "qiskit"
          ]
        },
        "coefficient_threshold": {
          "type": "number",
          "description": "Drop terms with smaller |coefficient| (Hartree). Default 1e-10.",
          "required": false,
          "minimum": 0,
          "maximum": 0.01
        },
        "include_exact_energy": {
          "type": "boolean",
          "description": "Also compute the exact active-space ground-state energy when feasible. Default true.",
          "required": false
        },
        "save_to_file": {
          "type": "boolean",
          "description": "Store the full Hamiltonian in File Manager even if small (over 600 terms always are). Default false.",
          "required": false
        }
      },
      "price_per_unit": 5
    },
    "export_integrals": {
      "description": "Export the one- and two-electron integrals of the molecule or an active space as an FCIDUMP file in File Manager, for DMRG, selected-CI, quantum-chemistry, and quantum-computing packages.",
      "properties": {
        "geometry": {
          "type": "string",
          "description": "'symbol x y z' per atom, newline- or ';'-separated, or XYZ file text. Give geometry or molecule_name.",
          "required": false
        },
        "molecule_name": {
          "type": "string",
          "description": "Compound name; fetches a 3D structure from PubChem.",
          "required": false
        },
        "units": {
          "type": "string",
          "description": "Units of geometry and distances. Default angstrom.",
          "required": false,
          "enum": [
            "angstrom",
            "bohr"
          ]
        },
        "charge": {
          "type": "integer",
          "description": "Net charge. Default 0 (PubChem's formal charge for molecule_name).",
          "required": false
        },
        "multiplicity": {
          "type": "integer",
          "description": "2S+1. Default 1 for even electron counts, 2 for odd.",
          "required": false,
          "minimum": 1,
          "maximum": 13
        },
        "basis": {
          "type": "string",
          "description": "Basis set, e.g. sto-3g, 6-31g*, cc-pvdz, def2-svp. Default sto-3g.",
          "required": false
        },
        "active_electrons": {
          "type": "integer",
          "description": "Active-space electrons; the rest are frozen core. Default: all (max 50 orbitals).",
          "required": false,
          "minimum": 1
        },
        "active_orbitals": {
          "type": "integer",
          "description": "Active-space spatial orbitals above the core. Default: all (max 50 orbitals).",
          "required": false,
          "minimum": 1
        }
      },
      "price_per_unit": 5
    },
    "scan_bond": {
      "description": "Compute a potential energy curve by stretching the distance between two atoms over a range, e.g. a bond dissociation curve. Returns the energy at each distance and the lowest-energy point.",
      "properties": {
        "geometry": {
          "type": "string",
          "description": "'symbol x y z' per atom, newline- or ';'-separated, or XYZ file text. Give geometry or molecule_name.",
          "required": false
        },
        "molecule_name": {
          "type": "string",
          "description": "Compound name; fetches a 3D structure from PubChem.",
          "required": false
        },
        "units": {
          "type": "string",
          "description": "Units of geometry and distances. Default angstrom.",
          "required": false,
          "enum": [
            "angstrom",
            "bohr"
          ]
        },
        "charge": {
          "type": "integer",
          "description": "Net charge. Default 0 (PubChem's formal charge for molecule_name).",
          "required": false
        },
        "multiplicity": {
          "type": "integer",
          "description": "2S+1. Default 1 for even electron counts, 2 for odd.",
          "required": false,
          "minimum": 1,
          "maximum": 13
        },
        "basis": {
          "type": "string",
          "description": "Basis set, e.g. sto-3g, 6-31g*, cc-pvdz, def2-svp. Default 6-31g*.",
          "required": false
        },
        "atom_indices": {
          "type": "array",
          "description": "[anchor, moving] 0-based atom positions; only the moving atom is displaced.",
          "required": true,
          "items": {
            "type": "integer",
            "minimum": 0
          },
          "minItems": 2,
          "maxItems": 2
        },
        "start_distance": {
          "type": "number",
          "description": "First distance (in units).",
          "required": true,
          "maximum": 20,
          "exclusiveMinimum": 0
        },
        "end_distance": {
          "type": "number",
          "description": "Last distance (in units).",
          "required": true,
          "maximum": 20,
          "exclusiveMinimum": 0
        },
        "points": {
          "type": "integer",
          "description": "Evenly spaced points (2-40). Default 10.",
          "required": false,
          "minimum": 2,
          "maximum": 40
        },
        "method": {
          "type": "string",
          "description": "ccsd_t is CCSD(T); fci is exact in the basis; casci/casscf need an active space. Default hf.",
          "required": false,
          "enum": [
            "hf",
            "dft",
            "mp2",
            "ccsd",
            "ccsd_t",
            "casci",
            "casscf",
            "fci"
          ]
        },
        "functional": {
          "type": "string",
          "description": "Functional for dft, tddft, tda, e.g. b3lyp, pbe0, wb97x. Default b3lyp.",
          "required": false
        },
        "active_electrons": {
          "type": "integer",
          "description": "Active-space electrons; the rest are frozen core. casci/casscf only.",
          "required": false,
          "minimum": 1
        },
        "active_orbitals": {
          "type": "integer",
          "description": "Active-space spatial orbitals above the core. casci/casscf only.",
          "required": false,
          "minimum": 1
        },
        "frozen_core": {
          "type": "boolean",
          "description": "Freeze core orbitals (mp2, ccsd, ccsd_t). Default false.",
          "required": false
        }
      },
      "price_per_unit": 15
    },
    "optimize_geometry": {
      "description": "Relax a molecular structure to its minimum-energy geometry with HF, DFT, or MP2 and return the optimized coordinates and energy.",
      "properties": {
        "geometry": {
          "type": "string",
          "description": "'symbol x y z' per atom, newline- or ';'-separated, or XYZ file text. Give geometry or molecule_name.",
          "required": false
        },
        "molecule_name": {
          "type": "string",
          "description": "Compound name; fetches a 3D structure from PubChem.",
          "required": false
        },
        "units": {
          "type": "string",
          "description": "Units of geometry and distances. Default angstrom.",
          "required": false,
          "enum": [
            "angstrom",
            "bohr"
          ]
        },
        "charge": {
          "type": "integer",
          "description": "Net charge. Default 0 (PubChem's formal charge for molecule_name).",
          "required": false
        },
        "multiplicity": {
          "type": "integer",
          "description": "2S+1. Default 1 for even electron counts, 2 for odd.",
          "required": false,
          "minimum": 1,
          "maximum": 13
        },
        "basis": {
          "type": "string",
          "description": "Basis set, e.g. sto-3g, 6-31g*, cc-pvdz, def2-svp. Default 6-31g*.",
          "required": false
        },
        "method": {
          "type": "string",
          "description": "Default hf.",
          "required": false,
          "enum": [
            "hf",
            "dft",
            "mp2"
          ]
        },
        "functional": {
          "type": "string",
          "description": "Functional for dft, tddft, tda, e.g. b3lyp, pbe0, wb97x. Default b3lyp.",
          "required": false
        },
        "max_steps": {
          "type": "integer",
          "description": "Max optimization steps (1-100). Default 50.",
          "required": false,
          "minimum": 1,
          "maximum": 100
        }
      },
      "price_per_unit": 10
    },
    "calculate_excited_states": {
      "description": "Compute electronic excitation energies, absorption wavelengths, oscillator strengths, and the main orbital transitions (TDDFT, TDA, or CIS) to predict UV-Vis absorption.",
      "properties": {
        "geometry": {
          "type": "string",
          "description": "'symbol x y z' per atom, newline- or ';'-separated, or XYZ file text. Give geometry or molecule_name.",
          "required": false
        },
        "molecule_name": {
          "type": "string",
          "description": "Compound name; fetches a 3D structure from PubChem.",
          "required": false
        },
        "units": {
          "type": "string",
          "description": "Units of geometry and distances. Default angstrom.",
          "required": false,
          "enum": [
            "angstrom",
            "bohr"
          ]
        },
        "charge": {
          "type": "integer",
          "description": "Net charge. Default 0 (PubChem's formal charge for molecule_name).",
          "required": false
        },
        "multiplicity": {
          "type": "integer",
          "description": "2S+1. Default 1 for even electron counts, 2 for odd.",
          "required": false,
          "minimum": 1,
          "maximum": 13
        },
        "basis": {
          "type": "string",
          "description": "Basis set, e.g. sto-3g, 6-31g*, cc-pvdz, def2-svp. Default 6-31g*.",
          "required": false
        },
        "method": {
          "type": "string",
          "description": "tda is Tamm-Dancoff TDDFT. Default tddft.",
          "required": false,
          "enum": [
            "tddft",
            "tda",
            "cis"
          ]
        },
        "functional": {
          "type": "string",
          "description": "Functional for dft, tddft, tda, e.g. b3lyp, pbe0, wb97x. Default b3lyp.",
          "required": false
        },
        "n_states": {
          "type": "integer",
          "description": "Excited states to compute (1-20). Default 5.",
          "required": false,
          "minimum": 1,
          "maximum": 20
        },
        "spin_type": {
          "type": "string",
          "description": "Closed-shell excitation spin; open shells are unrestricted. Default singlet.",
          "required": false,
          "enum": [
            "singlet",
            "triplet"
          ]
        }
      },
      "price_per_unit": 10
    },
    "get_task": {
      "description": "Check a calculation that returned status processing. Free. Completed tasks return the original action result in outputs[0].",
      "properties": {
        "task_id": {
          "type": "string",
          "description": "task_id from a processing response.",
          "required": true
        },
        "wait_seconds": {
          "type": "integer",
          "description": "Seconds to wait for completion (0-55); use 55 when polling. Default 0.",
          "required": false,
          "minimum": 0,
          "maximum": 55
        }
      },
      "price_per_unit": 0
    }
  }
}
```

### Usage Instructions

# Chemistry Studio

Run ab initio quantum chemistry on small molecules: energies and properties, qubit Hamiltonians for quantum algorithms, integral export, bond scans, geometry optimization, and excited states.

## Molecule input (all calculation actions)

Give exactly one of:
- `geometry` (string): one atom per line or `;`-separated, `symbol x y z`, e.g. `"O 0 0 0.117; H 0 0.757 -0.469; H 0 -0.757 -0.469"`. Standard XYZ file text (count line, comment line, atoms) also works. Atoms are numbered from 0 in this order.
- `molecule_name` (string): fetches a 3D structure from PubChem. These are force-field geometries; run `optimize_geometry` first when accuracy matters.

Optional: `units` (`angstrom` default, or `bohr`), `charge` (integer, default 0 or PubChem's formal charge), `multiplicity` (2S+1, default 1 for even electron counts and 2 for odd), `basis` (default `sto-3g` for `build_hamiltonian` and `export_integrals`, `6-31g*` otherwise; any standard name such as `sto-3g`, `6-31g`, `6-31g*`, `6-31+g**`, `cc-pvdz`, `aug-cc-pvtz`, `def2-svp`, `def2-tzvp`). def2 and lanl2 bases add effective core potentials for heavy elements automatically.

Limits: 60 atoms; basis functions per method: hf/dft 300, mp2 250, casci 250, casscf 150, ccsd 120, ccsd_t 100; fci and active spaces up to 2,000,000 determinants. A calculation that exceeds a limit fails fast with a clear message; use a smaller basis, method, or active space.

## Long calculations

Results normally return directly. A calculation still running after about 45 seconds returns `status: "processing"` with a `task_id`; call `get_task` with that `task_id` and `wait_seconds: 55` until `status` is `completed` (the original result is `outputs[0]`) or `failed` (read `error` and `error_details`). Do not resubmit the calculation while it is processing. Each calculation is limited to 10 minutes.

## Actions

### `lookup_molecule`
Find a compound on PubChem. Exactly one of `molecule_name`, `smiles`, `pubchem_cid`. Returns `geometry` (Angstrom XYZ lines), formula, molecular weight, formal `charge`, `electrons`, and `default_multiplicity`.

`{"action":"lookup_molecule","molecule_name":"caffeine"}`

### `calculate_energy`
Total energy plus dipole moment (Debye), Mulliken charges, HOMO/LUMO energies, gap (eV), and the orbital energies nearest the gap. Optional: `method` = `hf` (default), `dft`, `mp2`, `ccsd`, `ccsd_t` (CCSD(T)), `casci`, `casscf`, `fci` (exact within the basis); `functional` for `dft` (default `b3lyp`); `frozen_core` for mp2/ccsd/ccsd_t; `active_electrons` + `active_orbitals` (required for casci/casscf, not allowed otherwise). Open-shell molecules use UHF/UKS references (ROHF for casci/casscf/fci); CAS and FCI target the requested multiplicity.

`{"action":"calculate_energy","geometry":"O 0 0 0.117; H 0 0.757 -0.469; H 0 -0.757 -0.469","basis":"cc-pvdz","method":"ccsd_t","frozen_core":true}`

`{"action":"calculate_energy","molecule_name":"benzene","method":"dft","functional":"pbe0","basis":"def2-svp"}`

### `build_hamiltonian`
Molecular Hamiltonian as a qubit operator. Optional: `active_electrons` + `active_orbitals` (default all electrons and orbitals; 2 qubits per active orbital, max 52 qubits); `mapping` = `jordan_wigner` (default), `bravyi_kitaev`, `parity`, `parity_tapered` (parity with the two symmetry qubits removed); `spin_order` = `interleaved` (default; OpenFermion/PennyLane) or `block` (Qiskit Nature; always used by `parity_tapered`); `pauli_format` = `sparse` (default, `"X0 Y1 Z3"`, identity `"I"`) or `qiskit` (dense label, qubit 0 is the rightmost character, ready for `SparsePauliOp.from_list`); `coefficient_threshold` (default 1e-10); `include_exact_energy` (default true); `save_to_file` (default false).

`{"action":"build_hamiltonian","geometry":"H 0 0 0; H 0 0 0.7414"}`

`{"action":"build_hamiltonian","geometry":"Li 0 0 0; H 0 0 1.595","active_electrons":2,"active_orbitals":3,"mapping":"parity_tapered","pauli_format":"qiskit"}`

Response: `qubits`, `term_count`, `terms` as `[label, coefficient]` pairs (Hartree, identity first, then by decreasing magnitude), `constant_hartree` (includes nuclear repulsion and frozen-core energy), `one_norm_hartree`, `hf_state` (`bitstring` with qubit 0 first, `qubits_set_to_one`, and its energy, which equals the HF energy), `reference_energies` (`hf_energy_hartree`, `exact_energy_hartree` = lowest eigenvalue for the active electron counts), `active_space`, and `conventions`. Over 600 terms (or with `save_to_file`), `terms` is replaced by `terms_preview` (largest 50) and the full JSON is in `hamiltonian_file` (`file_id`, `signed_url`).

### `export_integrals`
Writes an FCIDUMP file (molecular-orbital integrals, chemist notation, core energy on the constant line) to File Manager as `integrals_file`. Optional `active_electrons` + `active_orbitals` (max 50 orbitals). Uses RHF (ROHF for open shells) orbitals.

`{"action":"export_integrals","geometry":"N 0 0 0; N 0 0 1.098","basis":"cc-pvdz","active_electrons":10,"active_orbitals":12}`

### `scan_bond`
Energy at evenly spaced distances between two atoms. Required: `atom_indices` `[anchor, moving]` (0-based), `start_distance`, `end_distance` (in `units`). Optional: `points` (2-40, default 10), and `method`, `functional`, `frozen_core`, `active_electrons`, `active_orbitals` as in `calculate_energy`. Only the moving atom moves, along the anchor-to-moving direction. Returns `points` (`distance_angstrom`, `energy_hartree`, `relative_energy_kcal_mol`; a point that fails to converge has an `error` instead) and `lowest_point` with its geometry. For bond breaking, prefer `fci`, `casci`, or `casscf`; RHF-based methods overestimate dissociation energies.

`{"action":"scan_bond","geometry":"H 0 0 0; H 0 0 0.74","atom_indices":[0,1],"start_distance":0.5,"end_distance":3.0,"points":12,"method":"fci","basis":"cc-pvdz"}`

### `optimize_geometry`
Minimizes the energy with respect to atom positions. Optional: `method` = `hf` (default), `dft`, `mp2` (basis-function limits 200, 200, 120); `functional`; `max_steps` (1-100, default 50). Returns `optimized_geometry_angstrom` (pass it straight to other actions), `final_energy_hartree`, `converged`, `steps`, and `max_atom_displacement_angstrom`. If `converged` is false, rerun from the returned geometry.

`{"action":"optimize_geometry","molecule_name":"ethanol","method":"dft","functional":"b3lyp","basis":"6-31g*"}`

### `calculate_excited_states`
Vertical excitations. Optional: `method` = `tddft` (default), `tda`, `cis`; `functional` (default `b3lyp`, not used by `cis`); `n_states` (1-20, default 5); `spin_type` = `singlet` (default) or `triplet` for closed shells (open shells are unrestricted). Returns `states` with `excitation_energy_ev`, `wavelength_nm`, `oscillator_strength` (length gauge; bright states have larger values), `converged`, and `dominant_transitions` (e.g. HOMO to LUMO with weight). Add diffuse functions (e.g. `6-31+g*`, `aug-cc-pvdz`) for Rydberg-like states.

`{"action":"calculate_excited_states","molecule_name":"formaldehyde","method":"tddft","functional":"cam-b3lyp","basis":"6-31+g*","n_states":6}`

### `get_task`
Free. Required: `task_id`. Optional: `wait_seconds` (0-55, default 0).

`{"action":"get_task","task_id":"8a3f0c2e-5b1d-4e7a-9c6f-2d4b8e1a7f30","wait_seconds":55}`

## Units and conventions

Energies are in Hartree unless the key says otherwise (1 Hartree = 27.2114 eV = 627.509 kcal/mol). Output geometries are in Angstrom. `s_squared` is the spin expectation value S(S+1). Mulliken charges are listed by 0-based atom `index`.

### Additional Product Content

## Quantum chemistry for agents, without the setup

Chemistry Studio runs real electronic-structure calculations on molecules of up to 60 atoms. Give it coordinates or just a compound name, pick a method, and get back energies, properties, and quantum-computing inputs in seconds. There is nothing to install, no cluster to manage, and no account to connect.

### What you can do

1.  **Build qubit Hamiltonians** for VQE, QPE, and other quantum algorithms. Choose an active space and a Jordan-Wigner, Bravyi-Kitaev, parity, or tapered-parity mapping. Each Hamiltonian comes with its Hartree-Fock starting bitstring and the exact ground-state energy to benchmark against.
2.  **Calculate energies and properties** with Hartree-Fock, DFT (B3LYP, PBE0, wB97X, CAM-B3LYP, and more), MP2, CCSD, CCSD(T), CASCI, CASSCF, or exact FCI, together with dipole moments, atomic charges, orbital energies, and the HOMO-LUMO gap.
3.  **Map bond breaking** with potential-energy scans between any two atoms.
4.  **Optimize structures** to their lowest-energy geometry with HF, DFT, or MP2.
5.  **Predict UV-Vis absorption** with TDDFT, TDA, or CIS excitation energies, wavelengths, oscillator strengths, and the orbital transitions behind each band.
6.  **Export integrals** as FCIDUMP files for DMRG, selected-CI, and other quantum-chemistry codes.
7.  **Look up molecules** by name, SMILES, or PubChem ID and get a ready-to-use 3D structure.

### Ready for your quantum stack

Hamiltonians come out as weighted Pauli strings in sparse form or as Qiskit labels for SparsePauliOp.from\_list, with interleaved (OpenFermion and PennyLane) or block (Qiskit Nature) spin-orbital ordering. Small operators return inline; larger ones are saved as JSON in File Manager.

### How results arrive

Most calculations finish in a few seconds. Anything still running after about 45 seconds continues in the background and returns a task ID you can check for free until the result is ready. Every calculation is limited to 10 minutes, and the response tells you exactly what to change if a request is too large.

### Pricing

1.  Molecule lookup: 1 credit
2.  Energies, qubit Hamiltonians, and integral export: 5 credits
3.  Geometry optimization and excited states: 10 credits
4.  Bond scans (up to 40 points): 15 credits
5.  Checking a background task: free

### Frequently Asked Questions

#### How do I connect this tool to an external agent?

- Page URL: https://www.agentpmt.com/faq
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md

You can install the local MCP server by opening a terminal and running:

```
npm install -g @agentpmt/mcp-router
agentpmt-setup
```

This will connect you to local agents like Claude Code, Windsurf, Grok Build, Cursor, etc.

Alternatively you can connect to the hosted version with this config block, no installation required:

```
{
  "mcpServers": {
    "agentpmt": {
      "type": "streamable-http",
      "url": "https://api.agentpmt.com/mcp",
      "headers": {
        "Authorization": "Bearer <AGENTPMT_BEARER_TOKEN>",
        "x-instance-metadata": "{\"client\":\"generic-mcp\",\"platform\":\"remote\"}"
      }
    }
  }
}
```

[View MCP Connection Instructions](/docs/mcp-reference/connection) for more details.

#### How does an external agent use this tool?

- Page URL: https://www.agentpmt.com/faq
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md

After the external agent is connected to an Agent Group that can use this tool, paste this prompt into the agent:

> Use the AgentPMT-Tool-Search-and-Execution tool. First call action 'get\_instructions' so you know how to use the tool search interface. Then call action 'get\_schema' with tool\_id 6ada6971e001971070f32f9a ("Chemistry Studio"). After reading the schema and any returned instructions, tell me what this tool can do, we are going to be using it

The agent should fetch the tool schema first, collect the required parameters for your request, and then call the tool through AgentPMT.

#### Do I need to install anything or connect an account?

- Page URL: https://www.agentpmt.com/faq#faq-6ada7923e001971070f330de
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6ada7923e001971070f330de
- Tags: Product Specific

No. Chemistry Studio runs the calculations on AgentPMT's servers. Your agent sends a molecule and a method and gets results back; there is no software to install and no account or API key to connect.

#### How accurate are the results?

- Page URL: https://www.agentpmt.com/faq#faq-6ada7924e001971070f330e4
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6ada7924e001971070f330e4
- Tags: Product Specific

The numbers are what each method gives in the chosen basis set; they are computed, not experimental values. FCI is exact within its basis, CCSD(T) is the usual gold standard for well-behaved molecules, DFT accuracy depends on the functional, and larger basis sets get closer to the true answer. For bond breaking and other strongly correlated cases, use FCI, CASCI, or CASSCF.

#### How do I use the qubit Hamiltonian in Qiskit, PennyLane, or OpenFermion?

- Page URL: https://www.agentpmt.com/faq#faq-6ada7923e001971070f330e0
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6ada7923e001971070f330e0
- Tags: Product Specific

For Qiskit, request pauli\_format qiskit and pass the terms to SparsePauliOp.from\_list; use spin\_order block to match Qiskit Nature. For PennyLane and OpenFermion, keep the default interleaved spin order and sparse labels such as 'X0 Y1 Z3'. Every response includes the Hartree-Fock bitstring to initialize your circuit and the exact ground-state energy of the same active space to benchmark against.

#### How large a molecule can I run?

- Page URL: https://www.agentpmt.com/faq#faq-6ada7923e001971070f330e1
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6ada7923e001971070f330e1
- Tags: Product Specific

Up to 60 atoms. Each method has a basis-function limit (300 for HF and DFT, 250 for MP2, 120 for CCSD, 100 for CCSD(T)), exact methods are limited to 2 million determinants, and qubit Hamiltonians to 52 qubits. Use an active space to focus on the chemically important orbitals of a larger molecule. If a request is too big, the error says which limit was hit and what to change.

#### Where does the structure come from if I only give a compound name?

- Page URL: https://www.agentpmt.com/faq#faq-6ada7923e001971070f330e2
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6ada7923e001971070f330e2
- Tags: Product Specific

From PubChem's 3D conformer for that compound. These are force-field geometries, so for accurate energies, run optimize\_geometry first and use the optimized coordinates in later calculations.

#### Which methods and basis sets are supported?

- Page URL: https://www.agentpmt.com/faq#faq-6ada7923e001971070f330df
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6ada7923e001971070f330df
- Tags: Product Specific

Hartree-Fock, DFT with any standard functional (for example B3LYP, PBE0, wB97X, CAM-B3LYP, M06-2X), MP2, CCSD, CCSD(T), CASCI, CASSCF, and exact FCI for energies; HF, DFT, and MP2 for geometry optimization; and TDDFT, TDA, and CIS for excited states. Standard basis sets such as STO-3G, 6-31G\*, 6-31+G\*\*, cc-pVDZ, aug-cc-pVTZ, def2-SVP, and def2-TZVP work by name, with effective core potentials added automatically for heavy elements in the def2 and LANL2 families.

#### Why did my request return a task ID instead of a result?

- Page URL: https://www.agentpmt.com/faq#faq-6ada7923e001971070f330e3
- Markdown URL: https://www.agentpmt.com/faq?format=agent-md#faq-6ada7923e001971070f330e3
- Tags: Product Specific

Calculations that run longer than about 45 seconds continue in the background. Call get\_task with the task ID (it is free) and wait\_seconds 55 until the status is completed; the full result is then in outputs\[0\]. Each calculation can run for up to 10 minutes.

### Dependencies

This product has no public dependency products.