How ramani01/securemcp works
SecureMCP is a defensive MCP server framework: an agent submits a tool request, runtime security controls decide whether it may proceed, and the server runs a safe calculator or workspace reader. The README documents a fail-closed sequence from identity and session checks through policy, resource controls, approval, secret handling, and audit. Separate capabilities include adversarial evaluation and a read-only local dashboard. The security pipeline and dashboard observations follow README documentation; sampled excerpts do not show every integration call.
Main entry points: allowlist.py Tool Allowlist · service.py Dashboard Service · server.py MCP Server Tools · audit.py Audit Logger
Components 22
MCP Runtime
- MCP Server Tools
src/securemcp/server.py - Safe Calculator
src/securemcp/server.py - Workspace Reader
src/securemcp/security/filesystem.py
Security Controls
- Agent Identity
src/securemcp/security/identity.py - Session Binding
src/securemcp/security/session.py - Server Verification
src/securemcp/security/server_verification.py - Dependency Security
src/securemcp/security/dependencies.py - Authorization Engine
src/securemcp/security/authorization.py - Tool Allowlist
src/securemcp/security/allowlist.py - Input Validation
src/securemcp/security/validation.py - Filesystem Boundary
src/securemcp/security/filesystem.py - Rate Limiting
src/securemcp/security/rate_limit.py - Kill Switch
src/securemcp/security/kill_switch.py - Human Approval
src/securemcp/security/approval.py - Secret Broker
src/securemcp/security/secrets.py
Assurance & Audit
- Audit Logger
src/securemcp/security/audit.py - Audit Database
src/securemcp/storage/database.py - Adversarial Evaluator
src/securemcp/security/adversarial.py
Local Dashboard
- Dashboard Service
src/securemcp/dashboard/service.py - Local HTTP Dashboard
src/securemcp/dashboard/app.py - Dashboard Models
src/securemcp/dashboard/models.py
Other components
- AI Agent
Connections 27
- AI Agent → MCP Server Tools: submits tool request
- MCP Server Tools → Tool Allowlist: checks tool access
- Tool Allowlist → Agent Identity: resolves identity
- Tool Allowlist → Session Binding: validates session
- Tool Allowlist → Server Verification: verifies server
- Tool Allowlist → Dependency Security: checks dependencies
- Tool Allowlist → Authorization Engine: authorizes action
- Tool Allowlist → Input Validation: validates input
- Tool Allowlist → Filesystem Boundary: checks workspace path
- Tool Allowlist → Rate Limiting: limits requests
- Tool Allowlist → Kill Switch: checks execution state
- Tool Allowlist → Human Approval: requests approval
- Tool Allowlist → Secret Broker: brokers credentials
- Tool Allowlist → Audit Logger: records decisions
- MCP Server Tools → Safe Calculator: evaluates expression
- MCP Server Tools → Workspace Reader: reads workspace file
- Workspace Reader → Filesystem Boundary: enforces boundary
- Audit Logger → Audit Database: persists events
- Local HTTP Dashboard → Dashboard Service: requests snapshots
- Dashboard Service → Dashboard Models: builds status data
- Dashboard Service → Agent Identity: observes security state
- Dashboard Service → Session Binding: observes security state
- Dashboard Service → Server Verification: observes security state
- Dashboard Service → Dependency Security: observes security state
- Dashboard Service → Authorization Engine: observes security state
- Dashboard Service → Audit Logger: reads audit status
- Dashboard Service → Adversarial Evaluator: reads evaluation results