Skip to content

Agent UI: Curated MCP server catalogue with one-click enable/disable #714

@itomek

Description

@itomek

Problem

Configuring MCP servers in GAIA today requires manual setup: editing config files, locating server endpoints, and troubleshooting connection issues. This creates friction for everyday users who want to connect GAIA to popular services. The power of MCP is only accessible to technically inclined users.

Current State

  • Agent UI: MCP client/server support and configuration (v0.17.1) #609 (shipped in v0.17.1) added MCP client/server support and a configuration panel
  • Users can manually add MCP servers, but there is no curated list, no pre-validated connections, and no guided setup
  • Each new MCP integration requires knowing the server address, transport format, and any required authentication tokens

Proposed Solution

Build a curated catalogue of pre-tested third-party MCP servers with a toggle-based UI in Agent Settings.

1. MCP Server Catalogue

A curated, versioned registry of popular MCP servers maintained in the GAIA repository:

  • Each entry includes: server name, description, connection config, required permissions, and system prompt addendum
  • Only free, publicly available MCP servers included in Phase 1
  • Each server must pass reliability validation (MCP tool calling reliability test framework #709) before being listed

Phase 1 candidates (illustrative categories):

Category Example Use Case
Email Compose, search, and read email from the agent
Calendar / Scheduling Query and create calendar events
Messaging Send and receive messages
Web Search Web queries without browser automation

2. Toggle UI in Agent Settings

  • Settings panel shows all available MCP servers as toggle cards
  • Each card: server name, description, connection status, on/off toggle
  • Toggling on: auto-configures the connection, shows auth prompts if needed (e.g., OAuth)
  • Toggling off: disconnects gracefully and removes from active tool registry

3. System Prompt Injection

  • When an MCP server is enabled, a tool description addendum is appended to the system prompt
  • Describes what the tool does, when to use it, and any usage constraints
  • Removed automatically when the server is disabled

4. Testing and Reliability Gate

  • Each catalogue entry must be validated against the MCP reliability framework (MCP tool calling reliability test framework #709) before inclusion
  • Per-server pass rate threshold: ≥90% on standard hardware (4B model, iGPU)
  • Failed servers are flagged as "experimental" in the catalogue

Files Likely Affected

  • src/gaia/mcp/catalogue/ — versioned MCP server registry (JSON/YAML)
  • src/gaia_ui/frontend/ — toggle cards in Agent Settings panel
  • src/gaia_ui/backend/ — auto-configuration and connection management
  • src/gaia/ — system prompt injection on server enable/disable

Acceptance Criteria

  • At least 2 MCP servers available in Phase 1 catalogue
  • Toggle UI visible in Agent Settings with status indicators per server
  • Enabling a server auto-configures the connection (no manual config required)
  • System prompt addendum is injected on enable and removed on disable
  • OAuth and token-based auth flows are supported where required
  • Each included server has passed the MCP reliability framework (MCP tool calling reliability test framework #709)
  • Disabling a server cleans up connection and removes tools from agent context
  • Catalogue is versioned and extensible for future additions

Notes

  • Memory is out of scope — GAIA maintains its own memory system
  • Agent architecture enablement (orchestrators, sub-agents) is out of scope — built in-house, not via third-party MCP
  • Phase 2: community-contributed server entries with a validation pipeline

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    agentdomain:surfacesAgent UI, Telegram, WhatsApp, Slack/Discord, mobileenhancementNew feature or requestmcpMCP integration changestrack:consumer-appHermes-competitor consumer product — mobile-first, voice + messaging + memory + skills

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions