How I built 4 MCP servers and a protocol to connect them

A developer built four MCP servers for Claude instead of using ready-made ones. Now the AI works with Telegram on its own, searches for images on Civitai, and manages ads. The developer had to devise a custom protocol to connect all these services.

AI-processed from Habr AI; edited by Hamidun News
How I built 4 MCP servers and a protocol to connect them
Source: Habr AI. Collage: Hamidun News.
Listen to article
Article Fact Sheet & Key Figures
ParameterDetails
Primary sourceHabr AI ↗
Editor-in-Chief
Key metric #1Telegram integration was missing the necessary scope
Key metric #2There was no way to search content from Civitai (a prompts platform)
Key metric #3Managing ads in Yandex.Direct required a separate solution

I wrote four MCP servers and a week later realized they couldn't see each other. I had to invent an entire protocol to connect them and build an automation pipeline.

What is MCP and why do you need it

MCP (Model Context Protocol) is a protocol through which AI assistants like Claude connect to external services and work with them directly. Essentially, it's the "hands" for neural networks. Previously, you had to write intermediate scripts, various wrappers, and integrations. Now it's enough to describe what your service can do, and Claude will call its methods on its own — no workarounds, no intermediaries.

Why existing MCP servers didn't work

There are ready-made MCP servers on the market: Slack, GitHub, Google Docs. But they weren't sufficient for my tasks.

  • Telegram integration was missing the necessary scope
  • There was no way to search content from Civitai (a prompts platform)
  • Managing ads in Yandex.Direct required a separate solution
  • There was no tool to connect all services into a single pipeline

It was simpler to write my own.

What I built

I ended up with four MCP servers that work together:

  • Telegram integration — reading posts, sending messages, managing channels
  • Civitai server — searching and downloading files with prompts
  • Yandex.Direct integration — managing campaigns and bids
  • Scheduler — planning tasks for the future and synchronizing

Together they form a pipeline: Claude reads the task, finds the best content through Civitai, optimizes the campaign in Direct, and publishes the result to three Telegram channels — all automatically.

"Classic programming: you start building one thing, wake up a week

later and realize you've written four servers and an entire architecture."

Custom protocol for interaction

Problem: four servers need to talk to each other. The Telegram server needs to notify the scheduler that a post was published. The scheduler needs to pass Civitai information about what content to search for. There were no ready-made standards for this kind of communication. I had to write my own protocol — a specification that defines how MCP servers see each other and exchange data. Now, when I add a new server, it automatically integrates into the ecosystem and starts interacting with the others.

What it means

MCP has stopped being just a way to connect Claude to Slack or GitHub. It's a full-fledged architecture for building distributed automation systems where AI coordinates the work of different services. For developers, this means the ability to build complex pipelines without a central hub — Claude itself becomes the orchestrator.

Story

Key Questions Answered

What is MCP and why do you need it?

MCP (Model Context Protocol) is a protocol through which AI assistants like Claude connect to external services and work with them directly. Essentially, it's the "hands" for neural networks. Previously, you had to write intermediate scripts, various wrappers, and integrations. Now it's enough to describe what your service can do, and Claude will call its methods on its own — no workarounds, no intermediaries.

Why existing MCP servers didn't work?

There are ready-made MCP servers on the market: Slack, GitHub, Google Docs. But they weren't sufficient for my tasks. Telegram integration was missing the necessary scope There was no way to search content from Civitai (a prompts platform) Managing ads in Yandex.Direct required a separate solution There was no tool to connect all services into a single pipeline It was simpler to write my own.

What I built?

I ended up with four MCP servers that work together: Telegram integration — reading posts, sending messages, managing channels Civitai server — searching and downloading files with prompts Yandex.Direct integration — managing campaigns and bids Scheduler — planning tasks for the future and synchronizing Together they form a pipeline: Claude reads the task, finds the best content through Civitai, optimizes the campaign in Direct, and publishes the result to three Telegram channels — all automatically. "Classic programming: you start building one thing, wake up a week later a

ZK
Zhemal Khamidun — CPO at Alpina Digital, product manager of AlpinaGPT. Building AI products since 2019. Hamidun News is a pet project that grew into a production aggregator with 6,000+ readers.
✦ Hands-On AI Engineering · Hamidun Academy

Build & Ship Production AI Agents Without Boilerplate Code

Start your free 72-hour trial at Hamidun Academy (academy.hamidun.com) — interactive lessons on Claude Code & Cursor, live Tech Radar, and production agent templates.

Start 72h Free Trial →Vibe-Coding Intensive
What do you think?
Loading comments…