VAT
Your cart

Your cart is empty.

Keep MCP Self-hosted up to date: versions, renewals and license checks

To keep mcp-core up to date, you rerun ./mcp-update.sh when you want a new version, and you keep a working payment method on file so the yearly renewal goes through. The license check runs by itself every 72 hours. That is the whole routine.

This post shows how to keep mcp-core up to date and the few moments where you step in.

What does it take to keep mcp-core up to date?

Three separate things change over time, and each has its own mechanism:

  • The software version: the Docker image your container runs. You update it with the script, when you choose to.
  • The license term: the Valid until date. It moves forward with every successful yearly payment through Mollie.
  • The license data on your server: entitlements, seats and modes. The server fetches them at every license check.

Only the first one needs a command from you. The other two keep mcp-core up to date on their own, as long as payments succeed and the server can reach AddoCore.

How do you keep mcp-core up to date with a new version?

Run the update script from the folder where you unzipped your bundle:

cd /path/to/unzipped-bundle
./mcp-update.sh

The script reads .env.registry and logs in to the AddoCore container registry, with the token passed on stdin so it never lands in your shell history. It pulls the image for the version in MCP_VERSION and starts the container in the background. If that version does not exist in the registry, for example because of a typo or an old version that was cleaned up, it sets MCP_VERSION=latest in .env and pulls again. Any other pull error is shown as-is and the script stops.

Your .env, the vault/, state/ and logs/ folders live on the host, so an update does not touch them.

Should you pin MCP_VERSION or follow latest?

MCP_VERSION is pinned to the version in your bundle by default. A plain rerun of the script gives you that same version back, which is safe but means you stay where you are.

You have two choices. Set MCP_VERSION=latest and every run pulls the newest release. Or set a specific version number to move forward, or back, in a controlled step. Pinning is the calmer way to keep mcp-core up to date on a server your team depends on: change the number, run the script, check the logs, done. To roll back, put the old number back and rerun it.

How does license renewal work?

Renewal is the part that keeps mcp-core up to date without you. It is automatic. The MCP Self-hosted license and each add-on are separate recurring lines, each with its own yearly Mollie subscription and its own renewal date. A successful charge moves the Valid until date one term forward. Your server needs no action: the new date arrives with the next license check. MCP license management explains the Details tab where you see it.

MCP Self-hosted costs € 217,80 excl. VAT: € 180,00 per year and includes 3 seats and 1 activation. Add-ons start from € 72,60 excl. VAT: € 60,00 per year; prices differ per add-on. Some products can be billed monthly, with a 12-month minimum term.

To keep mcp-core up to date on the billing side, watch your inbox: thirty days before a line renews you get an email with the license, the amount and the charge date. That email is on by default; you switch it under My Account → Options. The renewal dates of every line are on the Overview tab of each license, and My Account → Subscriptions shows them across all licenses.

What happens when a renewal payment fails?

The line switches to Payment issue and you get an email. Everything keeps working meanwhile. If the line is still unpaid 7 days after the failure, it is suspended:

  • A suspended MCP Self-hosted line suspends the license. The next license check is refused and mcp-core blocks every tool call.
  • A suspended add-on line removes that tool after the next check.
  • A suspended extra seat lowers the seat limit.

A suspended license gets no 96-hour grace period. To restore it, open My Account → Subscriptions and use Change payment method. The next successful charge makes the line active again. The MCP license renewal doc covers every status and the Cancel button.

How often does mcp-core check its license?

At start, and then every 72 hours. That check is how the server learns about renewals, seats and add-ons. The server stores the last good answer locally. If it cannot reach AddoCore, for example during an outage or a firewall change, a 96-hour grace period keeps your tools running on that last known-good response. Details are in license grace period.

You don’t have to wait for the next check. After any change in My Account, such as a fixed payment, a new seat, a revoked token or a new add-on, run:

docker exec mcp-core npm run refresh-license

It runs a normal license check right away, without a restart. It is the quickest way to keep mcp-core up to date after a change in My Account.

How do you confirm the server is current?

Three quick checks tell you where you stand:

  • docker logs -f mcp-core shows a line starting with Check OK, followed by valid=true and your entitlements.
  • curl http://localhost:3200/health returns the license state and the active tool ids as JSON.
  • Ask Claude to run mcp_status. It reports the license state and the tools and modes of your seat.

Run them every time you keep mcp-core up to date with a new image. A green check after a version change is the moment to stop worrying.

Does moving servers affect updates or renewal?

Moving servers does not change how you keep mcp-core up to date. Renewal is not tied to a server. The activation is: mcp-core stores its instance id in ./state/.instance-id. Copy the whole bundle folder, including ./state, and the activation moves with it. Start fresh without that folder and the new server counts as a second activation; release the old one under the Advanced tab of your license.

A short routine

To keep mcp-core up to date with minimal effort: keep your payment method current, rerun ./mcp-update.sh when you want a new version, refresh the license after every change in My Account, and check the logs once. Setting up a new server instead? Start with install MCP Self-hosted.

Ready to connect your AI to real tools?

Start free trial