What is MCP, and why should you care?
MCP stands for Model Context Protocol. It's an open protocol from Anthropic that lets AI applications talk to external systems — files, databases, APIs, spreadsheets, calendars, pretty much anything.
Think of it as a USB-C port for AI:
- Before USB-C, every device needed its own charger and its own cable.
- With USB-C, one standard connects everything.
- MCP does the same for AI: instead of every model having to learn a brand-new way of talking to your systems, everyone uses the same protocol.
That means you can build a single piece of software — an MCP server — and make it available to Claude, ChatGPT, Cursor, VS Code, or any other MCP-compatible client.
What can an MCP server do?
An MCP server can expose three types of capabilities to an AI:
| Type | Description | Example |
|---|---|---|
| Tools | Functions the AI can call to perform actions | "Send an email," "update a database," "book a meeting room" |
| Resources | Data the AI can read and reference | "Customer list from the CRM," "documentation from the wiki," "sales figures from a spreadsheet" |
| Prompts | Templates for specific workflows | "Write a quote based on this customer's history" |
When an AI model faces a task, it can decide for itself which tools to call and which resources to read. That's what turns an LLM from a passive chatbot into an action-oriented agent.
Why is MCP smart?
1. Stop building the same integration over and over
Without MCP, you have to build a custom integration for every AI model or platform. With MCP, you write the logic once and use it everywhere.
2. Secure and controlled
The AI calls your server, but you decide what it's allowed to do:
- Which functions are available?
- Which data may it read?
- Does it need to authenticate?
The server acts as a secure gatekeeper between the AI model and your systems.
3. Open ecosystem
MCP isn't tied to a single company. It's supported by Claude, ChatGPT, Cursor, VS Code, MCPJam and many others. You build once — integrate everywhere.
4. Makes AI useful in the real world
This is where the magic happens. An AI without MCP can answer questions. An AI with MCP can act:
- Pull your latest sales figures from the spreadsheet
- Book a meeting in the calendar
- Draft an email and send it
- Look up a customer in the CRM and suggest next steps
How does MCP work?
MCP is built on a simple client-server model:
flowchart LR
A[AI client e.g. Claude or Cursor] -->|MCP over stdio or HTTP/SSE| B(MCP server)
B --> C[Your database]
B --> D[Your API]
B --> E[Your files]
- The AI client receives a task from the user.
- It looks at which MCP servers are connected and what they offer.
- If the task requires it, the AI calls a tool or reads a resource on the MCP server.
- The MCP server performs the action and returns the result.
- The AI uses the result to respond to the user or continue the work.
Transport: how do they talk to each other?
MCP can run over several transport layers:
| Transport | When do you use it? |
|---|---|
| stdio | Local tools on your own machine. Easy to get started with. |
| HTTP + SSE | Remote servers, where multiple clients need to connect. |
| Streamable HTTP | Newer transport that makes remote MCP more flexible. |
For production and hosting, the HTTP transports are the most interesting, because they let you run the MCP server in one place and have many clients connect to it.
How to build your own MCP server
Official SDKs exist for both Python and TypeScript. Here we show a simple example in Python with FastMCP, the most popular framework for the purpose.
Step 1: Install FastMCP
pip install fastmcp
Step 2: Write your server
from fastmcp import FastMCP
mcp = FastMCP("My cool tool")
@mcp.tool()
def get_customer(cvr: int) -> str:
"""Look up a company name from its CVR number."""
# Here you could call the CVR API, your database, etc.
return f"The company with CVR {cvr} is called Example Inc."
@mcp.tool()
def calculate_vat(amount: float) -> float:
"""Calculate Danish VAT (25%) on an amount."""
return amount * 0.25
if __name__ == "__main__":
mcp.run()
That's it. Two Python decorator lines, and your functions are now MCP tools.
Step 3: Run the server
python server.py
You can now configure Claude Desktop, Cursor, or another MCP client to use your server.
Step 4: Make it available online (optional)
If you want colleagues, clients, or a cloud AI agent to be able to use your server, it needs to be hosted. Here's an example with an HTTP/SSE server:
from fastmcp import FastMCP
mcp = FastMCP("My remote tool")
@mcp.tool()
def get_customer(cvr: int) -> str:
"""Look up a company name from its CVR number."""
return f"The company with CVR {cvr} is called Example Inc."
if __name__ == "__main__":
mcp.run(transport="sse", port=8000)
Now a client can connect to http://your-server:8000/sse.
Good advice when building
- Start small: One server, one tool. Expand gradually.
- Document your tools: The descriptions in your code are used by the AI to pick the right tool.
- Validate input: MCP handles schemas, but you still need to check business logic.
- Think about security: Who's allowed to call what? Do you need API keys, OAuth, or IP restrictions?
- Keep state out of the server: MCP servers should be stateless, so they're easy to scale.
Host your MCP server at Liviate
Once your MCP server is ready, it needs to run somewhere — ideally somewhere that is:
- Available whenever you need it
- Secure and up to date
- Easy to scale if more clients need to connect
That's where Liviate Cloud comes in.
With Liviate Cloud you can:
- Deploy a virtual machine for your MCP server in a matter of minutes
- Choose between isolated networks or public access, depending on who needs to reach the server
- Open exactly the ports you need — e.g.
8000for MCP-over-HTTP - Run your server in a Danish/European environment with a focus on data security
We're also happy to help get your MCP server up and running — from setting up the Python environment and reverse proxy to security, monitoring and scaling.
Want help? Write to us at https://liviate.com, and we'll take a look at your MCP server and find the right hosting solution.
Want to go deeper?
Here are the best places to read further:
Conclusion
MCP is one of the most important building blocks in the AI ecosystem right now. It makes it easy, secure and reusable to connect artificial intelligence to real-world systems.
You don't need to be an AI guru to build your first MCP server. With a framework like FastMCP, you can go from idea to working server in under an hour. And when it's ready to go live in production, you can host it with Liviate — so you can focus on the logic while we take care of operations.
Ready to build your first MCP server? Contact us, and we'll help you get started.