百科.dev
全部条目AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
M

moor

> 编程语言
开源

Moor 是 Mac 的本地 MCP 控制平面,它为每个编码代理提供了一个安全、可观察、可配置的网关,可连接到您的 MCP 服务器。

197 stars0 点赞0 次浏览
访问官网GitHub

工具介绍

Moor 是 Mac 的本地 MCP 控制平面,它为每个编码代理提供了一个安全、可观察、可配置的网关,可连接到您的 MCP 服务器。

Moor

Local MCP Gateway Manager for AI Agents

Aggregate multiple MCP servers into a single endpoint, filter tools by Profile, and manage everything from a beautiful native UI.

Install · Quickstart · Features · Architecture · Development · API

English | 汉语 | 日本語 | Español


AI Agents need tools, but managing dozens of MCP servers across different clients is a mess. I wanted a single gateway that aggregates everything, filters by context, and keeps running in the background — all controllable from a beautiful native UI.

Moor exposes one endpoint (http://127.0.0.1:/mcp) that dynamically serves only the tools you want, based on your active Profile. Switch profiles without disconnecting your Agent, and every tool call is audited. That's why I built it.

Dashboard — Overview of active Profile, server status, and audit stats.

Servers — Manage MCP servers, import configs, monitor health.

Profiles — Create profiles, toggle servers, enable/disable tools.

Audit — Inspect every tool call with full context and filters.

Install

macOS App

Download the .dmg from Releases, drag to Applications, done. The app bundles the HTTP server as an in-process Rust binary — no pre-installed Node.js runtime required.

Windows App

Download the Windows installer from Releases and run it. The app bundles the HTTP server as an in-process Rust binary — no pre-installed Node.js runtime required.

Linux App

Download the .deb, .rpm, or .AppImage from Releases (x86_64 and aarch64 builds are produced by CI). The app bundles the HTTP server as an in-process Rust binary — no pre-installed Node.js runtime required. macOS remains the primary target; Linux builds are produced by CI but less extensively tested.

Build from Source

Requires macOS (Apple Silicon / Intel), Windows x64, or Linux (x86_64 / aarch64), Node.js >= 22 (CI uses 24), pnpm >= 10, and Rust >= 1.77.

bash
git clone https://github.com/varandrew/moor.git
cd moor
pnpm install

See Development for build instructions.

Quickstart

Launch the App

Open Moor.app. The Dashboard shows your active Profile, server status, and recent audit logs at a glance.

Scan Existing Configs

Moor can automatically detect MCP servers you've already configured for Claude Code, Claude Desktop, Codex, OpenCode, Cursor, Kimi Code, dsh, Grok Build, and Pi:

  1. Go to Servers → Import
  2. Click Scan — Moor reads ~/.claude.json, ~/.codex/config.toml, ~/.config/opencode/opencode.json / .jsonc, ~/.cursor/mcp.json, ~/.kimi-code/mcp.json, ~/.dsh/cordis.patch.yml, ~/Library/Application Support/Claude/claude_desktop_config.json, ~/.grok/config.toml, and ~/.pi/agent/mcp.json (Pi needs the community adapter: pi install npm:pi-mcp-adapter)
  3. Select the servers you want to import

You can also paste a JSON MCP configuration with Import JSON. Moor imports stdio and HTTP/SSE servers, and reports unsupported entries such as OpenAPI configs without saving them.

Create a Profile

Profiles let you group servers and control which tools are exposed to Agents:

  1. Go to Profiles → New Profile
  2. Name it (e.g., "Coding", "Research")
  3. Toggle servers on/off
  4. Expand a server to enable/disable individual tools
  5. Click Activate — the change is instant

Connect Your Agent

Point any MCP-compatible client to Moor's single endpoint:

http://127.0.0.1:9223/mcp

9223 is the default gateway port. If it is already in use, Moor picks the next available port and shows the actual endpoint in the Dashboard and Client Config pages.

By default the /mcp endpoint is loopback-only and does not require X-Moor-Token (see LAN access below). Moor uses X-Moor-Token only for local management APIs between the WebView and gateway, so you do not need to paste it into agent configs.

To connect from WSL2 (NAT mode) or another LAN device, enable Settings → Advanced → Allow LAN MCP Access and restart Moor. The gateway then binds to all interfaces and /mcp additionally accepts private-network hosts (10.x.x.x, 172.16.x.x–172.31.x.x, 192.168.x.x); /api/* stays loopback-only and token-protected. Windows may prompt to allow Moor through the firewall.

Moor handles the rest — aggregating tools/list, routing tools/call, and filtering based on your active Profile.

Features

MCP Gateway Aggregation

A single HTTP endpoint (/mcp) proxies all backend MCP servers. Agents see a unified tool catalog — no need to configure multiple endpoints.

Multi-Transport Support

Connect to both stdio (subprocess) and HTTP/SSE MCP servers. Moor manages connection lifecycles, restarts, and health checks automatically.

Profile Management

Create unlimited Profiles for different workflows. Each Profile stores:

  • Which servers are enabled
  • Which tools are disabled per server
  • A global active state

Switch Profiles with hot-swap — connected Agents stay connected, and the next tools/list reflects the new configuration immediately.

Tool-Level Toggles

Beyond server-level on/off, drill into any server to disable specific tools. Disabled tools disappear from the Agent's tool catalog in real time.

Config Import

One-click import from:

  • Claude Code: ~/.claude.json
  • Codex: ~/.codex/config.toml
  • OpenCode: ~/.config/opencode/opencode.json / .jsonc
  • Cursor: ~/.cursor/mcp.json
  • Kimi Code: ~/.kimi-code/mcp.json
  • dsh: ~/.dsh/cordis.patch.yml
  • Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Grok Build: ~/.grok/config.toml
  • Pi: ~/.pi/agent/mcp.json (requires pi install npm:pi-mcp-adapter)

Manual entry and pasted JSON batch import are also supported for stdio and HTTP/SSE servers.

Client Configuration

Generate ready-to-copy configuration snippets for Claude Code, Claude Desktop, Codex, OpenCode, Cursor, Kimi Code, dsh, Grok Build, and Pi. The snippets contain only the /mcp endpoint; Moor's X-Moor-Token is reserved for internal management API calls.

Audit Logs

Every tools/call is recorded with:

  • Timestamp, Profile, Server, Tool name
  • Arguments (with sensitive data redaction)
  • Result or error
  • Duration and Agent info

Filter by time range, server, or tool. View aggregate statistics on the Dashboard.

System Tray

Close the window — Moor keeps running in the macOS menu bar or Windows system tray. The gateway stays alive, so your Agents never lose connection.

Real-Time Status

Server status changes and Profile switches are pushed to the UI via SSE. No refresh needed.

Architecture

Architecture Diagram

…

Communication Flow

AI Agent ──HTTP──▶ POST /mcp ──▶ Moor Gateway ──stdio/HTTP──▶ MCP Servers
                              │
WebView ──IPC──▶ get_sidecar_info ─┐
WebView ──env──▶ VITE_MOOR_API_URL/TOKEN ─┤ (fallback in browser dev mode)
WebView ──fetch──▶ /api/* ─────────┘
WebView ◀──SSE──── /api/events
  • Runtime discovery: WebView → Tauri IPC (get_sidecar_info) → Rust (port, token); in browser dev mode (pnpm dev) falls back to the VITE_MOOR_API_URL / VITE_MOOR_API_TOKEN env vars — see src/lib/api/runtime.ts (GET /api/runtime exists but is token-protected)
  • Business operations: WebView → HTTP fetch() → In-process Axum server (Rust)
  • System operations: WebView → Tauri IPC → Rust (tray, window, auto-start)

Development

Prerequisites

  • macOS (Apple Silicon / Intel), Windows x64, or Linux (x86_64 / aarch64)
  • Node.js >= 22 (CI uses 24)
  • pnpm >= 10
  • Rust >= 1.77
  • Xcode Command Line Tools on macOS

Install Dependencies

bash
pnpm install

Development Mode

Start the full desktop app (Tauri, with the in-process Rust gateway):

bash
pnpm tauri dev
  • Frontend dev server: http://localhost:1420 (Vite HMR runs inside the WebView)

Production Build

bash
pnpm tauri build

Outputs:

  • macOS: src-tauri/target/release/bundle/macos/Moor.app
  • macOS DMG: src-tauri/target/release/bundle/dmg/Moor__aarch64.dmg
  • Windows: src-tauri/target/release/bundle/nsis/Moor__x64-setup.exe
  • Linux: .deb / .rpm / .AppImage under src-tauri/target/release/bundle/ (x86_64 + aarch64, built by CI)

Code Quality

bash
vp check       # format + lint + type check
vp lint        # lint only
vp lint --fix  # auto-fix
vp fmt         # format

Testing

bash
# Rust gateway tests
cargo test --manifest-path src-tauri/Cargo.toml

# Frontend + scripts tests
vp test

API

MCP Gateway

Method Path Description
ALL /mcp MCP protocol endpoint (Streamable HTTP)

Server Management

Method Path Description
GET /api/servers List all servers
POST /api/servers Add server
GET /api/servers/:id Server detail
PUT /api/servers/:id Update server config
DELETE /api/servers/:id Remove server
POST /api/servers/:id/start Start server
POST /api/servers/:id/stop Stop server
GET /api/servers/:id/tools Get discovered tools (optionally filter by ?profile_id=)
PUT /api/servers/order Reorder servers

Profile Management

Method Path Description
GET /api/profiles List all profiles
POST /api/profiles Create profile
GET /api/profiles/:id Get profile detail (with servers)
PUT /api/profiles/:id Update profile
DELETE /api/profiles/:id Delete profile
PUT /api/profiles/:id/activate Set as active profile
POST /api/profiles/:id/clone Clone a profile
GET /api/profiles/:id/servers/:serverId Get server toggle + disabled tools
PUT /api/profiles/:id/servers/:serverId Update server toggle + disabled tools
PUT /api/profiles/:id/servers-state Bulk upsert server toggles
GET /api/profiles/:id/tools Tools exposed by the profile

Audit Logs

Method Path Description
GET /api/logs Query logs (with filters)
GET /api/logs/stats Aggregate statistics
GET /api/logs/insights Tool-call governance insights

Settings Management

Method Path Description

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Rust

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月18日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言