mcpField
A
Anvil

Anvil

Local
github.comScience & Education1Updated 4w ago

About Anvil

Anvil is a local physics and chemistry workbench for agents, aimed at users who want to model designs, check simulation metrics, and export geometry. Its tools perform deterministic computation in-process without a network call or an embedded LLM.

Key features

  1. 01Build domain-specific blueprints from plain-language intent
  2. 02Simulate across 12 science and engineering domains
  3. 03Return snapshots with proof metrics and tolerances
  4. 04Export geometry as ASCII STL or OBJ
  5. 05Run locally without network calls

Use cases

  1. 01Test a CMOS ring oscillator design against metrics
  2. 02Simulate mechanical or chemical systems
  3. 03Export modeled geometry for 3D printing or CAD

MCP support

Exposes four tools to MCP clients: `anvil.domains`, `anvil.forge`, `anvil.solve`, and `anvil.export`. They provide domain information, blueprint creation, simulation, and geometry export.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

mcp.json · Universal config
{
"mcpServers": {
"the-warl0ck-anvil": {
"command": "npx",
"args": [
"-y",
"anvil-mcp"
]
}
}
}
Run commandnpx -y anvil-mcp

Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.

Packages
npmanvil-mcp0.1.2

Tools

4

Saved tool list · updated 2w ago

This tool takes no parameters.

Details

From the project README

anvil-mcp

Anvil — a full workbench for your agent.

No cloud. No Bridge. No API key. No LLM inside — the tools are pure computation; your agent host brings the thinking.

Plain words in — your agent forges the design, tests it against proof metrics, iterates until it passes, and hands you the file. You never touch a tool.

30 seconds

you:    "I need a 5-stage CMOS ring oscillator at 7nm — prove it works
         before I print anything."

agent:  anvil.forge  → blueprint: silicon · 8 nodes · "5-stage ring at 7 nm, VDD 0.75 V."
        anvil.solve  → [pass] Joule power · [pass] junction temp · [warn] EM margin thin
        anvil.forge  → widens the vias, re-forges
        anvil.solve  → all metrics pass
        anvil.export → 532 triangles of ASCII STL

you get: the printable file, plus the proof it works.

Install

Requires Node ≥ 20. No build step needed for use:

npx github:The-Warl0ck/anvil-mcp

Or clone and run:

git clone https://github.com/The-Warl0ck/anvil-mcp
cd anvil-mcp
npm install
npm run build
npm start

Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "anvil": {
      "command": "npx",
      "args": ["github:The-Warl0ck/anvil-mcp"]
    }
  }
}

Tools

ToolInputOutput
anvil.domains{}The 12 domains and what each simulates
anvil.forge{ intent, domain? }Blueprint JSON + rationale (offline — no LLM in the tool itself)
anvil.solve{ blueprint, steps? }SimSnapshot + ProofMetric[] with real numbers
anvil.export{ blueprint, format }STL (ASCII) or OBJ text for 3D printing / CAD

The 12 domains

silicon (nets, delay, heat, electromigration) · cellular (membranes, ions, morphogens) · quantum (wells, tunneling, decoherence) · neural (spikes, region flows) · mechanical (stress, modes, yield) · chemistry (mass-action kinetics, ΔH, equilibrium) · architecture (plans, interiors, circulation) · metallurgy (alloys, CE, melt, print window) · robotics (arms, torque, reach, payload) · machines (engines, gears, printable parts) · optics (geometry, gnomon, shadows, sundials) · sky (sun position / ephemeris)

How it works

  1. anvil.forge — readIntent scores your words against per-domain keyword sets, picks a domain, and forgeOffline builds a schematic graph (nodes, edges, physical params) from templates plus your numbers (e.g. "7nm", "5-stage", "0.75 V"). Pure local compute.
  2. anvil.solve — createSolver dispatches to the domain solver (Kirchhoff MNA for silicon, Euler–Bernoulli for mechanical, mass-action for chemistry, …), steps it, and returns a snapshot plus proof metrics — checks with real tolerances and statuses.
  3. anvil.export — blueprint geometry meshed to ASCII STL or OBJ text.

Everything runs in-process. There is no network call anywhere in the default path.

Config

Optional — nothing is required to run:

ANVIL_HOME=~/.anvil   # where saved designs / assets / exports live (default ~/.anvil)

Notes

  • Any OpenAI-compatible "mouth" (LM Studio, etc.) is a future opt-in, not part of v1. The kernel speaks blueprints, not prose, and that's the point.
  • anvil.solve returns a deterministic snapshot after N steps of the solver's recommended dt — no wall-clock randomness.
  • Apache-2.0. See LICENSE.

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.