<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Muhammet Emir Erkut</title>
    <description>The latest articles on DEV Community by Muhammet Emir Erkut (@muhammetemirerkut).</description>
    <link>https://dev.to/muhammetemirerkut</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4100176%2Fd3d868f9-38e6-4b56-8a24-2a1295a97d19.jpg</url>
      <title>DEV Community: Muhammet Emir Erkut</title>
      <link>https://dev.to/muhammetemirerkut</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/muhammetemirerkut"/>
    <language>en</language>
    <item>
      <title>Krypton MCP – Securing Local LLMs and MCP Tools with Zero-Trust Proxy in Go</title>
      <dc:creator>Muhammet Emir Erkut</dc:creator>
      <pubDate>Wed, 02 Sep 2026 07:41:04 +0000</pubDate>
      <link>https://dev.to/muhammetemirerkut/krypton-mcp-securing-local-llms-and-mcp-tools-with-zero-trust-proxy-in-go-e3</link>
      <guid>https://dev.to/muhammetemirerkut/krypton-mcp-securing-local-llms-and-mcp-tools-with-zero-trust-proxy-in-go-e3</guid>
      <description>&lt;p&gt;Connecting local or cloud LLMs directly to databases, filesystems, and internal APIs via Model Context Protocol (MCP) creates a massive attack surface. If a model gets tricked by prompt injection or leaks credentials in context, there's rarely a safety boundary in place to catch it.&lt;/p&gt;

&lt;p&gt;I spent the last few weeks building &lt;strong&gt;Krypton MCP&lt;/strong&gt;, a high-throughput security proxy written in Go that acts as an interceptor between LLM clients and MCP servers.&lt;/p&gt;

&lt;h1&gt;
  
  
  The Problem it Solves
&lt;/h1&gt;

&lt;p&gt;Most MCP setups trust the LLM implicitly. Once the model decides to call a tool, the payload goes straight to execution. Krypton sits in the middle as a zero-trust proxy to inspect, sanitize, and log everything in real time.&lt;/p&gt;

&lt;h1&gt;
  
  
  How Architecture Works:
&lt;/h1&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Prompt Injection Detection:&lt;/strong&gt; Intercepts tool calls and context windows before execution to catch malicious payloads.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;In-Flight Data Masking:&lt;/strong&gt; Tokenizes API keys, passwords, and sensitive values on the fly so they don't land in logs or model context.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Merkle Tree Audit Logs:&lt;/strong&gt; Every interaction is written to a cryptographically signed, tamper-proof audit log so you can mathematically prove what the model did.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Dynamic Credential Brokering:&lt;/strong&gt; Isolates upstream database and cache credentials (Postgres, Redis) instead of exposing raw connection strings to the agent layer.&lt;/li&gt;
&lt;/ul&gt;

&lt;h1&gt;
  
  
  Tech Stack &amp;amp; Performance
&lt;/h1&gt;

&lt;p&gt;Written in Go with minimal overhead to ensure sub-millisecond proxy latency on local tool-calling loops. Handles SSE transport, JSON-RPC framing, and process-level downstream proxying natively.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Codebase / GitHub:&lt;/strong&gt; &lt;a href="https://github.com/muhammetemirerkut/krypton-mcp" rel="noopener noreferrer"&gt;https://github.com/muhammetemirerkut/krypton-mcp&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Docs &amp;amp; Details:&lt;/strong&gt; &lt;a href="https://muhammetemirerkut.com/krypton/" rel="noopener noreferrer"&gt;https://muhammetemirerkut.com/krypton/&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Curious how others here are handling security boundaries when giving local agents execution access to local tooling. PRs, benchmark feedback, and security edge cases are all welcome.&lt;/p&gt;

&lt;p&gt;I decided to open-source this to get feedback on the security approach for local MCP setups and see what edge cases I might have missed. Would love to hear how others are handling agent safety.&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwlr8pys38wv9pudvkw9w.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fwlr8pys38wv9pudvkw9w.gif" alt=" " width="800" height="489"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>go</category>
      <category>llm</category>
      <category>mcp</category>
      <category>security</category>
    </item>
  </channel>
</rss>
