# How to build your first MCP server in 10 minutes

> Source: <https://dev.to/grahamduescn/how-to-build-your-first-mcp-server-in-10-minutes-2afp>
> Published: 2026-05-20 18:00:03+00:00

I built my first MCP server last week and it was way simpler than I expected. Here is exactly how, no fluff.

## Prerequisites

- Node.js 20+
- 10 minutes

## Step 1: Scaffold

```
npx create-mcp-server my-first-server
cd my-first-server
npm install
```

This generates a complete TypeScript project with one example tool.

## Step 2: Add your tool

Open `src/index.ts`

. Replace the hello tool with whatever you want:

``` js
server.setRequestHandler(CallToolRequestSchema, async (request) => {
  const { name, arguments: args } = request.params;

  if (name === 'current_time') {
    return {
      content: [{ type: 'text', text: new Date().toISOString() }]
    };
  }

  throw new Error(`Unknown tool: ${name}`);
});
```

## Step 3: Build and connect

```
npm run build
npm start
```

Add to Claude Desktop config and you are done.

The whole thing took me 8 minutes. Most of that was reading the docs.

## What I learned

- The MCP SDK handles all the transport layer — you just define tools
-
`StdioServerTransport`

means your server runs as a subprocess. No HTTP, no port conflicts - Error handling is important. If your tool crashes, the whole MCP connection breaks

## Want to try it?

```
npm install -g mcp-hub
mcp-hub search mcp
```

*Built with mcp-hub. If this helps, buy me a coffee.*
