Ad space · Your tool here
PluginStack
Setup guide

MCP reference servers v2.0 and v2.1: what changed and what to do

Checked against the official docs:

On 19 October 2026 the official modelcontextprotocol/servers repository shipped v2.0.0, and a security-focused v2.1.0 followed on 25 October (UTC). If you run the Filesystem, Memory, Sequential Thinking or Fetch server from a Claude, Cursor, VS Code or Codex config, this is what changed, whether it affects you, and how to update. Everything below comes from the official release notes, changelogs and package registries; sources are listed at the end.

Quick answer

  • The TypeScript servers now declare Node.js 24 or newer. Filesystem, Memory, Sequential Thinking and Everything all list "node": ">=24" in their package engines. Run node --version; if it is below 24, install Node 24 or newer before you restart your client.
  • Fetch is a Python package, so the Node change does not apply to it. It is published on PyPI as mcp-server-fetch and needs Python 3.10 or newer.
  • v2.1.0 is a security release. It fixes eight vulnerabilities across three servers. Move Filesystem to 2.0.1 (the first version with the fixes) and Fetch to 2026.10.24, or newer.
  • The setup commands in the READMEs did not change. npx -y @modelcontextprotocol/server-filesystem <folders> and uvx mcp-server-fetch are still the launch commands, so an existing config usually keeps working once the runtime is current.

If a server stops starting after an update, the cause is almost always the runtime or a stale cached version. See "How to update" and "What can break" below, and our guide to MCP error -32000 "Connection closed".

What v2.0 and v2.1 are

v2.0.0 (19 October 2026) refactored every server in the repository so that it supports the "modern era" of the MCP specification (the 2026-07-28 revision) while still answering clients that speak the older 2025-era protocol. The TypeScript servers moved onto the v2 TypeScript SDK packages and the Python servers onto the Python SDK 2.x line.

v2.1.0 (tagged 25 October 2026, UTC) is a security release: eight vulnerabilities fixed across Filesystem, Fetch and Everything (the Everything server is a test server for client developers, not something most people configure). The release notes link a GitHub security advisory for each one. We do not repeat the advisory details here; read the release notes if you need them.

The versions that were current on 27 October 2026, checked against the npm and PyPI registries:

  • @modelcontextprotocol/server-filesystem 2.0.1 (npm, engines.node >=24)
  • @modelcontextprotocol/server-memory 2.0.0 (npm, >=24)
  • @modelcontextprotocol/server-sequential-thinking 2.0.0 (npm, >=24)
  • mcp-server-fetch 2026.10.24 (PyPI, Python >=3.10, depends on mcp>=2.3,<3)

Git and Time, the other two Python servers, use the same date-style versions (2026.10.19 at the v2.0.0 release). Details for each server are on its listing: Filesystem, Memory, Sequential Thinking and Fetch.

Who this affects

  • Anyone launching a TypeScript reference server with `npx`, which is how most Claude Desktop, Cursor, VS Code and Codex configs do it. You need Node 24 or newer on the machine that runs the client.
  • Filesystem server users on any platform, because the security fixes landed in 2.0.1. The release notes list every earlier version as affected (1.0.0 through 2.0.0, and the date versions up to 2026.8.31). The v2.1.0 release notes call the Windows fix partial, so on Windows treat the allowed-folder list as something to review, not a guarantee.
  • Fetch server users, for the 2026.10.24 security fixes. Fetch can reach any URL you let the model request, so keep it current.
  • People who pinned an old version or installed a global copy. Nothing updates those automatically.
  • Developers who call the servers from their own client code, because several behaviours changed (see "What can break").

It does not affect remote MCP servers run by other companies, such as the Notion or Linear ones, and it does not change servers from other publishers. Those have their own release notes and runtime requirements.

How to update

1. Check your Node version

Node 24 or newer, and the engines the package declares
bash
node --version
npm view @modelcontextprotocol/server-filesystem engines

If node --version prints something below v24, install a current Node (the official download page, or a version manager such as nvm or fnm) and restart your terminal and your AI client. A client launched from a desktop icon uses the Node that was on its PATH when it started, so quit and reopen it fully.

2. Get the new server version

With npx -y <package> in your config there is nothing to install: npx fetches the latest published version when it launches the server. Restart your client after upgrading Node, and the new version starts. If you want to be explicit, or you are jumping from an old date-style version, pin it:

Pin Filesystem to the first security-fixed version (change the folder to yours)
bash
npx -y @modelcontextprotocol/server-filesystem@2.0.1 /Users/you/projects

In a client config the same pin goes in the args array, for example "args": ["-y", "@modelcontextprotocol/server-filesystem@2.0.1", "/Users/you/projects"]. If Cursor keeps launching an old copy, its docs suggest removing the server in Customize, running npm cache clean --force, then adding it again.

For Fetch, run it through uvx (or pip), and ask for the latest:

bash
uvx mcp-server-fetch@latest
# or, if you installed it with pip:
pip install -U mcp-server-fetch

3. Restart your client and check

  • Claude Code: run claude mcp list and look for ✔ Connected next to the server.
  • Cursor: open Customize then MCPs (the server should be listed with its toggle on).
  • VS Code: run MCP: List Servers from the Command Palette and check the server is running.
  • Codex: run codex mcp list, or type /mcp inside the Codex terminal UI.

What can break

Node older than 24

The maintainers declare Node 24 or newer, so treat anything older as unsupported. npm prints an EBADENGINE warning for it. In a quick test we ran on 27 October 2026, Node 20 and 22 still completed an MCP handshake with the new servers, so an old Node does not always fail outright. That is luck, not a promise: the declared requirement is 24, and a later release can use a Node 24 feature without notice. If a server will not start after the update, check this first.

Changes that matter if you write or run your own client

These come from the v2.0.0 notes and the per-server changelogs. Most people using Claude, Cursor, VS Code or Codex never see them.

  • A stdio message larger than 10 MiB now closes the connection.
  • Calling a tool name the server does not have now returns a JSON-RPC -32602 error instead of a tool result flagged isError.
  • Error messages no longer start with an MCP error <code>: prefix, and validation errors now name the field first.
  • Tool input schemas declare JSON Schema 2020-12 rather than draft-07.
  • Tools no longer advertise execution.taskSupport.

Filesystem: Roots are deprecated

On a connection that uses the 2026-07-28 protocol, the Filesystem server does not use MCP Roots (the roots/list mechanism). The allowed folders are exactly the ones you pass on the command line. A server started with no folders answers each tool call on such a connection with an error. Clients still on the 2025-era protocol keep the older Roots behaviour.

If you are jumping from an older date-versioned release, the Filesystem changelog for 1.0.0 also lists behaviour changes (for example, an update to roots that leaves no valid folder now revokes access, edit_file keeps CRLF line endings, and write_file overwrites in place). Read the changelog before upgrading a setup you rely on.

The date-versus-semver trap on npm

The TypeScript servers were date-versioned (2025.x and 2026.x) until they moved to semantic versions at 1.0.0. Package managers rank 2.0.1 below every 2025.x and 2026.x version, so they will not offer it as an upgrade. The release notes say that if you are on a date version you should install 2.0.1 explicitly, for example npm install @modelcontextprotocol/server-filesystem@2.0.1, or pin it as shown above.

Windows launch problems are separate

If your server fails on Windows with spawn npx ENOENT, that is not a v2 problem; npx needs a cmd /c wrapper in some clients. See Fix "spawn npx ENOENT" for MCP servers on Windows.

FAQ

Do I need to change my MCP config?

Usually not. The launch commands in the READMEs are the same. What you may need to change is the machine: Node 24 or newer for the TypeScript servers, and a restart.

Is Fetch affected by the Node 24 requirement?

No. Fetch is a Python package launched with uvx or python -m mcp_server_fetch. It needs Python 3.10 or newer, and its own update is 2026.10.24.

Which version should I run?

The latest published one: Filesystem 2.0.1 or newer, Memory and Sequential Thinking 2.0.0 or newer, Fetch 2026.10.24 or newer, as of 27 October 2026. Check the GitHub releases page for anything newer.

Where do I add these servers to my client?

See how to add an MCP server to Cursor, the best MCP servers for Claude Code and how to add an MCP server to Codex with config.toml.

Sources

Commands and config above come from these official docs. Tools change often, so check them for the latest steps.

PluginStack is independent and not affiliated with or endorsed by the companies mentioned. Spotted something out of date? Email pluginstackai@gmail.com.