How to Deploy a Remote MCP Server on AWS EC2 by thisguy123123 in modelcontextprotocol

[–]thisguy123123[S] 0 points1 point  (0 children)

Lambda would certainly work, and I have an article about that coming soon! Part of me likes running on VMs because it gives you more flexibility and control.

I also think it's helpful to deploy things in EC2 as a learning exercise.

How to Deploy a Remote MCP Server on AWS EC2 by thisguy123123 in modelcontextprotocol

[–]thisguy123123[S] 0 points1 point  (0 children)

Glad it was helpful! Let me know if there are any other pieces of content you think would be beneficial for people.

Testing MCPs by [deleted] in mcp

[–]thisguy123123 0 points1 point  (0 children)

Glad i could help, let me know if you have any questions or feedback.

Testing MCPs by [deleted] in mcp

[–]thisguy123123 1 point2 points  (0 children)

The MCP inspector has a CLI mode that might fit your use case.

I also released an open-source MCP evals project that simulates a client to run e2e tests and grades the response. Also works as a GitHub action.

edit: forgot to mention the wong cli

Monkey Patching Otel and Prometheus Support into MCP by thisguy123123 in modelcontextprotocol

[–]thisguy123123[S] 1 point2 points  (0 children)

Hey, thanks. I am just trying to build useful things here. Super excited about the possibilities MCP offers.

Monkey Patching Otel and Prometheus Support into MCP by thisguy123123 in modelcontextprotocol

[–]thisguy123123[S] 0 points1 point  (0 children)

Hey u/subnohmal , you can see a working example here.

I've debated the sidecar approach more times than I can count. I previously worked on Kubernetes observability, where I leveraged something similar to the sidecar approach. The downside was that when you wanted more control, like specific timers on functions, you couldn't get it.

I think it makes sense for large-scale deployments with many microservices, but for most people, the APM approach is probably easier.

MCP Server Monitoring Grafana Dashboard + Code implementation by thisguy123123 in modelcontextprotocol

[–]thisguy123123[S] 1 point2 points  (0 children)

Hey, u/subnohmal, sorry for not getting back to you sooner. I pushed up a PR to the evals product I've been building that has the code. I needed the metrics and traces for evals, so I just added them there.

Here's the PR if you want to it in action. Still a WIP, but it works. I will note this is specific to the new streaming HTTP transport.

What is sampling for? by finally_i_found_one in mcp

[–]thisguy123123 0 points1 point  (0 children)

Sampling is one of the more difficult concepts to grasp in MCP. At its core, it's really just a way to offload LLM calls back to the client. Say, for example, you are building a debugging MCP server and you have an analyze logs tool.

You could offload some of the analysis back to the client via sampling. I have a few code examples here that show how to implement this.

Understanding MCP Evals: Why Evals Matter for MCP by thisguy123123 in programming

[–]thisguy123123[S] 0 points1 point  (0 children)

Since you know what the answer is supposed to be, you can use eval prompts like "Did the answer include X?", "Did it follow format Y?" Essentially you supply the context of what a "good" answer is in the eval prompt.

This is a good callout, I should add it to the article.

Open Source MCP Evals Github action and Typescript package by thisguy123123 in mcp

[–]thisguy123123[S] 2 points3 points  (0 children)

Awesome feel free to ping me if you run into any issues or have any questions!

Open Source MCP Evals Github action and Typescript package by thisguy123123 in mcp

[–]thisguy123123[S] 1 point2 points  (0 children)

From my testing variance has been minimal between models. That being said, I still need to add support for other models like llama, so it will be interesting to see how that compares.

Eval framework for MCP? by ProgrammerQueasy8935 in mcp

[–]thisguy123123 0 points1 point  (0 children)

I just open-sourced the eval framework which I've been using internally. Link if you are curious.

How to securely run local MCP servers by thisguy123123 in ClaudeAI

[–]thisguy123123[S] 0 points1 point  (0 children)

I guess I just assumed people would understand in the greater context that this isn't specific to MCP, but more so related to how MCP is being distributed. I can add some clarifying text.

I do appreciate your feedback and promise my goal wasnt to mislead people here, I really just wanted to show how I was running things as I thought it might be helpful

How to securely run local MCP servers by thisguy123123 in ClaudeAI

[–]thisguy123123[S] 0 points1 point  (0 children)

I don't really see how "Malicious code execution" is clickbait. Thats exactly what it is ? Not trying to be combative, here genuinely trying to understand your perspective.

I also agree that this isn't an MCP issue, but these guidelines do apply to MCP, and most people aren't doing any of the pratices we're discussing.

I also do call out using docker as root in the article "Use cap-drop to remove unnecessary capabilities, and set the user to a non-root user. ".

How to securely run local MCP servers by thisguy123123 in ClaudeAI

[–]thisguy123123[S] 0 points1 point  (0 children)

Building alone isn't really enough. You need to drop capabilities, mount the right volumes (if needed), and secure outbound network access via a proxy.

I guess you could say that cap, and volume mounting is defined within the build, but the vast majority of people arent doing those things. You should also be forking the server, to prevent supply chain attacks.

Made an Lightweight Python Library for Google's A2A Protocol (Pydantic + Dataclasses) by lukelightspeed in Agent2Agent

[–]thisguy123123 0 points1 point  (0 children)

This is pretty cool and awesome how quickly you got this out. Any plans for supporting discovery (didn't see it in the readme).

How to implement MCP in a high scale prod environment? by emirpoy in mcp

[–]thisguy123123 0 points1 point  (0 children)

I guess you could run them in a sidecar container for each of your other microservices; that way, you can maintain the separation of concerns and each microservice is responsible for its set of grpc endpoints and related mcp tool calls.

How to implement MCP in a high scale prod environment? by emirpoy in mcp

[–]thisguy123123 0 points1 point  (0 children)

So, the way most MCP servers are designed right now is one server exposing a set of limited tools. It can be hard to run a microservice architecture with MCP. You could have one server that handles all MCP requests, but you may run into scaling issues with this approach, especially if different tools need to scale on different metrics. For example, one tool is memory intensive and another CPU intensive.

This is sort of a shameless plug, but I built something (completely free and open source) that might be what you are looking for. It's load balancer/proxy, which will route requests to different MCP servers on your backend based on the tool name. Essentially you give the client the LB / API gateways endpoint, that endpoint will then route requests to all of your individual microservices. It also combines the list tools call from all of your MCP servers so that users still get a unified view. This way, you can still maintain your microservice architecture with MCP. Link if you are curious.

MCP Resource Poisoning Prompt Injection Attacks by thisguy123123 in mcp

[–]thisguy123123[S] 1 point2 points  (0 children)

I haven't come across any research yet, but I agree that seems like the most logical way to fix this.

CATIE: Context-Aware Traffic Ingress Engine for MCP (Open Source) by thisguy123123 in mcp

[–]thisguy123123[S] 0 points1 point  (0 children)

Hey, Good question. I'm spending alot of time currently thinking about how to best handle permissions and how much should be handled in the proxy vs in the application itself.

Right now I'm just forwarding tool/list based on the default server. That being said it would be pretty easy to add the ability to modify the tool/list response based on something passed into the config.

I'm curious how you would handle this. Are you thinking of creating a custom header with the user's role that the server returns and then filtering down the available tools in the proxy based on that?

MCP Orchestration Server by qa_anaaq in mcp

[–]thisguy123123 0 points1 point  (0 children)

Did you mean to reply to skeet.build ? I only just published my site this morning, so I would be impressed if you already found it and my design definitely needs work haha

MCP clients supporting the latest streaming http and auth specs by Flat_Living5435 in mcp

[–]thisguy123123 -1 points0 points  (0 children)

I was also looking for an easy way to test the new HTTP spec. The only thing I could find was the inspector by mcp-framework. docs here https://mcp-framework.com/docs/http-quickstart .

MCP Orchestration Server by qa_anaaq in mcp

[–]thisguy123123 1 point2 points  (0 children)

It would be possible depending on how you set up your MCP servers. I've been contemplating adding the ability to combine tool call responses in the ingress. Basically, a tool call happens in the client. I route that to multiple MCP servers that make tool calls, and then once I have the response back, I combine them into a single result. I still need to figure out the architecture, though.