home / mcp / love live illustration prompt mcp server

Love Live Illustration Prompt MCP Server

Generates Love Live! illustration prompts by group and series for MCP clients or HTTP requests.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "egawata-odai-lovelive-mcp-server": {
      "command": "node",
      "args": [
        "build/index.js",
        "/PATH/TO/odai-lovelive-mcp-server/data.json"
      ],
      "env": {
        "HOST": "localhost",
        "PORT": "3000",
        "MCP_MODE": "http",
        "RATE_LIMIT_WINDOW_MS": "60000",
        "RATE_LIMIT_MAX_REQUESTS": "100"
      }
    }
  }
}

You can generate Love Live illustration prompts with this MCP Server. It supports local stdio usage through a client like Claude Desktop and remote HTTP access, enabling you to create prompts using groups, member counts, and themed settings.

How to use

Use an MCP client to connect to the server in one of two modes: local stdio mode for on‑your‑machine usage or HTTP mode to expose the service for remote clients. You can request prompts by specifying the number of characters and the groups you want to include. The server will respond with a structured prompt containing characters, setting, time, action, and optional item.

How to install

Prerequisites come from a typical Node.js project setup. Make sure you have Node.js installed (v22.x or newer) along with npm.

# Install dependencies
npm ci

# Build the project
npm run build

Other important content

Configuration options include two modes: local stdio and HTTP remote. The following sections show how to enable and use each mode, along with example commands and endpoints.

Stdio mode usage details

In stdio mode you run a local MCP client that talks to the server via a local process. Here is how to configure the MCP client to start the server from a local data file. Replace the PATH placeholders with the actual directory where you placed the server.

{
  "mcpServers": {
    "odai-lovelive": {
      "command": "node",
      "args": [
        "/PATH/TO/odai-lovelive-mcp-server/build/index.js",
        "/PATH/TO/odai-lovelive-mcp-server/data.json"
      ]
    }
  }
}

Using the stdio server from a client

With the stdio server configured, you can send requests like: determine a prompt with specific members from selected groups. For example: “Liella and 蓮ノ空 members, 3 people, create a prompt.” The server will return a structured response including the characters and the prompt details.

HTTP mode (remote server) setup

To expose the MCP server for remote usage, follow these steps to enable HTTP mode and run the server behind a reverse proxy or directly if needed.

Copy the environment example to a real .env file and edit as needed:

cp .env.example .env
```

```sh
MCP_MODE=http
PORT=3000
HOST=localhost
RATE_LIMIT_WINDOW_MS=60000
RATE_LIMIT_MAX_REQUESTS=100

Start the HTTP server

Load environment variables and start the server using the built index. You can either load the environment from the file or pass values directly.

# Load environment variables from .env and start
export $(cat .env | xargs)
node build/index.js /path/to/data.json
```

```sh
# Or specify variables inline
MCP_MODE=http PORT=3000 node build/index.js ./data.json

Endpoints you can use

Once running, you can access the following endpoints to interact and monitor the service.

SSE endpoint: http://localhost:3000/sse
Health check: http://localhost:3000/health
Message endpoint: http://localhost:3000/message

Nginx reverse proxy guidance (recommended)

For secure public access, place the MCP server behind nginx as a reverse proxy and enable HTTPS. The example below demonstrates a typical configuration for SSL termination and forwarding to the MCP server.

server {
    listen 443 ssl http2;
    server_name your-domain.com;

    ssl_certificate /etc/letsencrypt/live/your-domain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/your-domain.com/privkey.pem;

    add_header Strict-Transport-Security "max-age=31536000" always;

    location /health {
        proxy_pass http://localhost:3000/health;
        proxy_http_version 1.1;
    }

    location /sse {
        proxy_pass http://localhost:3000/sse;
        proxy_http_version 1.1;
        proxy_set_header Connection '';
        proxy_set_header Cache-Control 'no-cache';
        proxy_buffering off;
        proxy_read_timeout 86400;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

    location /message {
        proxy_pass http://localhost:3000/message;
        proxy_http_version 1.1;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

server {
    listen 80;
    server_name your-domain.com;
    return 301 https://$server_name$request_uri;
}

MCP client configuration for HTTP mode

Configure the MCP client to connect via the HTTP endpoint. The example below shows how to point the client to the SSE stream served by the HTTP MCP server.

{
  "mcpServers": {
    "odai-lovelive": {
      "url": "https://your-domain.com/sse"
    }
  }
}

Available tools

promptGeneration

Generates illustration prompts from specified groups and number of prompts requested by the client.

sseEndpoint

Provides a server-sent events stream for real-time prompt data to connected clients.

healthCheck

Endpoint that reports server health and readiness status.

messageApi

Endpoint to receive prompt requests and dispatch generated prompts to the client.