Super-I-Tech/mcp_plexus
If you are the rightful owner of mcp_plexus and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
MCP Plexus is a secure, multi-tenant MCP server framework designed for modern AI applications, built on the FastMCP 2.7 library.
MCP Plexus is a Python framework that extends the capabilities of FastMCP 2.7 to create secure, scalable, and multi-tenant Model Context Protocol (MCP) applications. It provides a structured environment for deploying sophisticated AI backend systems, allowing developers to define isolated environments (tenants) that can expose customized tools, resources, and prompts to Large Language Models (LLMs) and AI agents. MCP Plexus simplifies the integration of external services via OAuth 2.1, manages API key access, and enhances user experience by enabling persistent user authentication. It is designed with a focus on security, developer experience, scalability, and extensibility, making it an ideal choice for building complex AI applications that require secure and efficient context management.
Features
- Robust Multi-Tenancy: Host multiple clients or organizations on a single deployment, each with their own data and tool access.
- Simplified External Service Integration: Securely connect MCP tools to external OAuth 2.1 protected services with built-in flow management.
- User-Specific Persistent Access: Enable host applications to register their users with Plexus, allowing for persistent storage of external OAuth tokens.
- API Key Management for Tools: Securely store and inject API keys for tools that require direct key-based authentication to external services.
- Standardized and Extensible: Leverages FastMCP's Pythonic decorators for defining MCP components, while providing a clear structure for extension.
Usages
usage with local development
python from mcp_plexus import MCPPlexusServer # Initialize the MCP Plexus server server = MCPPlexusServer() # Run the server using FastMCP's Streamable HTTP transport server.run(transport='streamable-http', host='127.0.0.1', port=8000)
usage with docker
bash docker run -d \ -e HOST_APP_REGISTRATION_SECRET=your_secret \ -e PLEXUS_ENCRYPTION_KEY=your_fernet_key \ -e STORAGE_BACKEND=sqlite \ -e SQLITE_DB_PATH=/data/mcp_plexus_data.sqlite3 \ -v $(pwd)/data:/data \ -p 8000:8000 \ super-i-tech/mcp-plexus
usage with redis
bash # Start Redis server (required for session management) redis-server --port 6379