Skip to main content

MCP server that gives AI coding agents persistent memory via the Neuroloom API

Project description

neuroloom-mcp

MCP server that gives AI coding agents persistent memory via the Neuroloom knowledge graph API.

Install via pip

Requires Python 3.12+

pip install neuroloom-mcp
neuroloom-mcp install-plugin

Then restart Claude Code. The plugin and MCP server are configured together. Set your API key with /plugins configure neuroloom in Claude Code.

To upgrade:

pip install --upgrade neuroloom-mcp
neuroloom-mcp install-plugin --force

Hosted (Cloud) Connection

The Neuroloom MCP server is available as a hosted service — no local installation required.

Public endpoint: https://mcp.neuroloom.dev/mcp

Prerequisites

You need a Neuroloom API key. Create one at app.neuroloom.dev/settings/api-keys.

Claude Code

Create .mcp.json in your project root (the directory where you run Claude Code):

{
  "mcpServers": {
    "neuroloom": {
      "type": "http",
      "url": "https://mcp.neuroloom.dev/mcp",
      "headers": {
        "Authorization": "Bearer nl_your_api_key_here"
      }
    }
  }
}

Other MCP Clients

Any MCP client that supports HTTP (streamable HTTP) transport can connect using the url transport type and the Authorization header shown above.

Claude Desktop: Claude Desktop currently supports only the stdio transport. To use Neuroloom with Claude Desktop, follow the local stdio setup instructions below.

Verifying Your Connection

Check MCP server connectivity (unauthenticated):

curl https://mcp.neuroloom.dev/health

Expected response: {"status": "ok", "version": "0.1.0"} with HTTP 200.

Validate your API key against the Neuroloom API directly:

curl -H "Authorization: Token nl_your_api_key_here" https://api.neuroloom.dev/api/v1/workspaces/

HTTP 200 confirms the key is valid.

Note: MCP clients send Authorization: Bearer <key>; the Neuroloom API uses Authorization: Token <key>. The MCP server translates between the two schemes automatically.

Troubleshooting

Error Cause Fix
401 authentication_failed API key is invalid or revoked Create a new key at app.neuroloom.dev/settings/api-keys
503 upstream_unavailable Neuroloom API is temporarily down Retry after a moment
Connection refused MCP client doesn't support url (streamable HTTP) transport Check client docs; Claude Desktop only supports stdio
Connection timeout Server unreachable or slow to respond Check https://mcp.neuroloom.dev/health for availability
MCP client says it needs to complete an OAuth flow Client is connecting to an older server version without the OAuth compatibility layer Upgrade to the latest server version and retry

OAuth Compatibility Layer

The server implements GET /.well-known/oauth-protected-resource as specified by RFC 9728. Some MCP clients (including newer versions of Claude Code) probe this endpoint before connecting to determine whether they need to start an OAuth authorization flow.

The handler returns an empty authorization_servers array, which signals to the client that no OAuth flow is needed — authentication is handled via the Authorization: Bearer <key> header that operators and developers already configure.

The implementation lives in neuroloom_mcp/server.py (oauth_protected_resource_handler). The route is registered without authentication middleware so the discovery probe is always reachable, even before a valid API key is presented.

Local Development (stdio)

For local use or Claude Desktop, install and run the MCP server as a stdio process.

Requires uv (Python package manager).

cd mcp && uv sync

Required environment variables

Variable Description
MEMORIES_API_TOKEN API key generated from the Neuroloom dashboard
MEMORIES_WORKSPACE_ID Workspace ID found under Settings > Workspaces
MEMORIES_API_URL Neuroloom API URL (default: https://api.neuroloom.dev)
# MEMORIES_API_URL=https://api.neuroloom.dev  (default, override for local dev)
MEMORIES_API_TOKEN=your_api_key_here
MEMORIES_WORKSPACE_ID=your_workspace_id_here

Claude Code (stdio)

Add to your project's .mcp.json:

{
  "mcpServers": {
    "neuroloom": {
      "type": "stdio",
      "command": "uv",
      "args": ["--directory", "/path/to/neuroloom/mcp", "run", "neuroloom-mcp"],
      "env": {
        "MEMORIES_API_TOKEN": "your_api_key_here",
        "MEMORIES_WORKSPACE_ID": "your_workspace_id_here"
      }
    }
  }
}

Replace /path/to/neuroloom/mcp with the absolute path to the mcp/ directory in your local clone.

Documentation

Full setup guide and configuration reference: https://neuroloom.dev/docs

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

neuroloom_mcp-0.1.0.tar.gz (75.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

neuroloom_mcp-0.1.0-py3-none-any.whl (53.9 kB view details)

Uploaded Python 3

File details

Details for the file neuroloom_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: neuroloom_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 75.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for neuroloom_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 730d932b621aa6114a6f4d6df196df97b7008493aeda4e471a86fa5b570ec6d1
MD5 e2942c3c7659b21b60722d1a6f0f1e73
BLAKE2b-256 9b6226463cd49459de884ec3ea40c8f5e47d01fe58d38c3e2fa8ed205c503b5d

See more details on using hashes here.

Provenance

The following attestation bundles were made for neuroloom_mcp-0.1.0.tar.gz:

Publisher: publish-mcp.yml on endless-galaxy-studios/neuroloom

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file neuroloom_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: neuroloom_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 53.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for neuroloom_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ce5df0632eb1e0c3557a3494b5045e2e019a94cf0ce6b9dd724a94750904841c
MD5 71458a17636289b27be867744deb2604
BLAKE2b-256 3b535e1885148a5f2d61e26e500299af5f3fca730e92461ea086a9840e997120

See more details on using hashes here.

Provenance

The following attestation bundles were made for neuroloom_mcp-0.1.0-py3-none-any.whl:

Publisher: publish-mcp.yml on endless-galaxy-studios/neuroloom

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page