explaingit

bhaveshthapar/mcp-audit

Analysis updated 2026-05-18

7PythonAudience · developerComplexity · 3/5Setup · moderate

TLDR

A sandboxed tool that watches what MCP servers actually do at runtime, tracking their real file access and network connections instead of trusting their descriptions.

Mindmap

mindmap
  root((mcp-audit))
    What it does
      Sandboxes MCP servers
      Traces file and network access
      Plants a fake credential canary
    Tech stack
      Python
      Docker
      strace
    Use cases
      Pre-install security checks
      Behavior manifests
      Version diffing for rug pulls
    Audience
      Security minded developers

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Check whether an MCP server you are about to install reads sensitive files or phones home.

USE CASE 2

Audit a batch of MCP servers and get a readable behavior manifest for each.

USE CASE 3

Catch a server that changes its runtime behavior after a later update.

USE CASE 4

Investigate a suspicious file read or network connection flagged during a server's startup.

What is it built with?

PythonDockerstrace

How does it compare?

bhaveshthapar/mcp-auditalx-code/lingbot-video-1.3b-fp8andrewbergman/kuma-importer
Stars777
LanguagePythonPythonPython
Setup difficultymoderatemoderate
Complexity3/52/5
Audiencedeveloperdeveloperops devops

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires Docker to run the sandboxed audits.

In plain English

mcp-audit is a tool for checking what MCP servers actually do when they run, rather than just trusting what they claim to do. MCP is a protocol that lets AI assistants connect to outside tools and services, and each connection is provided by a small server program. Most existing safety checks for these servers only look at the published source code, but this project watches the server's real behavior once it is running: every file it opens and every network connection it makes. The official registry only confirms who published a server, not what it does at runtime, and a server could change its behavior after you have already trusted an earlier version. This project aims to catch that gap. Each server is started inside a disposable Docker container and monitored with strace, a tool that records every system level action a program takes. A fake secret is planted in the environment as bait, so if a server tries to read or send it, that shows up in the log. The container is thrown away afterward, so nothing the server does affects the real computer running the audit. The project has already tested 70 real MCP servers. Most, 67 of them, showed no unusual file reads or network activity when starting up. Three made outbound connections to servers matching their stated purpose, and one server read a system file as part of a normal user account lookup, which was investigated and found harmless. None of the servers tested sent out the planted fake secret. Future plans include tracking behavior not just at startup but during actual tool calls, comparing a server's behavior across different versions to catch cases where a server changes after being trusted, and publishing ongoing behavior reports that other tools could check before installing a server. To run it yourself, you need Docker installed, then clone the repository and run the provided scripts, which install the tracing tool inside the container and process the results into a readable summary with a Python script. The project is written in Python and built by a single developer, who reports anything concerning to a server's maintainer privately before publishing findings.

Copy-paste prompts

Prompt 1
Help me run mcp-audit against a specific MCP server using Docker and strace.
Prompt 2
Explain how to read a syscall trace to tell normal file access from something suspicious.
Prompt 3
Show me how to use the canary credential to test if an MCP server exfiltrates secrets.
Prompt 4
Walk me through summarize.py to turn raw traces into a behavior manifest.

Frequently asked questions

What is mcp-audit?

A sandboxed tool that watches what MCP servers actually do at runtime, tracking their real file access and network connections instead of trusting their descriptions.

What language is mcp-audit written in?

Mainly Python. The stack also includes Python, Docker, strace.

How hard is mcp-audit to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is mcp-audit for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.