Skip to main content

MCP Server Examples: Official Servers to Try

Short answer

The reference servers in the modelcontextprotocol/servers repository are the simplest examples: Everything, Fetch, Filesystem, Git, Memory, Sequential Thinking and Time. They show how real servers are built, and they're meant for learning and testing, not production. For a real service, use the server its vendor publishes. GitHub, Notion, MongoDB, Playwright and Chrome DevTools each publish one, and each starts from a single command or a remote URL.

Tested withMCP spec 2026-07-28MCP Inspector 2.11.0 (Node.js 24.19.0)mcp-server-time 2026.10.19 (PyPI)@modelcontextprotocol/server-memory 2.0.0 (npm)Checked 20 Oct 2026

What you'll have at the end​

You'll know which official servers to try for a given job, how to start one, and how to check that it answers before you add it to an AI app. You'll also see one real tool call, made against a reference server.

The AI app either starts a server on your computer or connects to one a vendor runs for you. Local servers are the reference servers and most of the vendor servers below. Remote servers have nothing to install, but they run on the vendor's side. For the difference, read local vs remote MCP servers.

Before you start

  • Node.js 22.19 or later, for npx and MCP Inspector. The Inspector is the official command-line and web tool for testing MCP servers.
  • uv, for the Python servers that start with uvx.
  • A terminal and the AI app you want to use, if you plan to connect a server to it.

Examples by use case​

The table lists the servers this guide checked. Each one comes from its maintainer's repository or package page. Reference servers come first, then the vendor servers.

Use caseServerMaintained byStart with
CodeGitMCP steering groupuvx mcp-server-git --repository <path>
Data and memoryMemoryMCP steering groupnpx -y @modelcontextprotocol/server-memory
FilesFilesystemMCP steering groupnpx -y @modelcontextprotocol/server-filesystem <folder>
WebFetchMCP steering groupuvx mcp-server-fetch
ReasoningSequential ThinkingMCP steering groupnpx -y @modelcontextprotocol/server-sequential-thinking
UtilitiesTimeMCP steering groupuvx mcp-server-time
Testing your clientEverythingMCP steering groupnpx -y @modelcontextprotocol/server-everything
Code hostingGitHub MCP ServerGitHubRemote: https://api.githubcopilot.com/mcp/
DatabaseMongoDB MCP ServerMongoDBnpx -y mongodb-mcp-server --readOnly
ProductivityNotion MCP ServerNotionnpx -y @notionhq/notion-mcp-server
Browser automationPlaywright MCPMicrosoftnpx @playwright/mcp@latest
Browser debuggingChrome DevTools MCPGooglenpx -y chrome-devtools-mcp@latest

The reference servers are described in the next section. The vendor servers are described after that.

Reference servers​

The modelcontextprotocol/servers repository holds seven reference servers. Its README says they "are intended as reference implementations to demonstrate MCP features and SDK usage", and that they are "not as production-ready solutions." Use them to learn the protocol or to check that your client works.

ServerPackageTools you'll see
Everything@modelcontextprotocol/server-everythingTest tools such as echo and get-sum, plus prompts and resources
Fetchmcp-server-fetch (PyPI)fetch, which retrieves a web page and converts it for the model
Filesystem@modelcontextprotocol/server-filesystemread_text_file, write_file, list_directory, search_files and others, limited to the folders you pass at startup
Gitmcp-server-git (PyPI)git_status, git_diff, git_log, git_commit and others, for the repository you pass with --repository
Memory@modelcontextprotocol/server-memorycreate_entities, search_nodes, read_graph and others, a knowledge graph that persists between sessions
Sequential Thinking@modelcontextprotocol/server-sequential-thinkingsequentialthinking, which records a sequence of thoughts while the model works through a problem
Timemcp-server-time (PyPI)get_current_time and convert_time, using IANA timezone names

The Filesystem server only works inside the folders you list in its start command, so point it at a test folder first. The old reference GitHub and Puppeteer servers are archived, which the misconceptions section covers.

Which protocol revision each one answers​

On 2026-10-20 we ran each reference server through MCP Inspector 2.11.0 on Node.js 24.19.0, with --protocol-era modern (the 2026-07-28 revision) and then with --protocol-era legacy. All seven passed tools/list in both eras. The npm servers were pinned to 2.0.0, and Filesystem was given a folder to serve.

Run the same two checks on your own machine before you connect a server, using the commands in the test with MCP Inspector guide. Results can change when a package publishes a new version.

Vendor servers​

Vendor servers are published by the company whose service they connect to. Read the vendor's README for the current flags, because they change between releases.

ServerPublisherWhat it needs before it works
GitHub MCP ServerGitHubYour GitHub account. The remote server is hosted by GitHub; the local version runs in Docker as ghcr.io/github/github-mcp-server.
MongoDB MCP ServerMongoDBA MongoDB connection string or MongoDB Atlas API credentials. The examples in its README add --readOnly.
Notion MCP ServerNotionAn internal integration token, and the pages you want to use shared with that integration.
Playwright MCPMicrosoftNothing to sign in to. It opens a browser window, unless you add --headless.
Chrome DevTools MCPGoogleGoogle Chrome installed.
warning

Chrome DevTools MCP exposes what's in the browser to the AI app. Its README says to avoid sharing sensitive or personal information that you don't want the client to see. Use a browser profile with no logged-in accounts you care about.

Try a reference server​

You can check any server before you connect it to an AI app. The Inspector starts the server, asks it for its tools and prints the result. This command calls the Time server's get_current_time tool:

npx -y @modelcontextprotocol/inspector@2.11.0 --cli uvx mcp-server-time --protocol-era modern --method tools/call --tool-name get_current_time --tool-arg timezone=Europe/London

We ran it on 2026-10-20. The Inspector prints the tool's result, trimmed here:

{
"content": [
{
"type": "text",
"text": "{\n \"timezone\": \"Europe/London\",\n \"datetime\": \"2026-10-20T11:06:20+01:00\",\n \"day_of_week\": \"Tuesday\",\n \"is_dst\": true\n}"
}
],
"structuredContent": {
...
},
"isError": false
}

The datetime changes each time you run it. The "isError": false line tells you the tool ran without an error.

The npm packages download the first time you run them, and the Inspector gives up after 15 seconds by default. If you see a connection timeout, add --connect-timeout 120000 and run the command again.

Add a reference server to an AI app​

The servers README shows configs with an mcpServers object, the format Claude Desktop uses. Each key is a name you choose, and command and args say how to start the server. This file adds the Time and Memory servers:

{
"mcpServers": {
"time": {
"command": "uvx",
"args": ["mcp-server-time"]
},
"memory": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-memory"]
}
}
}

The file's location depends on the app. Claude Desktop and Cursor have their own guides. On Windows, the servers README says to set command to cmd and put /c and npx at the start of args, so the npm servers start correctly.

For a vendor server, copy the start command from its README into the same structure and add any environment variables it asks for. Keep tokens out of the JSON you share, and read the token setup in the vendor's docs first.

Common misconceptions​

Reference servers are ready for production. The servers repository says they're for learning and testing. A production server needs its own threat model, error handling and access limits. Evaluate MCP servers covers the checks to run before you trust one.

The old GitHub and PostgreSQL servers are current. Those reference servers are archived in the servers-archived repository. The archived list also includes Puppeteer, Slack, Google Drive and SQLite. For GitHub, use the vendor server above.

Every server's package name follows its server name. The Time server is mcp-server-time on PyPI. There is no @modelcontextprotocol/server-time package on npm, so a command that uses it will fail with a 404.

A server in a list has been checked. A list tells you the server exists, not that it's safe. Read the source, check what the server can reach, and pin a version before you connect it to your real files or accounts.

Where to find more​

These examples are the starting point. For servers beyond this list, read how to find MCP servers. Published servers are listed in the MCP Registry. Once you want to write your own, build an MCP server walks through a small example from start to finish.

FAQ​

Where can I find more MCP servers than these?

Start with the official MCP Registry, then the vendor's own documentation for the service you use. The find MCP servers guide lists where to look and what to check before you install one.

Is the GitHub MCP Server official?

Yes. GitHub publishes it in the github/github-mcp-server repository, and it is available as a remote server hosted by GitHub and as a Docker image. The reference servers in modelcontextprotocol/servers are a separate set, maintained by the MCP steering group.

Why does a server work in MCP Inspector but not in my AI app?

The two may be using different protocol revisions. Run the Inspector with the modern and legacy options to see which one the server answers. Then check the app's logs, as described in the fix connection errors guide.

Can the Chrome DevTools server read pages I'm logged into?

The browser it controls can show anything that's open in it, including pages where you're signed in. Its README says the client can read and change that data, so use a browser profile without accounts you care about.