Marginalia MCP Server

Marginalia MCP Server

An MCP (Model Context Protocol) server that provides access to Marginalia Search, a search engine focused on finding non-commercial content and hidden gems of the internet.

Features

  • Search the web using Marginalia Search API
  • Configurable search parameters including index and result count
  • Rate limiting protection with helpful error messages
  • Built using the MCP SDK for seamless integration

Installation

npm install npm run build

Configuration

The server can be configured using environment variables:

  • MARGINALIA_API_KEY: Your Marginalia Search API key (optional, defaults to public access)

To request a dedicated API key, contact: kontakt@marginalia.nu

Usage

The server provides the following MCP tool:

Search the web using Marginalia Search with the following parameters:

  • query (required): Search query string
  • index (optional): Search index number (corresponds to dropdown in main GUI)
  • count (optional): Number of results to return (1-100, default: 10)

Example usage through MCP:

const result = await mcp.useTool("marginalia", "search", { query: "interesting non-commercial websites", count: 5 });

Response Format

The search results are returned in the following format:

{ "query": "your search query", "license": "license information", "results": [ { "url": "result url", "title": "page title", "description": "page description" } // ... more results ] }

Error Handling

The server includes robust error handling for:

  • Rate limiting (503 responses)
  • Invalid requests
  • Network errors
  • API-specific errors

Adding Text-to-Speech Support

To enable text-to-speech capabilities using the say MCP server, add the following configuration:

For Cline (VSCode Extension)

Add to ~/Library/Application Support/Code/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json:

{ "mcpServers": { "say": { "command": "node", "args": ["/Users/barton/worlds/servers/src/say-mcp-server/build/index.js"] } } }

For Claude Desktop

Add to ~/Library/Application Support/Claude/claude_desktop_config.json:

{ "mcpServers": { "say": { "command": "node", "args": ["/Users/barton/worlds/servers/src/say-mcp-server/build/index.js"] } } }

The say MCP server provides text-to-speech capabilities with multiple voices and languages. Available tools:

  • speak: Read text aloud using specified voice and rate
  • list_voices: List all available text-to-speech voices

License

MIT License - See LICENSE file for details

A
security – no known vulnerabilities (report Issue)
A
license - permissive license (MIT License)
A
quality - confirmed to work

Provides access to Marginalia Search for discovering non-commercial and independent web content, returning unique sites with URLs, titles, and descriptions.

  1. Features
    1. Installation
      1. Configuration
        1. Usage
          1. search
          2. Response Format
            1. Error Handling
              1. Adding Text-to-Speech Support
                1. For Cline (VSCode Extension)
                  1. For Claude Desktop
                  2. License