Open Enterprise AI MCP Server
Connects AI coding assistants like Claude Code, Cursor, and Windsurf to enterprise data sources (databases, files, APIs, etc.) via a single binary, with 45+ connector categories and built-in memory tools.
README
<div align="center">
<h1>Open Enthrium AI MCP Server</h1> <h3>aka OE MCP · Enterprise MCP Server · Apache-2.0 · Claude Code · Cursor · Windsurf · Claude Desktop</h3>
Connect any AI coding assistant to your enterprise data — databases, files, APIs, and more — via a single binary.
</div>
What is OE MCP Server?
OE MCP Server is a standalone binary that implements the Model Context Protocol (MCP) and exposes your enterprise data sources as tools that AI apps can use directly.
Connect Claude Code, Cursor, Windsurf, or Claude Desktop to your PostgreSQL database, local filesystem, GitHub, Slack, Google Drive, SSH servers, and more — without writing any integration code.
- No code. Define connectors in a single YAML file.
- 45+ connector categories. 2,600+ enterprise systems supported out of the box.
- Two transport modes.
--stdiofor Claude Code VS Code / desktop apps;--servefor Cursor, Windsurf, and cloud deployments. - Persistent memory. Built-in
memory_set / memory_get / memory_list / memory_deletetools — context survives across sessions. - Self-hosted. Runs on your own machine. No cloud dependency. Own your data.
Quick Start via npm (Recommended)
No binary download needed — npx handles everything automatically:
macOS / Linux:
{
"mcpServers": {
"oe-mcp": {
"command": "npx",
"args": ["@openenterprise/oe-mcp", "--stdio", "/path/to/oe-mcp.yaml"]
}
}
}
Windows: use npx.cmd instead of npx:
{
"mcpServers": {
"oe-mcp": {
"command": "npx.cmd",
"args": ["@openenterprise/oe-mcp", "--stdio", "C:\\path\\to\\oe-mcp.yaml"]
}
}
}
Add this to ~/.mcp.json (Claude Code) and reload VS Code. Done.
Download (Standalone Binary)
Prefer a standalone binary? Download for your platform:
| Platform | Binary |
|---|---|
| Windows | oe-mcp-win.exe |
| Linux | oe-mcp-linux |
| macOS | oe-mcp-macos |
| Sample configs | oe-mcp-samples.zip — ready-to-use oe-mcp.yaml for common connectors |
Quick Start (Binary)
1. Download the binary for your OS
# Linux / macOS — make executable
chmod +x oe-mcp-linux
2. Create your config file (oe-mcp.yaml)
connectors:
- name: my-postgres
type: postgresql
host: localhost
port: 5432
database: mydb
user: postgres
password: secret
- name: my-codebase
type: filesystem
basePath: /home/user/projects/myapp
memory:
- key: project_context
value: "This is our main application database."
3. Connect your AI app — see sections below for Claude Code, Cursor, and Windsurf.
Claude Code (VS Code Extension)
Option A — via npm (recommended, no binary download needed):
macOS / Linux:
{
"mcpServers": {
"oe-mcp": {
"command": "npx",
"args": ["@openenterprise/oe-mcp", "--stdio", "/path/to/oe-mcp.yaml"]
}
}
}
Windows:
{
"mcpServers": {
"oe-mcp": {
"command": "npx.cmd",
"args": ["@openenterprise/oe-mcp", "--stdio", "C:\\path\\to\\oe-mcp.yaml"]
}
}
}
Option B — via downloaded binary:
{
"mcpServers": {
"oe-mcp": {
"type": "stdio",
"command": "/path/to/oe-mcp-win.exe",
"args": ["--stdio", "/path/to/oe-mcp.yaml"]
}
}
}
Reload VS Code — the MCP tools appear automatically in Claude Code.
Cursor / Windsurf / Claude Desktop (HTTP mode)
Start the server manually, then point your AI app at the URL.
# Start the MCP server
oe-mcp-win.exe --serve --port 4040 oe-mcp.yaml
# OE MCP Server listening on http://localhost:4040/mcp
In Cursor settings → MCP → Add server:
http://localhost:4040/mcp
In Claude Desktop claude_desktop_config.json:
{
"mcpServers": {
"oe-mcp": {
"url": "http://localhost:4040/mcp"
}
}
}
Cloud Deployment (MCP as a Service)
Deploy oe-mcp-linux to any cloud server — AWS EC2, fly.io, Railway, DigitalOcean — and multiple developers connect to it via URL. No binary needed on each developer machine.
# On your cloud server
./oe-mcp-linux --serve --port 4040 /etc/oe-mcp/oe-mcp.yaml
Each developer adds to their Cursor / Windsurf:
http://your-server.com:4040/mcp
Config File Reference (oe-mcp.yaml)
connectors:
- name: <display-name> # must be unique; shown as the tool prefix
type: <connection-type> # see Connector Catalog below
# ... connector-specific credentials
memory:
- key: <key>
value: <value> # seed defaults; overridden at runtime via memory_set
Example — Multiple Connectors
connectors:
# ── SQL Databases ──────────────────────────────────────
- name: my-postgres
type: postgresql
host: db.company.com
port: 5432
database: production
user: readonly
password: secret
- name: my-mysql
type: mysql
host: localhost
port: 3306
database: mydb
user: root
password: secret
# ── NoSQL ──────────────────────────────────────────────
- name: my-mongo
type: mongodb
uri: mongodb://localhost:27017
database: mydb
- name: my-redis
type: redis
host: localhost
port: 6379
- name: my-elastic
type: elasticsearch
node: https://localhost:9200
apiKey: xxxxxxxxxxxx
# ── Object Storage ─────────────────────────────────────
- name: my-s3
type: s3
accessKeyId: AKIAXXXXXXXX
secretAccessKey: xxxxxxxxxxxx
region: us-east-1
bucket: my-bucket
# ── Cloud Drives ───────────────────────────────────────
- name: my-gdrive
type: gdrive
clientId: xxxx.apps.googleusercontent.com
clientSecret: xxxx
refreshToken: xxxx
# ── Code & Issue Tracking ──────────────────────────────
- name: my-github
type: github
token: ghp_xxxxxxxxxxxx
- name: my-jira
type: jira
host: https://company.atlassian.net
email: you@company.com
apiToken: xxxx
# ── Team Messaging ─────────────────────────────────────
- name: my-slack
type: slack
botToken: xoxb-xxxxxxxxxxxx
# ── Email ──────────────────────────────────────────────
- name: my-gmail
type: gmail
clientId: xxxx.apps.googleusercontent.com
clientSecret: xxxx
refreshToken: xxxx
- name: my-smtp
type: smtp
host: smtp.company.com
port: 587
user: you@company.com
password: secret
# ── SSH / Remote Server ────────────────────────────────
- name: my-server
type: ssh
host: server.company.com
port: 22
username: ubuntu
privateKey: /path/to/key.pem
# ── Filesystem ─────────────────────────────────────────
- name: my-codebase
type: filesystem
basePath: /home/user/projects
# ── REST API ───────────────────────────────────────────
- name: my-api
type: rest-api
baseUrl: https://api.company.com
headers:
Authorization: Bearer xxxx
# ── CRM ────────────────────────────────────────────────
- name: my-hubspot
type: hubspot
accessToken: pat-xxxxxxxxxxxx
# ── Message Queues ─────────────────────────────────────
- name: my-kafka
type: kafka
brokers:
- localhost:9092
memory:
- key: team
value: "Platform Engineering"
- key: environment
value: "production"
Built-in Tools
Connector Tools
Each connector exposes a set of tools prefixed with the connector name. Examples:
| Connector | Tools |
|---|---|
postgresql / mysql / mongodb |
query — run SQL or aggregation queries |
filesystem |
list_dir, read_file, write_file, append_file, delete_file, make_dir, file_info, search_files |
github |
list_repos, get_file, create_issue, list_issues, list_prs, get_pr, search_code |
slack |
list_channels, post_message, get_messages, get_thread |
ssh |
execute_command, upload_file, download_file, list_files |
gdrive |
list_files, get_file, create_file, update_file, search_files |
rest-api |
request — any HTTP method against any endpoint |
Memory Tools
Built-in memory tools available in every session:
| Tool | Description |
|---|---|
memory_set |
Store a key-value pair that persists across sessions |
memory_get |
Retrieve a stored value by key |
memory_list |
List all stored key-value pairs |
memory_delete |
Remove a stored key |
Memory is stored in oe-mcp-memory.json next to your oe-mcp.yaml and survives restarts.
Example usage in Claude Code:
"Remember that our main database is on prod-db.company.com" → Claude calls
memory_setwith keymain_db_hostand valueprod-db.company.com
Connector Catalog
2,600+ connectors across 45+ categories:
| Category | Examples |
|---|---|
| SQL Databases | PostgreSQL, MySQL, MSSQL, Oracle, SQLite, Snowflake, BigQuery, Redshift |
| NoSQL / Cache | MongoDB, Redis, Elasticsearch, DynamoDB, Cassandra |
| Object Storage | AWS S3, GCS, Azure Blob, MinIO, Cloudflare R2 |
| Cloud Drives | Google Drive, OneDrive, Dropbox, Box |
| Filesystem | Local directories — list, read, write, search |
| Gmail, Outlook, Zoho Mail, SMTP | |
| Team Messaging | Slack, Microsoft Teams, Discord, Telegram |
| CRM / Productivity | HubSpot, Salesforce, Notion, Airtable |
| Issue Tracking | GitHub, Jira, GitLab, Linear |
| REST API | Any HTTP/REST endpoint |
| GraphQL | Any GraphQL endpoint |
| SSH / SFTP | Remote command execution, file transfer |
| Message Queues | Kafka, AWS SQS, Google Pub/Sub, RabbitMQ |
| Search | Perplexity, Google Search, Bing |
| LDAP / Directory | Active Directory, OpenLDAP |
| OCR / Vision | Azure Vision, Google Vision, AWS Textract |
| Image Generation | OpenAI, FLUX, Stable Diffusion |
| Speech & Audio | ElevenLabs, OpenAI TTS, Azure Speech |
| Web3 / Blockchain | Ethereum, Polygon, Solana |
| Helpdesk | Zendesk, Freshdesk, ServiceNow |
| + more | Healthcare (FHIR), ERP (SAP), Marketing, Analytics, ... |
Binary vs Node.js mode
The standalone binary works for all connector categories except Oracle, MSSQL, SQLite, and Snowflake — these use native C++ addons that cannot be bundled into a single executable.
If you need any of these four, run with Node.js instead:
git clone https://github.com/enthrium/open-enthrium-ai-mcp-server.git cd open-enthrium-ai-mcp-server/server yarn install # stdio mode (Claude Code) node mcp/index.js --stdio /path/to/oe-mcp.yaml # serve mode (Cursor, Windsurf, cloud) node mcp/index.js --serve --port 4040 /path/to/oe-mcp.yamlAll other connectors (PostgreSQL, MySQL, MongoDB, Redis, S3, Slack, GitHub, REST API, SSH, filesystem, etc.) work directly with the binary — no Node.js required.
Sample Configs
Download oe-mcp-samples.zip for ready-to-use configs:
postgres · mysql · mongodb · github · slack · gdrive · ssh · filesystem · oracle · multi-connector
Each sample includes the complete oe-mcp.yaml with setup instructions in comments.
Transport Modes
| Mode | Flag | Best for |
|---|---|---|
| stdio | --stdio |
Claude Code VS Code extension, Claude Desktop — binary launched as child process automatically |
| HTTP | --serve |
Cursor, Windsurf, cloud deployments, multiple developers sharing one server |
Both modes are supported in the same binary — just pass the appropriate flag.
Part of Open Enthrium
OE MCP Server is part of the Open Enthrium platform.
| ⚡ Agent Runtime | open-enthrium-ai-agent-runtime — run YAML agents as CLI or HTTP server |
| 🖥️ Platform (Docker) | open-enthrium-ai-platform — full web app with workspaces, RAG, Agent Builder, DLP |
| 🌐 Website | openenthrium.com |
License
Apache-2.0 — free to use, modify, and deploy for any purpose, including commercial use. No usage limits. No telemetry. No call-home.
<div align="center">
⭐ Star this repo · 🌐 Website · ⚡ Agent Runtime
</div>
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。