MA

Magg MCP Server: LLM Module Discovery & Orchestration

Enable LLMs to discover, install, and orchestrate MCP server modules on-demand with Magg's meta-MCP hub and mbro CLI for scripted browsing.

Overview

Magg is an MCP (Model Context Protocol) server that lets large language models discover, install, and orchestrate server-side modules on demand. It functions as a meta-MCP hub — a registry and runtime for MCP-compatible modules — and ships with a small CLI (mbro) for scripted browsing and automated web interactions. The combination enables LLMs to extend their capabilities at runtime by composing purpose-built modules (e.g., headless browser, scrapers, parsers) without bundling every tool into a single monolith.

This approach is useful when an LLM needs to perform specialized I/O or compute (like scraping a website, fetching PDFs, or running a custom parser). Instead of hard-coding every integration, Magg exposes module manifests and runtime hooks so an LLM or orchestrator can discover a module, fetch/install it, run it in a sandboxed environment, and chain multiple modules to complete complex tasks.

Features

  • Meta-MCP hub: central registry for MCP module manifests and metadata
  • Module discovery: list compatible modules and their capabilities
  • On-demand install/uninstall of server-side modules
  • Module orchestration: sequence and chain modules into workflows
  • mbro CLI: scriptable headless-browser automation for scraping and navigation
  • Versioning and manifest-based dependency resolution
  • Sandboxing and resource limits for installed modules
  • HTTP API for programmatic control and LLM integration
  • Logging, caching, and telemetry hooks for monitoring

Installation / Configuration

Clone the repository and run the server locally, or use Docker. Below are common installation patterns.

Clone and build (source):

git clone https://github.com/sitbon/magg.git
cd magg
# Build or run according to the repo's build instructions
# If the project is Go-based:
go build ./cmd/magg
./magg serve --config ./config.yaml

Quick start with Docker:

# Build (if Dockerfile present)
docker build -t magg .

# Run with host port and a modules volume
docker run -d --name magg \
  -p 8080:8080 \
  -v $(pwd)/modules:/var/lib/magg/modules \
  -e MAGG_CONFIG=/etc/magg/config.yaml \
  magg:latest

Sample config.yaml (basic options):

server:
  host: 0.0.0.0
  port: 8080

hub:
  url: https://meta-mcp.example.com

modules_dir: /var/lib/magg/modules
security:
  max_cpu: 2
  max_memory_mb: 1024
  allow_network: false
logging:
  level: info

Install mbro CLI (scripted browsing helper):

# If the project exposes a Go module for mbro
go install github.com/sitbon/magg/mbro@latest

# Or build locally
cd mbro
go build -o mbro
./mbro --help

Available Resources

Magg exposes a small set of resources useful for automation and LLM integration:

  • Registry / discovery endpoint (well-known MCP manifest): /.well-known/mcp or /api/v1/registry
  • Module manifests: each module has a manifest with name, version, entrypoint, schema of inputs/outputs, and tarball URL
  • Install API: POST /api/v1/modules/install with module name/version
  • Run API: POST /api/v1/modules/run to invoke an installed module with structured input and receive JSON output
  • mbro CLI: scripted headless browser for navigation, scraping, and screenshotting

Quick reference table

ResourcePurpose
/.well-known/mcpPublic MCP hub manifest/discovery
/api/v1/modulesList available modules and metadata
/api/v1/modules/installInstall a module on-demand
/api/v1/modules/runExecute module with input payload
mbro (CLI)Scripted browsing and scraping helper

(Endpoint names are representative — check your deployed server’s API for exact paths.)

Use Cases

  1. LLM-driven product data extraction
    • Scenario: An assistant needs live product price and stock from a retailer.
    • Flow: