โ๏ธ Managing External MCP Servers โ
In addition to serving as an MCP Server for external clients, Nyxora acts as an MCP Client that can dynamically connect to and consume external Model Context Protocol (MCP) servers.
You can equip your Nyxora AI Agent with specialized external tools (such as @modelcontextprotocol/server-sequential-thinking, @modelcontextprotocol/server-memory, filesystem tools, or custom internal servers) and manage them in real-time.
๐ฅ๏ธ Managing MCP Servers via UI โ
You can view, add, and remove external MCP servers directly from the Graphical User Interface without touching configuration files or restarting the daemon:
- In Dashboard or Desktop App:
- Navigate to Settings โ Advanced โ MCP Servers & Tools.
- Adding a New Server:
- Enter the Server Name (e.g.,
sequential-thinking). - Specify the Command (e.g.,
npx). - Provide Arguments (e.g.,
-y @modelcontextprotocol/server-sequential-thinking). - Optionally define environment variables (
KEY=VALUE). - Click Add MCP Server.
- Enter the Server Name (e.g.,
- Deleting a Server:
- Click the trash icon next to any active server to remove it from your active configuration.
๐ Configuration File (nyxmcp.yaml) โ
All external MCP servers are persisted locally in your Nyxora configuration directory:
~/.nyxora/config/nyxmcp.yamlExample nyxmcp.yaml Structure: โ
mcp_servers:
sequential-thinking:
command: npx
args:
- "-y"
- "@modelcontextprotocol/server-sequential-thinking"
long-term-memory:
command: npx
args:
- "-y"
- "@modelcontextprotocol/server-memory"๐ Dedicated REST API Endpoints โ
The Nyxora Core Gateway provides dedicated HTTP endpoints to query and manage your MCP servers programmatically:
GET /api/mcp-serversโ Returns the current dictionary of active external MCP servers.POST /api/mcp-serversโ Registers a new MCP server and saves it tonyxmcp.yaml.DELETE /api/mcp-servers/:nameโ Removes the specified MCP server from the configuration.
Triple-Fallback Synchronization โ
To ensure zero-latency UI synchronization even during network turbulence, both Dashboard (Mcp.tsx) and Desktop (McpSettings.svelte) clients use a resilient triple-fallback loader:
- Queries
/api/mcp-serversdirectly. - If unreachable or empty, falls back to
/api/config(which mergesnyxmcp.yaml). - If offline, loads from cached in-memory store (
configStore).