Skip to main content
Noorle uses a layered architecture with host-based routing to manage multiple services within a unified platform. This design allows different interfaces (Web UI, REST API, MCP Gateway, Agent Gateway) to coexist seamlessly.

Host-Based Routing

Noorle routes requests to different services based on the hostname:

Virtual Hosts

HostServicePurposeProtocol
console.noorle.comConsoleWeb UI for managing gateways, agents, and capabilitiesHTTP/HTTPS
api.noorle.comAdmin APIREST endpoints for account/agent/capability managementHTTP/REST
mcp-{id}.noorle.comMCP GatewayExposes capabilities via MCP protocolMCP (SSE/HTTP)
agent-{id}.noorle.comAgent GatewayA2A protocol for agent-to-agent communicationA2A

Layered Architecture

Noorle’s architecture consists of three layers:

Layer Responsibilities

Interface Layer
  • Routes incoming requests to appropriate handlers
  • Manages session state and WebSocket connections
  • Handles protocol translation (HTTP/REST → MCP, A2A)
Application Layer
  • Unified authentication across all services
  • Capability service: manages builtin, plugin, and connector access
  • Agent runtime: executes agents with tool integration
  • Memory and knowledge services: vector search, embeddings, conversational memory
Platform Services
  • Plugin runtime: secure WebAssembly sandbox for custom tools
  • Capability store: registry and metadata for all tools
  • LLM integration: model selection and prompt routing across multiple providers
  • Object storage: plugin artifacts, knowledge bases, exports
Data Layer
  • PostgreSQL: relational data (agents, gateways, capabilities, etc.)
  • Redis: caching and session management
  • Vector database: embeddings for semantic search

Request Flow Example

How a request flows through the system:

Key Architectural Decisions

Unified Capability Model

All capabilities (builtin, plugin, connector) are accessed through the same CapabilityService, ensuring consistent tool discovery and execution regardless of type.

Protocol Translation

MCP Gateway and Agent Gateway translate between their respective protocols (MCP, A2A) and the internal capability model, providing a clean separation of concerns.

Multi-Tenancy by Design

Account-based resource isolation is enforced at the service layer. Every operation includes an account_id to prevent cross-account data leaks.

Stateless Services

Gateway services are stateless and can be horizontally scaled. Conversation state, memory, and session data are persisted in Redis and PostgreSQL.

Performance Characteristics

  • Latency: Sub-100ms capability access via multi-tier caching
  • Concurrency: Async runtime supports thousands of concurrent connections
  • Storage: PostgreSQL handles millions of capabilities; vector database scales semantic search
  • Cost Control: Optional work budgets constrain execution costs at runtime

Next: Explore Use Cases to see Noorle in action.