fme-mcp-ultra
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
fme-mcp-ultra
Universal, secure, production-grade Model Context Protocol (MCP) server for Safe Software FME 2025.2 (FME Form & FME Flow), geospatial data, enterprise ETL pipelines, and AI agents.
Usable by any standard MCP client: Claude Desktop, Claude Code, Cursor, VS Code, Antigravity, Windsurf, LangChain, and OpenAI Agents SDK.
🌟 Executive Overview
While Safe Software introduced native MCP integration in FME 2026 (safe.mcp client package in 2026.1 and native Flow MCP Server in 2026.2), organizations running FME 2025.2 previously lacked a direct bridge to connect Large Language Models with their spatial data pipelines.
fme-mcp-ultra solves this by delivering:
FME 2025.2 Compatibility: Direct execution via local FME Form (
fme.exeandfmeobjectsC-API bindings) and remote FME Flow REST APIs.Dynamic Workspace-to-Tool Engine: Automatically discovers workspaces, parses published parameters, infers strict JSON Schemas, and exposes workspaces as callable MCP tools.
Enterprise DevSecOps Architecture: Zero-Trust security with directory sandboxing (
PathGuard), shell-injection prevention (CommandGuard), outbound network protection (SSRF Guard), and automated PII / secret redaction.Outbound MCP Federation: Functions as both an MCP server and an outbound MCP client (
MCPCalleremulation), enabling chaining across multi-server topologies.Geospatial Intelligence Layer: Built-in vector reprojection, buffering, geometry validation, dataset profiling, and data contracts.
Related MCP server: MCP Tool Manager
🏛️ System Architecture
flowchart TB
subgraph Clients["MCP Clients (LLMs & Agents)"]
C1["Claude Desktop / Claude Code"]
C2["Antigravity / Cursor / VS Code"]
C3["AI Agents SDK / LangChain"]
end
subgraph CoreServer["fme-mcp-ultra Server"]
subgraph Transports["Transports"]
T1["Standard I/O (stdio)"]
T2["Streamable HTTP / SSE"]
end
subgraph Security["Security & Governance Layer"]
S1["PathGuard (Directory Sandboxing)"]
S2["CommandGuard (Subprocess Guard)"]
S3["SSRF Guard (Network Allowlist)"]
S4["RedactionEngine (Secret & PII Scrubbing)"]
S5["RBAC & ABAC Policy Engine"]
S6["Tamper-Evident Audit Chain"]
end
subgraph Engine["FME Abstraction Engine"]
E1["FME Form Local Runner (fme.exe & fmeobjects)"]
E2["FME Flow REST Client (v3/v4)"]
E3["Parameter Mapper & Schema Inferer"]
E4["Log Streamer & Diagnostic Parser"]
end
subgraph Tools["Tools Registry (240+ Capabilities)"]
TL1["Workspaces & Jobs"]
TL2["Spatial & GIS (Vector, Raster, CAD/BIM)"]
TL3["Data Engineering & Profiling"]
TL4["Quality & Data Contracts"]
TL5["Catalogue & Lineage"]
TL6["MCP Federation (MCPCaller Client)"]
end
end
subgraph Targets["Target Infrastructure"]
FME_Form["Local FME Form 2025.2 (Engine)"]
FME_Flow["Enterprise FME Flow Server"]
Ext_MCP["Remote Federated MCP Servers"]
end
Clients --> Transports
Transports --> Security
Security --> Engine
Engine --> Tools
Engine --> FME_Form
Engine --> FME_Flow
Tools --> Ext_MCP⚡ Quickstart (Under 5 Minutes)
Option 1: Run with uvx (Recommended)
uvx fme-mcp-ultra serve --transport stdioOption 2: Standard pip Installation
pip install fme-mcp-ultra
fme-mcp-ultra doctor
fme-mcp-ultra serve --transport stdio🔌 MCP Client Configurations
1. Claude Desktop
Add this to %APPDATA%\Claude\claude_desktop_config.json (Windows) or ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"fme-mcp-ultra": {
"command": "uvx",
"args": ["fme-mcp-ultra", "serve", "--transport", "stdio"],
"env": {
"FME_DIR": "C:\\Program Files\\FME",
"FME_ALLOWED_DIRS": "C:\\Program Files\\FME;E:\\fme_mcp"
}
}
}
}2. Antigravity / Cursor / VS Code
Add to your client's MCP configuration settings:
{
"mcpServers": {
"fme-mcp-ultra": {
"command": "fme-mcp-ultra",
"args": ["serve", "--transport", "stdio"],
"env": {
"PYTHONIOENCODING": "utf-8",
"PYTHONUNBUFFERED": "1"
}
}
}
}3. Streamable HTTP / Docker Deployment
docker run -d --name fme-mcp-ultra \
-p 8000:8000 \
-e FME_FLOW_URL="https://fme-flow.your-org.com" \
-e FME_FLOW_TOKEN="your-fme-flow-api-token" \
ghcr.io/mwjouini/fme-mcp-ultra:latest🧰 Highlighted Tools Catalogue
Domain | Key Tools | Description |
Workspaces |
| Crawls directories, extracts published parameters, and executes |
Spatial Analysis |
| High-precision CRS conversion (EPSG:4326 to 2154 / 3857), circular buffering, and polygon validation. |
Data Engineering |
| Column analysis, null counts, distinct value distribution, and format inspection. |
Data Quality |
| Computes completeness scores and generates standard Data Contract YAML. |
Catalogue |
| Registers datasets, performs semantic search, and maps upstream/downstream dependencies. |
Orchestration |
| Constructs multi-step execution DAGs combining FME, validation checks, and scripts. |
MCP Federation |
| Connects external MCP servers to chain tools and fan-out requests. |
Governance |
| Enforces GDPR/UK-GDPR data classification and automated PII scrubbing. |
Diagnostics |
| Queries build/licensing, searches 500+ transformers, and runs in-engine Python. |
🛡️ Enterprise Security Model
fme-mcp-ultra is engineered with a strict Default-Deny security posture:
PathGuard: Enforces canonical path resolution (
os.path.realpath) and verifies containment withinFME_ALLOWED_DIRS. Traversal escapes (..) and null bytes are rejected.CommandGuard: Zero shell invocations (
shell=False). Executable names and arguments are validated against an authorised binary whitelist, blocking metacharacter injection (|,;,&,$).SSRF Guard: Pre-resolves outbound DNS hostnames and prevents calls to loopback (
127.0.0.1), private networks (10.0.0.0/8,192.168.0.0/16), and cloud metadata APIs (169.254.169.254).RedactionEngine: Real-time scrubbing of Bearer tokens, API credentials, email addresses, and payment card numbers before output delivery.
Role-Based Access Control (RBAC): Enforces role permissions (
platform_admin,workspace_operator,spatial_analyst,auditor,read_only).
📊 FME Compatibility Matrix
Feature | FME Form 2025.2 | FME Flow 2025.2 | FME 2026 Native |
|
Local Desktop Execution | CLI / C-API | ❌ | ❌ | ✅ Yes |
Remote Cluster Execution | ❌ | REST v3 | REST v4 | ✅ Yes |
MCP Server Mode | ❌ | ❌ | ✅ Flow only | ✅ Universal |
MCP Client (Federation) | ❌ | ❌ | ✅ | ✅ Advanced Client |
Built-in Vector GIS | ❌ | ❌ | ❌ | ✅ 55+ Tools |
Zero-Trust Security Guards | ❌ | ❌ | ⚠️ Basic | ✅ Full Suite |
Data Contracts & Scoring | ❌ | ❌ | ❌ | ✅ Yes |
💻 CLI Usage
# Verify environment and FME installation
fme-mcp-ultra doctor
# Inspect a workspace file
fme-mcp-ultra inspect E:/fme_mcp/geolocalisation.fmw
# Launch stdio server for desktop clients
fme-mcp-ultra serve --transport stdio
# Launch Streamable HTTP server
fme-mcp-ultra serve --transport streamable-http --host 0.0.0.0 --port 8000🤝 Contributing
Contributions are welcomed under our Contributing Guide and Code of Conduct. The official project language is British English (en-GB).
📄 Licence
Licensed under the Apache License 2.0. See LICENSE for details. Copyright © 2026 Mohamed Wael JOUINI and Contributors.
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Build and run AI workflows, agents, data tables and 1000+ API integrations from any MCP client.
Unified MCP Server is a remote MCP connector for AI agents and vertical AI products that provides access to 22,000+ authorized SaaS tools across 400+ integrations and 24 categories directly inside LLMs (Claude, GPT, Gemini, Cohere). Tools operate only on explicitly authorized customer connections, enabling agents to safely read and write against live third-party systems.
MCP server for secureFlows: token-free URL builders and integration-linting tools for AI agents.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to discover and execute tools via a secure MCP server with JWT authentication, RBAC, rate limiting, and audit logging.1MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to securely discover, invoke, and manage tools through a hardened MCP endpoint with protections like injection detection, circuit breakers, retry backoff, response caching, context-window limiting, and state snapshots.6 npmMIT
- FlicenseNot gradedqualityCmaintenanceEnables AI assistants and MCP-enabled clients to discover and call application capabilities exposed as structured, schema-defined tools, with input validation, error handling, and API/database integration. It also ships a sample client that demonstrates secure tool execution and seamless AI-agent interoperability.-
- AlicenseNot gradedqualityBmaintenanceTurns any REST/OpenAPI, SOAP, GraphQL, OData, SQL, MongoDB or existing MCP system into MCP tools for Claude, ChatGPT and Copilot without writing an MCP server, shipping 474 ready-made connectors with runtime tool registration, field filtering and role-based access control.AGPL 3.0