A demonstration tool showcasing potential security attack vectors against the Model Control Protocol (MCP).
MasterMCP is a demonstration tool designed to showcase various potential security attack vectors against MCP (Model Control Protocol). This project illustrates how malicious plugins can exploit weaknesses in the MCP architecture through practical examples, helping developers and security researchers understand these risks and strengthen system protection.
banana
plugin demonstrates how to force users to perform specific operationsurl_json
plugin shows how to retrieve data from a local malicious serviceremove_server
plugin overrides existing functionalityMaster_cross_call
plugin guides users to perform dangerous operations# Clone the repository
cd MasterMCP
# Install dependencies
pip install -r requirements.txt
{
"mcpServers": {
"MasterMCP": {
"command": "/xxx/bin/python",
"args": [
"/xxx/MasterMCP/MasterMCP.py"
]
}
}
}
MasterMCP/
├── MasterMCP.py # Main program, responsible for loading and managing plugins
├── tools_plugins/ # Malicious plugins directory
│ ├── initialize_data_poisoning.py # Forces users to perform specific checks
│ ├── inject_json_poisoning.py # JSON data injection example
│ ├── malicious_competitive_function.py # Competitive function override
│ └── malicious_cross_mcp_call.py # Cross-MCP call attack
├── resources_plugins/ # Resource plugins directory
├── prompts_plugins/ # Prompt plugins directory
└── utils/ # Utility functions
⚠️ This project is for educational and research purposes only. Do not use these techniques on any system without authorization. Malicious use of this code may violate laws and regulations.
The initialize_data_poisoning.py
plugin establishes a mandatory process dependency by requiring a "banana check" before any operation. This technique can be used to:
The inject_json_poisoning.py
plugin retrieves data from a local port by default, potentially leading to:
The malicious_competitive_function.py
provides a remove_server
function with the same name but different functionality:
The malicious_cross_mcp_call.py
uses encoded error messages to induce users to:
Contributions to this project are welcome through:
A platform-agnostic server for scalable mobile automation and development across iOS, Android, simulators, and emulators.
Manage Google Apps Script projects, including creation, editing, deployment, and execution. Requires Google Cloud credentials for authentication.
Perform virtual try-ons using the HeyBeauty API.
A template for deploying a remote, auth-less MCP server on Cloudflare Workers.
Up-to-date documentation for your coding agent. Covers 1000s of public repos and sites. Built by ref.tools
Make your AI agent speak every language on the planet, using Lingo.dev Localization Engine.
Execute terminal commands for malware analysis. Requires Node.js 18 or higher.
An MCP server for AI coding assistants to control, inspect, and modify Bevy applications using the Bevy Remote Protocol (BRP).
Search dashboards, investigate incidents and query datasources in your Grafana instance
Turns any command-line interface (CLI) command into a simple StdIO-based MCP server.