How to deploy your first MCP server in five minutes

Francisc Toth · MAY 15, 2026 · 6 minutes
How to deploy your first MCP server in five minutes

Most "getting started" posts for MCP assume you already understand the protocol. This one doesn't. If you've heard about MCP and want a working server before lunch, follow along.

The goal: a Postgres query server that Claude Desktop can use. By the end you'll be asking questions about your database in plain English.

What you need

A Postgres database with a connection string. That's the only prerequisite. Everything else runs through Toolcall.

If you don't have a database handy, spin up a free one on Neon or Supabase. Both give you a connection string within a minute. The rest of this guide assumes you have one.

Step 1: Sign up and create a server

Head to toolcall.dev and create an account. The free tier covers two servers and 1,000 tool calls per month, which is enough to get through this guide and a few weeks of casual use.

In the dashboard, hit New Server. Pick the Postgres template. Paste your connection string. Toolcall handles the rest: hosting, TLS, auth tokens, schema introspection.

The server provisions in about ten seconds. You'll see a green dot when it's ready.

Step 2: Grab the config

Click the Install button next to your server. Pick Claude Desktop from the client list. You'll see a config block:

{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["-y", "@toolcall/connect"],
      "env": {
        "TOOLCALL_API_KEY": "tc_live_..."
      }
    }
  }
}

Hit Copy. The API key in there is scoped to this single server and rotatable from the dashboard.

Step 3: Paste into Claude Desktop

Open Claude Desktop. Settings, Developer, Edit Config. The config file opens in your default editor. If you already have other MCP servers configured, merge the mcpServers block — don't replace the whole file.

Save and restart Claude Desktop. You'll see a small hammer icon in the chat composer. Claude has tools now.

If you don't see the hammer, check the Claude logs at ~/Library/Logs/Claude/mcp.log on macOS. The most common failure is a missing Node.js install. The npx command needs Node 18 or later.

Step 4: Try it

Type something natural: "How many users signed up this week?" or "Show me the five most active accounts by login count."

Claude calls the query_database tool under the hood, runs the SQL, and answers in plain language. The first query might feel slow because the server runs EXPLAIN ANALYZE first to catch unbounded scans. Anything that touches more than 100,000 rows gets blocked by default. You can disable that guard in the server settings, but we suggest leaving it on for production databases.

What just happened

Three pieces communicated. Claude Desktop ran the @toolcall/connect npm package as a subprocess, which is the client side of the connection. The subprocess opened an authenticated stream to our hosted server, which is the transport. The hosted server connected to your Postgres database, which is the target.

You skipped all the parts that usually take a weekend: TLS certificates, auth tokens, deployment, monitoring, error handling, schema introspection. Those are the parts we host so you don't have to.

Where to go next

Three useful directions from here.

Add a second server. GitHub, Linear, Stripe, or roll your own custom server using the SDK. Claude chains tools across servers automatically, so a query like "What's the status of the issue I created yesterday?" hits both Linear and Postgres in one turn.

Switch the transport to SSE if you're building a web client instead of a desktop one. Same auth, different endpoint. The config block changes one URL and nothing else.

Read the audit log. Every tool call your account makes lands in /logs with timing, args, and result size. Useful when a query feels slow or a tool returns something unexpected.

Common first-day issues

  • Hammer icon missing after restart. Node version is the usual cause. Run node --version in a terminal. If it's below 18, install a newer version via nvm or the official installer.
  • "Server not connected" in the tool list. Check that your API key is intact. Sometimes editors mangle the trailing characters during paste.
  • Queries time out. Default timeout is 30 seconds. Bump it in the server settings if you need longer-running analytical queries.

That's the loop. Five minutes to a working server, another five to a useful one.

How to deploy your first MCP server in five minutes

Francisc Toth · MAY 15, 2026 · 6 minutes
How to deploy your first MCP server in five minutes

Most "getting started" posts for MCP assume you already understand the protocol. This one doesn't. If you've heard about MCP and want a working server before lunch, follow along.

The goal: a Postgres query server that Claude Desktop can use. By the end you'll be asking questions about your database in plain English.

What you need

A Postgres database with a connection string. That's the only prerequisite. Everything else runs through Toolcall.

If you don't have a database handy, spin up a free one on Neon or Supabase. Both give you a connection string within a minute. The rest of this guide assumes you have one.

Step 1: Sign up and create a server

Head to toolcall.dev and create an account. The free tier covers two servers and 1,000 tool calls per month, which is enough to get through this guide and a few weeks of casual use.

In the dashboard, hit New Server. Pick the Postgres template. Paste your connection string. Toolcall handles the rest: hosting, TLS, auth tokens, schema introspection.

The server provisions in about ten seconds. You'll see a green dot when it's ready.

Step 2: Grab the config

Click the Install button next to your server. Pick Claude Desktop from the client list. You'll see a config block:

{
  "mcpServers": {
    "postgres": {
      "command": "npx",
      "args": ["-y", "@toolcall/connect"],
      "env": {
        "TOOLCALL_API_KEY": "tc_live_..."
      }
    }
  }
}

Hit Copy. The API key in there is scoped to this single server and rotatable from the dashboard.

Step 3: Paste into Claude Desktop

Open Claude Desktop. Settings, Developer, Edit Config. The config file opens in your default editor. If you already have other MCP servers configured, merge the mcpServers block — don't replace the whole file.

Save and restart Claude Desktop. You'll see a small hammer icon in the chat composer. Claude has tools now.

If you don't see the hammer, check the Claude logs at ~/Library/Logs/Claude/mcp.log on macOS. The most common failure is a missing Node.js install. The npx command needs Node 18 or later.

Step 4: Try it

Type something natural: "How many users signed up this week?" or "Show me the five most active accounts by login count."

Claude calls the query_database tool under the hood, runs the SQL, and answers in plain language. The first query might feel slow because the server runs EXPLAIN ANALYZE first to catch unbounded scans. Anything that touches more than 100,000 rows gets blocked by default. You can disable that guard in the server settings, but we suggest leaving it on for production databases.

What just happened

Three pieces communicated. Claude Desktop ran the @toolcall/connect npm package as a subprocess, which is the client side of the connection. The subprocess opened an authenticated stream to our hosted server, which is the transport. The hosted server connected to your Postgres database, which is the target.

You skipped all the parts that usually take a weekend: TLS certificates, auth tokens, deployment, monitoring, error handling, schema introspection. Those are the parts we host so you don't have to.

Where to go next

Three useful directions from here.

Add a second server. GitHub, Linear, Stripe, or roll your own custom server using the SDK. Claude chains tools across servers automatically, so a query like "What's the status of the issue I created yesterday?" hits both Linear and Postgres in one turn.

Switch the transport to SSE if you're building a web client instead of a desktop one. Same auth, different endpoint. The config block changes one URL and nothing else.

Read the audit log. Every tool call your account makes lands in /logs with timing, args, and result size. Useful when a query feels slow or a tool returns something unexpected.

Common first-day issues

  • Hammer icon missing after restart. Node version is the usual cause. Run node --version in a terminal. If it's below 18, install a newer version via nvm or the official installer.
  • "Server not connected" in the tool list. Check that your API key is intact. Sometimes editors mangle the trailing characters during paste.
  • Queries time out. Default timeout is 30 seconds. Bump it in the server settings if you need longer-running analytical queries.

That's the loop. Five minutes to a working server, another five to a useful one.

// READY TO SHIP

START YOUR FIRST MCP SERVER
IN UNDER FIVE MINUTES

No credit card required. Hobby plan is free forever.

Create a free website with Framer, the website builder loved by startups, designers and agencies.