data-ai MCP Server
Self-hosted terminal cockpit for piloting AI coding agents (Claude Code, Codex, Gemini, OpenCode, Qwen) from mobile, web, or Telegram. Go backend, Flutter app, plugin architecture.
Discovered via github-topic:mcp and last synced 3mo ago.
Install instructions not detected yet
Check the source repository for the latest setup steps.
Icon
CRUD for stdio / SSE / HTTP MCP servers, per-agent filtering, enable/disable toggle
`127.0.0.1:8640`
Technology
Path
`/etc/systemd/system/opendray.service`
`/Library/LaunchDaemons/com.opendray.opendray.plist`
Category
Sandboxed directory listing + file viewing with syntax highlighting, binary detection, size caps
Read-only schema introspection (databases, schemas, tables, columns) + filtered SELECT execution, query history, 8 SSL modes
Tail-follow with backlog, rotation detection, regex grep, extension filtering
Bot token setup, link status, test messages, command reference
Browse Obsidian vaults from Git repos (Gitea, GitHub, GitLab), branch selection, path filtering
Full in-app browser with multi-tab URLs, forward/back navigation, and port-on-host shortcuts
Real-time WebSocket stream of iOS Simulator or Android Emulator, adaptive FPS (8 active / 1 idle), touch/swipe/key input forwarding
Description
What happens
Default
JWT required on non-loopback. Server refuses to start without `JWT_SECRET`.
Default
*(required)*
*(required)*
`opendray`
*(empty = dev)*
`./plugins`
*(empty)*
`false`
`8`
Go 1.25+, chi, gorilla/websocket, creack/pty, pgx/v5
Flutter 3.41+ (Dart 3), xterm.js via WebView, go_router, provider
PostgreSQL 14+ (18 auto-applied migrations, max 20 connections)
JWT (HS256, 7-day TTL) + optional Cloudflare Access service-token support
Single binary with Flutter web build embedded via `go:embed`
GitHub Actions (Go vet + test + build, Flutter analyze + build)
Gitea / GitHub / GitLab integration — browse repos, clone, inspect PRs/issues