PA

puliczek/awesome-mcp-security

开发工具
721 stars 0 forks 质量 93 趋势 93

🔥🔒 Awesome MCP (Model Context Protocol) Security 🖥️

概览

🤝 Show your support - give a ⭐️ if you liked the content Everything you need to know about Model Context Protocol (MCP) security. 15.04.2025: The current MCP auth specification is in progress of being replaced by a more robust specification. Please join the conversation if you have concerns around the current auth specification. - Servers : - Validate all tool inputs - Implement proper access controls - Rate limit tool invocations - Sanitize tool outputs - Clients : - Prompt for user confirmation on sensitive operations - Show tool inputs to the user before calling the server, to avoid malicious or accidental data exfiltration - Validate tool results before passing to LLM - Implement timeouts for tool calls - Log tool usage for audit purposes For trust & safety and security, clients consider tool annotations to be untrusted unless they come from trusted servers. For trust & safety and security, there always be a human in the loop* with the ability to deny tool invocations.

README


Awesome MCP Security

Everything you need to know about Model Context Protocol (MCP) security.

Table of Contents

📔 Security Considerations

Official Security Considerations from the Official MCP Specification Rev: 2025-03-26

[!NOTE] 15.04.2025: The current MCP auth specification is in progress of being replaced by a more robust specification. Please join the conversation if you have concerns around the current auth specification.

  • Servers MUST:

    • Validate all tool inputs
    • Implement proper access controls
    • Rate limit tool invocations
    • Sanitize tool outputs
  • Clients SHOULD:

    • Prompt for user confirmation on sensitive operations
    • Show tool inputs to the user before calling the server, to avoid malicious or accidental data exfiltration
    • Validate tool results before passing to LLM
    • Implement timeouts for tool calls
    • Log tool usage for audit purposes

[!WARNING]
For trust & safety and security, clients MUST consider tool annotations to be untrusted unless they come from trusted servers.

[!WARNING]
For trust & safety and security, there SHOULD always be a human in the loop* with the ability to deny tool invocations.

Applications SHOULD:

  • Provide UI that makes clear which tools are being exposed to the AI model.
  • Insert clear visual indicators when tools are invoked.
  • Present confirmation prompts to the user for operations, to ensure a human is in the loop.

[!NOTE]
*Human-in-the-Loop (HITL) means that user help monitor and guide automated tasks, like deciding whether to accept tool requests in Cursor.

📃 Papers

📺 Videos

📕 Articles, X threads and Blog Posts

🧑‍🚀 Tools and code

💾 MCP Security Servers

💻 Other Useful Resources

😎 Contributing

👍🎉 First off, thanks for taking the time to contribute! 🎉👍

Please read and follow our contributing guide

Thanks! 🦄

🤝 Show your support

✔️ Disclaimer

This project can only be used for educational purposes. Using this resource against target systems without prior permission is illegal, and any damages from misuse of this software will not be the responsibility of the author.

View this README on GitHub

安装

This server does not publish a one-line install command.

Open the repository installation guide