Noether Physics

io.github.RanshivPublished by GitHub account Ranshivv0.1.2Updated Oct 24, 2026

Physics assistant: checked equations, live simulations, claims verified against arXiv papers

Overview

AI-generated overview

A physics research assistant that explains concepts, runs simulations, checks equations and verifies citations against real arXiv papers.

What you can do
  • Explain physics concepts with analogies, dimension-checked equations and recomputed worked examples
  • Run six physics simulations (pendulum, oscillators, projectile, Rabi, decoherence, Jaynes-Cummings) with drift and closed-form comparisons
  • Check equations for dimensional consistency and flag undeclared symbols as unknown
  • Ingest arXiv LaTeX sources, list their equations and search across the paper corpus
  • Audit a draft's bibliography, resolving references against arXiv, Crossref, OpenAlex and INSPIRE
When to use it
Useful when an assistant needs physics answers with verifiable grounding: explaining concepts, running quick simulations, checking equations, or catching fabricated or unresolvable references in a draft before submission.
Requirements
Runs locally over stdio as a PyPI package (noether-physics) with the mcp extra; needs Python 3.12+ and network access to arXiv and citation indexes. The quantum simulations need the quantum extra (QuTiP). No accounts, API keys or environment variables are declared.
Before you install
The verification gate confirms a quote is real but not that it supports the claim, so cited quotes should be read. The reference resolver was tested against only eight fabrications, and coverage is small (58 papers, 8 concepts). The audit exits non-zero on unresolvable references, which can break pre-commit hooks. arXiv forbids bulk crawling; the tool fetches one paper at a time with a 3-second interval.

Installation

In SourceWeft

  1. Open Noether Physics in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

NOETHER

A physics research assistant that shows its work.

Explains physics concepts with everyday analogies, dimension-checked equations, worked examples it recomputes, and simulations it actually runs. Answers questions from real arXiv papers with every sentence anchored to a verbatim span. Audits your own draft's bibliography for references that don't exist.

bash
pip install noether-physicsnoether explain decoherence

On 0.1.0 or 0.1.1? Upgrade. Those releases confirm fabricated references — the specific failure this tool exists to prevent. See CHANGELOG.md.


Read this before you trust it

This is a research-integrity tool, so its limits matter more than its features.

The verification gate checks that a quote is real. It does not check that the quote supports the claim. A claim can contradict its own citation and still pass. Demonstrated during development: a claim asserting "the experiment detected a nonzero neutron EDM at five sigma" was accepted while citing a passage reporting d_n = 0.0 ± 1.1 × 10⁻²⁶ e·cm — a null result. The quote was genuine, so the gate let it through. Closing that gap needs entailment checking, which needs a language model, and keeping the model outside the verifier is what makes the other guarantees meaningful. So every answer this tool emits ends by saying so, and you should read the quotes.

The reference resolver is now measured in both directions. It resolves 86.5% of real references and was fooled by 0 of 8 deliberately fabricated ones. That second number did not exist until a labelled benchmark was built for it — and the first run of that benchmark caught the resolver confirming 80% of fabrications, some at 0.95 confidence. Three defects were found and fixed. Eight fabrications is still a small sample: 0% means "fooled by none of eight", not "cannot be fooled".

It is small. 58 papers in the test corpus, 8 concepts in the explanation library, quantum coverage limited to two-level systems and one cavity mode. No PDF fallback, so roughly 9% of quant-ph papers (measured: 5 of 55) cannot be ingested at all.

docs/DEFERRED.md is the full account — every gap, with the measurement behind it. It is the honest document; this README is the summary.


Why it exists

2026 audits found a 17% phantom-citation rate in AI-assisted survey papers — references resolving to no digital object — and roughly 146,900 AI-generated fake citations across 2.5M papers in 2025. arXiv now bans authors who submit hallucinated references.

Physics has a structural advantage nobody exploits: arXiv distributes the actual LaTeX source. Equations arrive with their \labels, citations with their \cite keys, sections with their real structure — read, not guessed. Tools in other fields OCR PDFs because their domains have no source. Physics does.

What it does

Explains. Curated prose, not generated — then machine-checked. Every equation is parsed and dimension-checked; every worked example is recomputed and compared against its stored answer, so a typo in the library fails CI rather than teaching you a wrong number.

bash
noether explain decoherence          # analogy, maths, worked example, live simulationnoether concepts                     # what the library covers

Simulates. Six models — pendulum, damped/driven oscillator, projectile with drag (SciPy); Rabi, decoherence, Jaynes-Cummings (QuTiP). Every run halves the step size and reports the drift, and where a closed form exists the numerics are compared against it automatically.

bash
noether simulate rabi --params "detuning=6.28" --blochnoether models

Checks equations. Undeclared symbols return unknown, never a guess — h is Planck's constant or a height, T a period or a temperature. unknown is not a pass.

bash
noether eq 'T = 2 \pi \sqrt{\frac{L}{g}}' --units 'T=second,L=meter,g=meter/second**2' --vary 'L=0.1..2' --at 'g=9.81'

Reads papers. Ingests LaTeX source, so "equation 14" means the equation the authors numbered 14.

bash
noether ingest 2001.11966noether equations arXiv:2001.11966noether find "vacuum Rabi oscillations"

Audits your draft. Resolves every \bibitem against arXiv, Crossref, OpenAlex and INSPIRE. Exits non-zero on unresolvable references or cite keys with no bibliography entry, so it works as a pre-commit hook.

bash
noether audit path/to/your-paper.tex

Measured results

Run noether bench status yourself. As of the last run:

gateresultthresholdverdict
equations100% (31/31)90%pass
retrieval83.3% (10/12) at top-3 of 58 papers80%pass
citations86.5% (32/37)85%pass
resolver0% false positives (0/8 fabrications)≤10%pass

Read these with their scope attached. "Right paper in the top 3" over 58 papers is a real task; over 8 it was nearly free, and an earlier run reported a meaningless 100% because top_k exceeded the corpus size. The citation threshold is 85% rather than 100% because books, theses and pre-digital articles are genuinely not in any index — the residual failures on the nEDM letter are a 1954 Danish journal, a 1955 Pauli chapter and a 1982 Oxford book.

Use it from Claude

bash
pip install "noether-physics[mcp]"claude mcp add --scope user noether -- python -m noether.mcp_server

14 tools. Claude reasons and writes; NOETHER retrieves, checks and records. There is deliberately no write_answer tool — the component that can hallucinate is not the component that decides what ships.

Install

bash
pip install noether-physics              # corepip install "noether-physics[quantum]"   # + QuTiP simulationspip install "noether-physics[mcp]"       # + MCP server

Python 3.12+. From source: uv venv && uv pip install -e ".[dev,quantum,mcp]", then uv run pytest (288 tests, no network — cassettes default to replay and a miss is an error, not a live fallback).

Terms

arXiv forbids bulk crawling. This fetches one paper at a time behind a 3-second interval and caches permanently, so a given paper is downloaded exactly once. Every source, its rate limit and its terms are declared in research/sources/source_registry.yaml; a source not in that file is not called.

No AI-generated imagery. Every figure is extracted from a real paper or rendered deterministically from code and data, and is tagged with which.

Licence

MIT — see LICENSE. Release history: CHANGELOG.md.

The name honours Emmy Noether. The PyPI distribution is noether-physics because noether belongs to an unrelated physical-units library; the command is noether either way.

Source: README.md at commit 35faf21

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

1
  1. v0.1.2LatestSep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts