Koskamo

BrainLLM MCP

A self-hosted MCP server that provides persistent, graph-structured memory for LLMs by integrating with TriliumNext. It manages note structure, lifecycle, and backups while the model supplies content, ensuring data ownership and session continuity.

Package and access

Local package with source-attributed installation metadata. Koskamo does not execute packages during review.

BrainLLM MCP logo, by miisodevCommunity listingLocal stdioSource reviewed; not executedPublished by miisodev
You need:you need a running Trilium and a token first
Vendor documentation

What you can do with it

  • Provide persistent memory across LLM sessions
  • Structure knowledge in a graph within TriliumNext
  • Log session activities and generate daily diaries
  • Maintain user preferences and goals in a master note

Source and maintenance

Community listingRegistry 13.1.2MIT
Last repository push
Latest release
v13.2.1
Maintenance checked

Packages and installation

Source-provided package data. Koskamo has not executed or live-probed this package.

brainllm 13.1.2

npm
brainllm package definition
{
  "version": "13.1.2",
  "transport": "stdio",
  "identifier": "brainllm",
  "registryType": "npm",
  "environmentVariables": [
    {
      "name": "TRILIUM_BASE_URL",
      "format": "string",
      "isRequired": true,
      "description": "Base URL of the TriliumNext instance, e.g. http://localhost:8080"
    },
    {
      "name": "TRILIUM_ETAPI_TOKEN",
      "format": "string",
      "description": "ETAPI token. Required unless TRILIUM_PASSWORD is set. Create one in Trilium under Options → ETAPI."
    },
    {
      "name": "TRILIUM_PASSWORD",
      "format": "string",
      "description": "Alternative to TRILIUM_ETAPI_TOKEN — BrainLLM mints a token on first start and caches it beside brainllm.json."
    },
    {
      "name": "BRAINLLM_MODE",
      "format": "string",
      "default": "core",
      "description": "core (default) exposes the 45 brain-aware tools; full additionally exposes the 33 raw ETAPI tools."
    },
    {
      "name": "BRAINLLM_TZ",
      "format": "string",
      "description": "IANA timezone used to stamp dated notes, e.g. Africa/Johannesburg. Defaults to the host timezone."
    },
    {
      "name": "BRAINLLM_OWNER_PASSWORD",
      "format": "string",
      "description": "Enables the OAuth 2.1 / CIMD endpoints required by claude.ai and other hosted Claude surfaces. This is the password entered on the consent screen when authorizing a client."
    },
    {
      "name": "BRAINLLM_OAUTH_SECRET",
      "format": "string",
      "description": "Optional 32+ character deployment secret for signing OAuth tokens; rotate it to invalidate old tokens."
    },
    {
      "name": "BRAINLLM_PUBLIC_URL",
      "format": "string",
      "description": "Override for the public origin when a proxy rewrites Host. Must exactly match the URL entered in the client."
    },
    {
      "name": "BRAINLLM_ALLOW_UNAUTHENTICATED_HTTP",
      "format": "boolean",
      "description": "Explicit trusted-network-only escape hatch for HTTP mode. Never enable on a public interface."
    },
    {
      "name": "BRAINLLM_TRUST_PROXY",
      "format": "boolean",
      "description": "Trust forwarded host/protocol headers for OAuth discovery only when a trusted reverse proxy sets them."
    }
  ]
}

Tools

Reported by the attributed source; not independently observed by Koskamo.

No tool definitions available.

Maintenance history

Public check and source-refresh events. Editorial and ownership records remain private.

  • · repository · passed · metadata changed · updated
  • · backfill · recorded · Pre-expansion baseline; unobserved rich metadata remains unknown

Connect from your client

Each snippet configures the same source-provided package; replace placeholders before use.

This server is operated by the named third party. Listing and endpoint checks are not an endorsement or a security audit. Review the operator's permissions, terms, and data handling before connecting. How listings are checked and corrected.

Cursor

Merge this local stdio configuration, replace every placeholder environment value, and restart Cursor. Koskamo has not executed this package.
Cursor configuration
{
  "mcpServers": {
    "brainllm-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "brainllm@13.1.2"
      ],
      "env": {
        "TRILIUM_BASE_URL": "<YOUR_TRILIUM_BASE_URL>",
        "TRILIUM_ETAPI_TOKEN": "<YOUR_TRILIUM_ETAPI_TOKEN>",
        "TRILIUM_PASSWORD": "<YOUR_TRILIUM_PASSWORD>",
        "BRAINLLM_MODE": "<YOUR_BRAINLLM_MODE>",
        "BRAINLLM_TZ": "<YOUR_BRAINLLM_TZ>",
        "BRAINLLM_OWNER_PASSWORD": "<YOUR_BRAINLLM_OWNER_PASSWORD>",
        "BRAINLLM_OAUTH_SECRET": "<YOUR_BRAINLLM_OAUTH_SECRET>",
        "BRAINLLM_PUBLIC_URL": "<YOUR_BRAINLLM_PUBLIC_URL>",
        "BRAINLLM_ALLOW_UNAUTHENTICATED_HTTP": "<YOUR_BRAINLLM_ALLOW_UNAUTHENTICATED_HTTP>",
        "BRAINLLM_TRUST_PROXY": "<YOUR_BRAINLLM_TRUST_PROXY>"
      }
    }
  }
}

Cline

Merge this local stdio configuration, replace every placeholder environment value, and restart Cline. Koskamo has not executed this package.
Cline configuration
{
  "mcpServers": {
    "brainllm-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "brainllm@13.1.2"
      ],
      "env": {
        "TRILIUM_BASE_URL": "<YOUR_TRILIUM_BASE_URL>",
        "TRILIUM_ETAPI_TOKEN": "<YOUR_TRILIUM_ETAPI_TOKEN>",
        "TRILIUM_PASSWORD": "<YOUR_TRILIUM_PASSWORD>",
        "BRAINLLM_MODE": "<YOUR_BRAINLLM_MODE>",
        "BRAINLLM_TZ": "<YOUR_BRAINLLM_TZ>",
        "BRAINLLM_OWNER_PASSWORD": "<YOUR_BRAINLLM_OWNER_PASSWORD>",
        "BRAINLLM_OAUTH_SECRET": "<YOUR_BRAINLLM_OAUTH_SECRET>",
        "BRAINLLM_PUBLIC_URL": "<YOUR_BRAINLLM_PUBLIC_URL>",
        "BRAINLLM_ALLOW_UNAUTHENTICATED_HTTP": "<YOUR_BRAINLLM_ALLOW_UNAUTHENTICATED_HTTP>",
        "BRAINLLM_TRUST_PROXY": "<YOUR_BRAINLLM_TRUST_PROXY>"
      }
    }
  }
}

VS Code

Merge this local stdio configuration, replace every placeholder environment value, and restart VS Code. Koskamo has not executed this package.
VS Code configuration
{
  "servers": {
    "brainllm-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "brainllm@13.1.2"
      ],
      "env": {
        "TRILIUM_BASE_URL": "<YOUR_TRILIUM_BASE_URL>",
        "TRILIUM_ETAPI_TOKEN": "<YOUR_TRILIUM_ETAPI_TOKEN>",
        "TRILIUM_PASSWORD": "<YOUR_TRILIUM_PASSWORD>",
        "BRAINLLM_MODE": "<YOUR_BRAINLLM_MODE>",
        "BRAINLLM_TZ": "<YOUR_BRAINLLM_TZ>",
        "BRAINLLM_OWNER_PASSWORD": "<YOUR_BRAINLLM_OWNER_PASSWORD>",
        "BRAINLLM_OAUTH_SECRET": "<YOUR_BRAINLLM_OAUTH_SECRET>",
        "BRAINLLM_PUBLIC_URL": "<YOUR_BRAINLLM_PUBLIC_URL>",
        "BRAINLLM_ALLOW_UNAUTHENTICATED_HTTP": "<YOUR_BRAINLLM_ALLOW_UNAUTHENTICATED_HTTP>",
        "BRAINLLM_TRUST_PROXY": "<YOUR_BRAINLLM_TRUST_PROXY>"
      }
    }
  }
}

Claude Desktop

Merge this local stdio configuration, replace every placeholder environment value, and restart Claude Desktop. Koskamo has not executed this package.
Claude Desktop configuration
{
  "mcpServers": {
    "brainllm-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "brainllm@13.1.2"
      ],
      "env": {
        "TRILIUM_BASE_URL": "<YOUR_TRILIUM_BASE_URL>",
        "TRILIUM_ETAPI_TOKEN": "<YOUR_TRILIUM_ETAPI_TOKEN>",
        "TRILIUM_PASSWORD": "<YOUR_TRILIUM_PASSWORD>",
        "BRAINLLM_MODE": "<YOUR_BRAINLLM_MODE>",
        "BRAINLLM_TZ": "<YOUR_BRAINLLM_TZ>",
        "BRAINLLM_OWNER_PASSWORD": "<YOUR_BRAINLLM_OWNER_PASSWORD>",
        "BRAINLLM_OAUTH_SECRET": "<YOUR_BRAINLLM_OAUTH_SECRET>",
        "BRAINLLM_PUBLIC_URL": "<YOUR_BRAINLLM_PUBLIC_URL>",
        "BRAINLLM_ALLOW_UNAUTHENTICATED_HTTP": "<YOUR_BRAINLLM_ALLOW_UNAUTHENTICATED_HTTP>",
        "BRAINLLM_TRUST_PROXY": "<YOUR_BRAINLLM_TRUST_PROXY>"
      }
    }
  }
}

Let your agent find its tools

Find servers like BrainLLM MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.