leonardo
by JoostVanAverbeke
Overview
This application serves as a Ruby on Rails-based Model Context Protocol (MCP) server for tracking patient results, orders, healthcare providers, and municipalities.
Installation
docker compose upEnvironment Variables
- DB_HOST
- DB_PORT
- DB_USERNAME
- DB_PASSWORD
- RAILS_ENV
- RAILS_DEVELOPMENT_HOSTS
- LEONARDO_DATABASE_PASSWORD
- RAILS_MASTER_KEY
- KAMAL_REGISTRY_PASSWORD
- RAILS_LOG_LEVEL
- SOLID_QUEUE_IN_PUMA
- JOB_CONCURRENCY
- WEB_CONCURRENCY
- PORT
- PIDFILE
- FAST_MCP_AUTH_TOKEN
Security Notes
CRITICAL VULNERABILITY: The Model Context Protocol (MCP) server is configured to be accessible from any host (`localhost_only: false`) and has authentication explicitly commented out (`authenticate: true` commented). This means the /mcp endpoint and its tools are publicly exposed to the network without any authentication, allowing anyone to query or potentially modify sensitive patient and healthcare provider data. Hardcoded database credentials (username 'postgres', password 'postgres') are used in development environment configuration files (`compose.yaml`, `config/database.yml`), which is a risk if these configurations are inadvertently used in production. Many request specs have `skip("Add a hash of attributes valid for your model")`, indicating incomplete controller testing that could lead to input validation or authorization vulnerabilities. No explicit user authentication/authorization for the web interface is visible.
Similar Servers
mcp
Build and expose AI-compatible servers for Laravel applications using the Model Context Protocol, enabling AI clients to interact with application logic.
action_mcp
Provides Model Context Protocol (MCP) server capabilities to Ruby on Rails applications, enabling AI assistants to interact with external data sources and tools via JSON-RPC over HTTP/SSE.
mcp_rails_template
A Ruby on Rails application template demonstrating the integration and usage of the ActionMCP gem, providing various AI components like prompts, resource templates, and tools for LLMs.
mcp-server-starter-ts
A TypeScript starter template for building Model Context Protocol (MCP) servers, enabling AI applications to connect to data sources and tools.