DEV Community

Cover image for Trying MCP for the First Time — What Stood Out
AK DevCraft
AK DevCraft Subscriber

Posted on

Trying MCP for the First Time — What Stood Out

Introduction

I spent some time exploring the Model Context Protocol (MCP). Not a deep dive—just a hands-on attempt to understand how it actually works.

So I built a minimal client + server setup:
👉 https://github.com/an1meshk/claude-chat-cli

In a real-world project, we will build client and server separately; however, as this was just a demo project, everything was built in the same project

A few things stood out more than I expected.

Demo

demo

🧠 Context

The goal wasn’t to learn everything about MCP. It was to answer a simpler question:
How hard is it to actually build something with it?

Before moving further, here is a quick MCP client and server architecture diagram:
mcp architecture

⚙️ What I Tried

  • Went through the MCP intro course - link
  • Built a minimal client and server in Python using the course’s startup kit
  • Connected it to a simple CLI chat client that already came with the startup kit

Nothing complex—but enough to see how things fit together.

💡 What Stood Out

1. Setup Is Simpler Than Expected

I was expecting some heavy setup. But, instead:

  • Basic server setup was straightforward
  • The Python MCP library abstracts most of the complexity

👉 It felt closer to:
“Define a few handlers, and you’re up.”

than:

“learn a new framework.”

2. The Real Concept Is Context Flow

The interesting part wasn’t the server setup. It was understanding:

  • How context flows
  • How tools are exposed
  • How the model interacts with them

That’s where the mental shift is.

🧠 What Helped Me Understand It

This simple mental model made things click:

mcp sequence diagram

image credit Anthropic academy course

Client → MCP Server → Tool → Response → Client

  • Client sends a request
  • MCP server routes it
  • The tool executes logic
  • Exposing resources
  • Response flows back

Once this clicked, everything else made more sense

⚡ If You Want to Try It

The setup is intentionally minimal:

  • Basic MCP server using Python
  • A simple tool
  • CLI client to trigger it

That’s enough to understand the core idea

Repo:
https://github.com/an1meshk/claude-chat-cli

You will need an Anthropic API key, as this project uses Claude

⚙️ One More Thing That Helped

Project uses uv for dependency management. That helps in a few ways:

  • Fast installs
  • Clean environment setup
  • Minimal friction

It removes a lot of the usual setup overhead

⚠️ What I Haven’t Explored Yet

This was just a first pass. Still curious about:

  • Structuring tools cleanly
  • Scaling MCP servers
  • Real production use cases

🧠 Initial Take

My early impression:

  • MCP isn’t hard to start with
  • But the real value is in how you design interactions

The setup is easy.
The thinking is where the work is.

🏁 Final Thought

Sometimes the best way to understand a new concept is:
Build the simplest possible version of it

This was one of those cases.

If you have reached here, then I have made a satisfactory effort to keep you reading. Please be kind enough to leave any comments or share any corrections.

My Other Blogs:

Top comments (0)