mcp-limitless-server

midnight480/mcp-limitless-server

3.2

If you are the rightful owner of mcp-limitless-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to dayong@mcphub.com.

An MCP (Model Context Protocol) server for the Limitless AI API, providing tools to interact with lifelogs and chats through MCP-compatible clients.

Tools
7
Resources
0
Prompts
0

MCP Limitless Server

An MCP (Model Context Protocol) server for the Limitless AI API. This server provides tools to interact with your Limitless lifelogs and chats through MCP-compatible clients. Built with Python and the MCP SDK.

Features

  • Lifelogs Management: Get, search, and delete lifelog entries
  • Chats Management: Get and delete chat conversations
  • Flexible Filtering: Support for date/time ranges, search queries, pagination, and more
  • Docker Support: Run as a Docker container
  • uvx Support: Run without Docker using uvx

Prerequisites

  • Python 3.10 or higher
  • Docker (optional, for Docker-based usage)
  • A Limitless API key (see How to Get API Key)

Installation

Using Docker (Recommended)

  1. Build the Docker image:
docker build -t mcp-limitless-server .
  1. Run the server:
docker run -it --rm -e LIMITLESS_API_KEY=your-api-key-here mcp-limitless-server

Using uvx (No Docker Required)

Install and run using uvx:

uvx mcp-limitless-server --api-key your-api-key-here

Or install from source:

pip install -e .

Then run:

python -m mcp_limitless_server

Make sure to set the LIMITLESS_API_KEY environment variable:

export LIMITLESS_API_KEY=your-api-key-here
python -m mcp_limitless_server

How to Get API Key

  1. Visit Limitless AI
  2. Sign in to your account
  3. Navigate to the API settings page
  4. Generate a new API key
  5. Copy the API key and use it as the LIMITLESS_API_KEY environment variable or pass it as a parameter

MCP Client Configuration

Claude Desktop

Add the following to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "limitless": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "LIMITLESS_API_KEY=your-api-key-here",
        "mcp-limitless-server"
      ]
    }
  }
}

For uvx (no Docker):

{
  "mcpServers": {
    "limitless": {
      "command": "uvx",
      "args": [
        "mcp-limitless-server",
        "--api-key",
        "your-api-key-here"
      ]
    }
  }
}

Available Tools

Lifelogs

  • get_lifelogs: Get a list of lifelogs with optional filtering

    • Supports date/time filtering, search, pagination, and more
    • By default, returns lightweight data (titles and metadata only) to reduce response size
    • Parameters: timezone, date, start, end, cursor, direction, include_markdown (default: False), include_headings (default: True), is_starred, limit (default: 100, max: 100), include_contents (default: False), search
  • get_lifelog: Get a single lifelog entry by ID

    • Parameters: lifelog_id (required), timezone, include_markdown, include_headings, include_contents
  • delete_lifelog: Delete a lifelog entry by ID

    • Parameters: lifelog_id (required)

Chats

  • get_chats: Get a list of chats (ask-ai conversations)

    • Supports pagination and filtering
    • Parameters: cursor, direction, limit, timezone, is_scheduled, global_prompt_id
  • get_chat: Get a single chat by ID

    • Parameters: chat_id (required), timezone
  • delete_chat: Delete a chat by ID

    • Parameters: chat_id (required)

Audio

  • download_audio: Download audio from your Pendant as Ogg Opus files for a specific time range
    • The requested time range must be 2 hours (7,200,000 ms) or less
    • Returns base64-encoded audio data
    • Parameters: start_ms (required), end_ms (required), audio_source (default: "pendant")

API Specification

This MCP server implements the Limitless API as documented in:

Rate Limiting

The Limitless API implements rate limiting:

  • Default Rate Limit: 180 requests per minute per API key
  • Rate Limit Response: Returns 429 Too Many Requests with retry information when exceeded

Development

Setup

  1. Clone the repository:
git clone <repository-url>
cd mcp-limitless-server
  1. Install dependencies:
pip install -r requirements-dev.txt

Running Tests

pytest

Linting

ruff check .

Formatting

ruff format .

Project Structure

mcp-limitless-server/
├── src/
│   └── mcp_limitless_server/
│       ├── __init__.py
│       ├── __main__.py
│       ├── client.py          # Limitless API client
│       ├── models.py          # Data models
│       └── server.py          # MCP server implementation
├── tests/
│   ├── test_client.py
│   └── test_server.py
├── Dockerfile
├── pyproject.toml
├── requirements.txt
├── README.md
└── README_ja.md

License

MIT License