EMS
- python
0
GitHub Stars
python
Language
4 months ago
First Indexed
2 months ago
Catalog Refreshed
Documentation & install
Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.
Installation
Add the following to your MCP client configuration file.
Configuration
View docs{
"mcpServers": {
"mattsq-ems-mcp": {
"command": "C:\\absolute\\path\\to\\ems-mcp\\.venv\\Scripts\\ems-mcp.exe",
"args": [],
"env": {
"EMS_BASE_URL": "https://your-ems-server.com",
"EMS_PASSWORD": "your-password",
"EMS_USERNAME": "your-username"
}
}
}
}You can run this MCP server to access the EMS API through a language model, enabling you to analyze flight data with conversational or programmatic queries. It acts as a bridge between your MCP clients and the EMS data, making it easier to retrieve, filter, and analyze flight information via LLM-powered workflows.
How to use
To use the EMS MCP Server, you run the provided local server executable and connect your MCP client to it. You supply the EMS server URL, your EMS username, and your EMS password. From your MCP client, you can discover EMS systems, query flight records, retrieve time-series analytics for specific flights, and explore aircraft, airports, and metadata through a set of defined tools.
How to install
Prerequisites require Python 3.11 or newer and the uv package manager.
# Install the EMS MCP Server locally
git clone <repo-url>
cd ems-mcp
# Create a virtual environment using uv
uv venv
# Activate the virtual environment
# Windows (cmd):
.venv\\Scripts\\activate
# Windows (PowerShell):
.venv\\Scripts\\Activate.ps1
# macOS / Linux:
source .venv/bin/activate
# Install the package in editable mode
uv pip install -e .
Additional configuration and usage notes
After installation, you will have an executable named ems-mcp inside your virtual environment. You must configure three values to connect to your EMS server: EMS_BASE_URL, EMS_USERNAME, and EMS_PASSWORD.
Troubleshooting and tips
If you encounter authentication or connection issues, verify your EMS_BASE_URL does not include an /api suffix and that your EMS credentials are correct and have API access. If the MCP server cannot be found, ensure you are using absolute paths to the executable and that the virtual environment is properly created.
Configuration essentials
You connect the MCP client to the EMS MCP Server by configuring a server block that provides the executable path and environment variables. The three required environment variables are EMS_BASE_URL, EMS_USERNAME, and EMS_PASSWORD. Set EMS_BASE_URL to your EMS server URL without the /api path.
Available tools
list_ems_systems
List available EMS systems that you can connect to and query.
list_databases
Navigate the EMS database hierarchy to locate flight data collections and metadata.
list_fields
Navigate field hierarchy to discover available data fields and schema.
search_fields
Search for field IDs by name across EMS datasets.
get_field_info
Retrieve detailed field metadata and discrete value mappings for a chosen field.
search_analytics
Search for time-series analytic IDs to use in flight analytics queries.
query_database
Query flight records with filters and sorting to retrieve matching results.
query_flight_analytics
Fetch time-series analytics for specific flights.
list_fleets
List aircraft fleets available in the EMS data.
list_aircraft
List individual aircraft by tail numbers.
list_airports
List airports with codes and geographic locations.
list_flight_phases
List definitions of flight phases used in analytics.
ping_system
Check system health and obtain server time.