DEV Community

Cover image for MMMCP - An MCP Server for Multi-Model Prompts
hiruthicSha
hiruthicSha

Posted on • Originally published at Medium

MMMCP - An MCP Server for Multi-Model Prompts

As a software engineer deeply engaged with large language models (LLMs) like ChatGPT, Claude, and Gemini, I often cross-reference their responses to gain diverse perspectives. This practice sparked a question: Can I streamline this process?

I also started seeing a wave of posts claiming how easy it is to build an MCP server. That was enough motivation, even if it didn't work out, I knew I'd learn about building an MCP and gain hands-on experience in the process.

This project was born out of one of my regular weekend hackathons, something I've written about in Code, Coffee, and a Weekend: My Personal Hackathon Ritual. If you've ever felt that itch to just build something for the joy of it, you'll relate.

What is MCP?

I'm sure, at this point you would have bombarded by the new buzz word "MCP Server". So Ill keep it brief.

Problem

Integrating LLMs with external systems is a mess. Every use case required custom scripts, tool-specific APIs, and brittle logic hardcoded into the prompt or application. This is a headache even in small-scale use cases due to:

  1. Tight coupling: Tools and models were glued together in non-standard ways.
  2. Lack of reusability: Every integration had to be rebuilt from scratch.
  3. Security concerns: Exposing sensitive systems via direct API calls was risky.
  4. One-way interactions: Models could only respond, not act or observe.

Solution

Model Context Protocol (MCP) is Anthropic's attempt to fix this mess.
MCP is a standard protocol that allows models to interact with external tools in a structured, secure, and two-way fashion. Here's what it improves:

  1. Two-way communication: Models can request data and act on responses.
  2. Modular design: Tools are plug-and-play, and models can discover and invoke them dynamically.
  3. Security-first: Tool usage is transparent, scoped, and auditable.
  4. Context awareness: Tools can expose metadata, usage instructions, and schemas that the model can understand natively.

This makes LLM integrations predictable, scalable, and safer. Here is a general statement you'll see for an MCP:

Think of MCP as the "USB-C" for AI applications, providing a standardized way to connect AI models to various services and datasets.

Here is a shameless plug: https://www.instagram.com/p/DIpoV9OzayA Please follow!😌

Building MMMCP

I'd been hearing about MCP for a while but didn't pay it much attention at first. However, since I'm someone who loves automating anything that seems possible, I knew I had to give it a shot. If you've been following my other articles, you already know I'm a bit of an automation freak…

Problem

The problem I faced was that I've been using LLMs since before ChatGPT went mainstream, and I often cross-check answers from multiple models to reduce bias and gain richer insights. For example, Claude tends to make fewer coding errors, Gemini (sometimes in the AI Studio) is more expressive, and ChatGPT excels at handling complex context. Comparing their responses helps me think more critically and make better decisions.

What I Built

Motivated by the need for a more efficient comparison between LLMs, I developed MMMCP (Multi-Model MCP Server). This MCP server:

  1. Accepts any prompt.
  2. Fetches responses from OpenAI's GPT-3.5 and Google's Gemini Pro asynchronously.
  3. Returns both responses for quick comparison.
  4. Optionally summarizes the outputs for a consolidated view.

The MMMCP server is built using Python(for now) and sends the prompt to multiple LLMs through API calls.

Future Enhancements

  • Update the code architecture to provide a better experience in adding new models.
  • Integrate additional LLMs for broader comparisons.
  • Enhance summarization capabilities to be able to configure by the user for more personalized outputs.
  • Building the project in Python introduced one challenge: deploying it to Cloudflare. While Cloudflare offers beta support for Python, I'm hesitant to rely on it just yet. So, I'm planning to migrate the project to JavaScript for better compatibility.

Here is the project: https://github.com/hiruthicShaSS/MMMCP. I built it over a weekend, so it's not perfect, it needs refactoring and better decoupling to make adding new models easier. I'll update it when I have time, but I welcome any feedback or suggestions. Feel free to open a PR if you'd like to contribute! 🙂


BTW, if you want to learn more about MCP, Hugging Face has an extraordinary course on this topic: https://huggingface.co/learn/mcp-course/unit0/introduction

Stay Curious. Adios 👋
Cover image generated with ChatGPT

Top comments (6)

Collapse
 
nathan_tarbert profile image
Nathan Tarbert

nice work honestly, feels good seeing you build something cause you wanted to scratch your own itch - you think chasing that curiosity is what actually keeps folks improving for years, or does it all come down to routine?

Collapse
 
hiruthicsha profile image
hiruthicSha

Really appreciate you taking the time to share that...
In my experience, curiosity and routine go hand in hand. Early on, I would only build or learn when I felt like it, many ideas stayed unfinished. Curiosity sparks growth, but routine ensures follow-through. It’s a bit like reinforcement learning: as adults, we don't always have external guidance, so routines become our way to stay on track and keep that curiosity alive.

Collapse
 
dotallio profile image
Dotallio

This is awesome, I love the focus on reducing bias with side-by-side LLM outputs. Was there a specific reason you started with Python for MMMCP instead of JS up front?

Collapse
 
hiruthicsha profile image
hiruthicSha • Edited

Thanks for reading...
While searching for resources to learn how to build a tool, I came across a tutorial by Tech With Tim on YouTube, to whom I often turn to when learning something new. The tutorial was in Python. At first, I assumed it was just a server exposing tools and resources, so the language wouldn't matter much. However, I overlooked the deployment side of things. It's not that deploying Python code is impossible, but the JavaScript ecosystem seems to offer more out-of-the-box support for such setups (at-leat to my knowledge so far).

Collapse
 
harini_sha profile image
Harini S

Insightful

Collapse
 
hiruthicsha profile image
hiruthicSha

Thank you. Glad you found it helpful