<?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: Lucas Bissi</title>
    <description>The latest articles on DEV Community by Lucas Bissi (@lucas_bissi_23).</description>
    <link>https://dev.to/lucas_bissi_23</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%2F4114602%2F41a5b7e1-b215-4b25-9451-0b684164a593.png</url>
      <title>DEV Community: Lucas Bissi</title>
      <link>https://dev.to/lucas_bissi_23</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/lucas_bissi_23"/>
    <language>en</language>
    <item>
      <title>Why Your AI Agent's Tools Deserve the Same Scrutiny as Your npm Dependencies</title>
      <dc:creator>Lucas Bissi</dc:creator>
      <pubDate>Mon, 07 Sep 2026 21:18:56 +0000</pubDate>
      <link>https://dev.to/lucas_bissi_23/why-your-ai-agents-tools-deserve-the-same-scrutiny-as-your-npm-dependencies-1m4i</link>
      <guid>https://dev.to/lucas_bissi_23/why-your-ai-agents-tools-deserve-the-same-scrutiny-as-your-npm-dependencies-1m4i</guid>
      <description>&lt;p&gt;In recent years, npm has completely changed the way we build software. Instead of building everything from scratch, we started installing libraries created by third parties and reusing ready-made solutions.&lt;/p&gt;

&lt;p&gt;This accelerated development, but it also brought a major security challenge: every package we install adds third-party code to our software supply chain. Cases of malicious packages, typosquatting, and compromised dependencies have shown that just because something is popular or useful doesn't mean it's safe.&lt;/p&gt;

&lt;p&gt;I believe we're starting to see something similar happen with the growth of MCP.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F37m10pwjuf5s7g5fc9eu.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2F37m10pwjuf5s7g5fc9eu.png" alt=" " width="800" height="361"&gt;&lt;/a&gt;What is MCP, and why does it matter?&lt;/p&gt;

&lt;p&gt;The Model Context Protocol emerged to standardize how AI models connect to tools, data, and external systems. Its adoption has grown rapidly, and along with it, an ever-expanding ecosystem of MCP Servers and Agent Skills ready to be plugged into agents.&lt;/p&gt;

&lt;p&gt;And this is where my concern comes in: we're starting to connect third-party tools to agents capable of accessing data, executing commands, and interacting with real systems.&lt;/p&gt;

&lt;h2&gt;
  
  
  Introducing mcpscan
&lt;/h2&gt;

&lt;p&gt;With that in mind, I built &lt;strong&gt;mcpscan&lt;/strong&gt;, a security scanner for MCP Servers and Agent Skills.&lt;/p&gt;

&lt;p&gt;The project analyzes risks such as:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tool poisoning&lt;/li&gt;
&lt;li&gt;Hidden instructions using invisible Unicode characters&lt;/li&gt;
&lt;li&gt;Command injection&lt;/li&gt;
&lt;li&gt;Exposed credentials&lt;/li&gt;
&lt;li&gt;Insecure schemas&lt;/li&gt;
&lt;li&gt;Remote code execution&lt;/li&gt;
&lt;li&gt;Potential exfiltration behaviors&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Detecting an attack ≠ writing a good rule
&lt;/h2&gt;

&lt;p&gt;One of the most interesting parts of building this was realizing that creating a rule capable of detecting an attack doesn't necessarily mean creating a &lt;em&gt;good&lt;/em&gt; rule. During calibration, some detections that seemed effective had to be modified or discarded because they generated false positives on legitimate code.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where the project stands today
&lt;/h2&gt;

&lt;p&gt;Currently, mcpscan has:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;16&lt;/strong&gt; security rules&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;1,100+&lt;/strong&gt; tests&lt;/li&gt;
&lt;li&gt;CI/CD integration and GitHub Actions support&lt;/li&gt;
&lt;li&gt;JSON and SARIF output support&lt;/li&gt;
&lt;li&gt;Runtime analysis of MCP Servers, inspecting the tools they actually expose&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The core idea
&lt;/h2&gt;

&lt;p&gt;mcpscan is still evolving, but the idea behind it is simple:&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;If we've learned that we can't install just any npm package without thinking about dependency chain security, maybe it's time to start asking the same question before connecting any tool to an AI agent.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Do we really know what it's doing?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Check it out on GitHub: &lt;a href="https://github.com/Luked20/mcpscan" rel="noopener noreferrer"&gt;github.com/Luked20/mcpscan&lt;/a&gt;&lt;/p&gt;




&lt;h1&gt;
  
  
  CyberSecurity #AI #MCP #ModelContextProtocol #AgenticAI #AppSec #DevSecOps #SupplyChainSecurity #OpenSource
&lt;/h1&gt;

</description>
      <category>agents</category>
      <category>ai</category>
      <category>mcp</category>
      <category>security</category>
    </item>
  </channel>
</rss>
