mcp
by pulseengine
Overview
A Rust framework for building Model Context Protocol (MCP) servers with pluggable backends, handling protocol compliance, transport, authentication, and monitoring.
Installation
cargo run --example hello-worldEnvironment Variables
- RUST_LOG
- MCP_AUTH_API_KEY_<KEY_ID>
- MCP_AUTH_STORAGE_ENV_PREFIX
- MCP_JWT_SECRET
- MCP_JWT_ISSUER
- MCP_JWT_AUDIENCE
- INFISICAL_ACCESS_TOKEN
- INFISICAL_PROJECT_ID
- INFISICAL_ENVIRONMENT
- INFISICAL_SITE_URL
- MCP_MASTER_KEY
Security Notes
The default `ServerConfig` (used if not explicitly overridden by the developer) has authentication disabled (`auth_config.enabled = false`). This means, by default, the server's public endpoints (RPC, Dashboard, Alerting, Metrics) are completely unprotected. This is a critical security vulnerability for any public-facing deployment. The Dashboard and Alerting endpoints expose sensitive operational data and allow state changes (e.g., acknowledging alerts) without authentication. While the framework provides robust security features (authentication, rate limiting, input sanitization, HTTPS enforcement in `pulseengine_mcp_security_middleware` and `pulseengine_mcp_auth`), they are opt-in and not enabled by default. Developers must explicitly configure and enable security measures, which poses a significant risk of accidental insecure deployment.
Similar Servers
tmcp
A server implementation for the Model Context Protocol (MCP) to enable LLMs to access external context and tools.
rust-mcp-sdk
A high-performance, asynchronous Rust SDK for building Model Context Protocol (MCP) servers and clients, supporting various transports and authentication methods.
rust-mcp-schema
Provides a type-safe Rust implementation of the Model Context Protocol (MCP) schema, enabling developers to build robust MCP servers and clients.
haskell-mcp-server
Provides a fully-featured Haskell library for building Model Context Protocol (MCP) servers to enable AI agent interaction.