Black Friday: first month free on quarterly plans · until 30 Nov See the plans Conditions
New here? Try a Minecraft server or Discord bot free for 24 hours. Try free
ServerSparkServerSpark

Knowledge base

Add-ons on a Minecraft Bedrock server

Get behavior and resource packs on your Bedrock Dedicated Server: the easy way via an exported world, the manual way with world_behavior_packs.json, and fixes.

NVMe nodesNightly backupsOnline in minutes

Updated 4 November 2026

The easiest way to get Bedrock add-ons on your own server is to switch them on in a world in the Minecraft app, export that world as .mcworld and upload it to your Bedrock server: the add-ons travel inside the world. Players don't need to install anything; the server sends the packs when they join.

Checked on 29 October 2026 against Microsoft's Bedrock Dedicated Server documentation (Getting Started and server.properties reference). Add-ons are a Bedrock feature; on a Java server you use data packs, plugins or mods instead.

What is an add-on?

An add-on is a behavior pack (what mobs and items do) plus usually a resource pack (how they look). You get them as .mcaddon or .mcpack files, which are zip files. Free add-ons from creators work on your own server. Content bought in the Minecraft Marketplace is tied to your account and usually can't be put on a dedicated server.

Method 1 (recommended): via a world from the app

  1. On Windows, a phone or a tablet, open the .mcaddon file: Minecraft imports it.
  2. Create a new world (or edit a copy of an existing one). Under Behavior Packs and Resource Packs, activate the add-on. If the creator says it needs experiments (for example Beta APIs), turn those on under Experiments now; you can't do that on the server.
  3. Open the world once, then go back to the menu. Click the pencil next to the world and choose Export World. You get a .mcworld file.
  4. Rename it to .zip and unpack it. Inside you see level.dat, a db folder and the packs.
  5. In SparkPanel, stop the server and upload that folder into worlds/. Under Settings, set the world name to exactly the folder name (capitals count).
  6. Optional: set texturepack-required=true in server.properties. Microsoft's documentation says this forces players to use the world's resource packs, so nobody plays without the textures.
  7. Start the server and join. The first join downloads the packs, which can take a moment.

Method 2: add packs to an existing server world

For when the world already lives on the server. This is more work, and a typo stops the pack from loading.

  1. Rename the .mcaddon to .zip and unpack it. You get a behavior pack folder and a resource pack folder, each with a manifest.json.
  2. Stop the server. Upload the behavior pack folder to behavior_packs/ and the resource pack folder to resource_packs/. Make sure manifest.json is directly inside each pack folder, not one folder deeper.
  3. Open each manifest.json and copy the uuid and version from the header section (not from modules).
  4. In your world folder (worlds/YourWorld/), create or edit world_behavior_packs.json:
    [
      { "pack_id": "uuid-from-the-behavior-pack-header", "version": [1, 0, 0] }
    ]
    and the same in world_resource_packs.json with the resource pack's uuid and version. More packs: add more entries, separated by commas.
  5. Start the server and check the console for pack errors.

Microsoft's documentation explains the two places packs can live: packs in the top-level behavior_packs and resource_packs folders are available to every world on the server, packs inside a world's folder only to that world. The JSON files above are what switch a pack on for a world.

Add-on needs experimental features? Those are stored in the world and can only be turned on in the app. Use Method 1 for those add-ons.

Not working?

  • Nothing changes in the game: the uuid in the JSON is from modules instead of header, the version doesn't match, or the pack is one folder too deep.
  • Players see missing textures: the resource pack isn't in world_resource_packs.json, or players declined the download. Set texturepack-required=true.
  • It stopped after an update: add-ons made for an older Bedrock version can break when Minecraft updates. Look for a new version of the add-on. Make a backup before updating; see Update your Minecraft server.

Which plan?

Add-ons with many new mobs or big worlds use more memory. Bedrock 1 GB (€0.99 per month paid per quarter, €1.29 monthly billing) is fine for up to about 10 players with a few add-ons; take 2 GB (€1.89 / €2.19) for more players, bigger worlds or heavy add-ons. See Minecraft Bedrock server hosting and Set up your Minecraft Bedrock server. Console players joining? Read how Switch, Xbox and PlayStation players join.

Frequently asked questions

How do I add add-ons to a Minecraft Bedrock server? The easiest way: activate the add-on in a world in the Minecraft app, export the world as .mcworld, unzip it and upload it to the server's worlds folder. The packs come along inside the world.

Do players need to download the add-on themselves? No. The server sends the packs when players join. With texturepack-required=true in server.properties, players must accept them.

Can I use Marketplace add-ons on my server? Usually not. Marketplace content is tied to the buyer's account. Free add-ons from creators (.mcaddon or .mcpack) do work.

Where do I find the pack_id for world_behavior_packs.json? In the pack's manifest.json, under header: use the uuid and version from that section, not the one from modules.

Can I add add-ons to a Java server? No. Java servers use data packs, plugins or mods instead. Bedrock players can join a Java server through Geyser, but they won't get Bedrock add-ons there.