ForgeNeoForgeFabricQuilt

Invalid mod file / 'is missing mods.toml'

Every mod jar must contain a metadata file (mods.toml for Forge/NeoForge, fabric.mod.json for Fabric). When the error says a jar is missing mods.toml or is an invalid mod file, the jar is not a mod at all: the download was interrupted, the file is 0 bytes, or a zip archive was renamed to .jar without containing a mod.

Fastest path: paste your crash report into the Crash Doctor — it identifies this pattern and 40+ others automatically. No signup.

How to fix it

  1. 1

    Find the named file

    The error names the jar. Open the Files tab → mods/ and locate it. If the log names only a folder path, sort mods/ by size — a 0-byte jar stands out.

  2. 2

    Check the file size

    A real mod jar is rarely under 10 KB. A 0-byte or few-hundred-byte file means the download or upload failed partway. Delete it.

  3. 3

    Redownload from CurseForge or Modrinth

    Fetch the exact version the pack manifest expects and re-upload it. A renamed zip will fail the same way again — the metadata file must come from the actual mod file.

  4. 4

    Check for double-extracted archives

    Sometimes a mod zip was extracted, then the inner folder re-zipped by hand. Download the original jar file directly instead of repacking anything.

  5. 5

    Restart and confirm

    Boot once after replacing the jar. If a different jar is now named, repeat — a broken download link in a pack updater can corrupt several files in one run.

Alternative causes

These can produce the same error message — worth ruling out if the steps above don't resolve it.

FTP upload in text mode

ASCII-mode FTP mangles binary jars. Re-upload in binary mode, or use the panel's file manager which always uploads binary-safe.

Antivirus or sync tool truncating files

On self-hosted Windows servers, OneDrive/Dropbox sync and aggressive antivirus can truncate jars mid-write. Exclude the server directory.

Frequently asked

Why would a mod jar have no mods.toml?

Because it was never a mod. A zip renamed to .jar has no metadata. Real mods always ship mods.toml (Forge/NeoForge) or fabric.mod.json (Fabric).

Can I fix it by re-zipping with the metadata added?

No. Hand-repacking almost always produces another invalid jar. Redownload the original file from the mod's official page.

How do I verify a jar downloaded correctly?

Compare file size with the listing on CurseForge/Modrinth, or check the SHA hash the project page publishes. Panel file managers show the size directly.

Want this auto-fixed on your server?

CoalHosting's Minecraft hosting runs the same pattern database against every crash and applies the known fix before your players notice. Free crash diagnosis works on any server, hosted or not.

Related crashes

Last reviewed 2026-09-06. If a step is wrong or out of date, tell us — we'll fix the article and the auto-pattern at the same time.