Tools & Infrastructure

Building Your First MCP Server in Under an Hour

Learn what MCP servers are, why they matter, and how to build your first one from scratch using simple, beginner-friendly steps.

Scroll to start

What Is an MCP Server?

Imagine an AI that can only talk — but never act. That's a normal AI chatbot. An MCP server changes that. It's a small program that gives your AI hands.

MCP stands for Model Context Protocol. Think of it like a universal plug that lets AI connect to external tools, databases, files, and APIs. Just like a USB port lets your computer talk to a printer or hard drive, an MCP server lets an AI talk to the outside world.

The best part? You don't need to be a coding expert to build one. If you can write a basic function in JavaScript or Python, you can build an MCP server. The protocol handles all the tricky communication so you can focus on what your tool actually does.

Why Should You Care?

Right now, most AI tools are locked inside a box. They can answer questions, but they can't check your email, update a spreadsheet, or pull data from your own website. An MCP server breaks that wall open.

For solo builders and small teams, this is huge. Instead of paying for expensive integrations, you can build your own MCP server to connect AI to the tools you already use. Want AI to read your database and summarize your sales? Build an MCP server for it. Want AI to post updates to your site automatically? MCP server.

Key Insight

MCP servers turn AI from a smart chat buddy into a real team member — one that can actually do tasks, not just talk about them.

Companies like Slack, GitHub, and Notion are already building MCP connections. If you learn how to build with MCP now, you'll be ahead of the curve when it becomes the standard way AI connects to software.

Building an MCP Server in 4 Steps

Here's the simple flow for how an MCP server works — and how to build one yourself.

The MCP Request Flow
🤖
AI Receives
User asks AI to do something
🔌
MCP Protocol
AI calls MCP server via JSON
⚙️
Server Runs
MCP server executes your code
Result Back
Data returned to the AI
Repeat

Step 1 — Define your tool. Decide what you want your AI to be able to do. Read a file? Send an email? Search a database? Write it down in plain language.

Step 2 — Write the tool function. Using Node.js or Python, write a simple function that performs that action. Give it a clear name and a description that explains what it does.

Step 3 — Register it with the MCP SDK. The MCP SDK is a small library that handles all the communication. You register your tool with a decorator or a simple call, and the SDK takes care of the rest.

Step 4 — Connect and test. Point your AI client (like Claude Desktop or any MCP-compatible app) to your server and test it out. If the AI can call your function and get results back, you're done!

A Working MCP Server in Python

Let's build a real MCP server that lets AI read files from your computer. This uses the FastMCP library — one of the easiest ways to get started.

server.py
# Install with: pip install mcp
# Run with: python server.py

from mcp import FastMCP

# Create the MCP server instance
mcp = FastMCP("File Reader Server")

# Step 2: Define a tool the AI can call
@mcp.tool()
def read_file(filepath: str) -> str:
    """Reads a file and returns its contents as text."""
    try:
        with open(filepath, "r") as f:
            return f.read()
    except FileNotFoundError:
        return "Error: File not found."
    except PermissionError:
        return "Error: Permission denied."

# Step 3: Run the server
mcp.run()
# AI can now call read_file("notes.txt") and get the contents!

That's it. Under 20 lines of code. Once this server is running, any MCP-compatible AI can ask it to read files. You can add more tools the same way — just add more @mcp.tool() functions. Want a tool that searches the web? Add a function. Want one that posts to Slack? Add a function. Each one becomes a new ability your AI can tap into.

Knowledge Check

Test what you learned with this quick quiz.

Quick Quiz

Question 01
What does MCP stand for?
Question 02
What is the main thing an MCP server adds to an AI?
Question 03
In the code example, what does the @mcp.tool() decorator do?
🏆

You crushed it!

Perfect score on this module.