Neither MCP logo

Neither MCP

Decision memory for Cursor: cited Decision/Rejected/Constraint by file path.

Install Neither MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "neither-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@neitherai/mcp-server@latest"
      ]
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

We couldn’t confirm it starts correctly

The install command installed and started the server, which then stopped for configuration (such as an API key) that our sandbox does not have — expected for servers that connect to your account.

npx -y @neitherai/mcp-server@latest

No response to initialize.

This is an experimental automated check and can have false negatives — missing environment variables, a slow cold install, etc. It doesn’t necessarily mean something’s wrong. Last checked 11d ago.

Overview

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked 1d ago

Recent health check succeeded.

8/8 checks healthy over the last 42d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 13d ago via OSV.dev · @neitherai/mcp-server@latest (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

npm downloads402Package downloads in the last 30 days.
Last commit4d agoMost recent push to the default branch.
Install checkRunsOur sandbox started it; it then asked for an API key or config.
Directory activity7 viewsConfig copies, upvotes, and views on AllMCPs.

From the project README

neither-mcp

AllMCPs Verified

Public source mirror for the Neither CLI and MCP server.

Neither is decision memory for Cursor, Claude Desktop, and Claude Code, with Gemini CLI as an additional install surface. Start / get a workspace API key: https://www.neither.online/start/?product=dev&utm_source=plugin&utm_campaign=neither-mcp. The npm package homepage uses the same /start URL with utm_source=npm.

Install (Node 20+): npx -y @neitherai/mcp-server@latest — then set NEITHER_API_KEY in your MCP config (Cursor mcp.json, Claude Desktop, or Claude Code claude mcp add).

Try Neither in Cursor

Get your workspace key from https://www.neither.online/start/?product=dev&utm_source=plugin&utm_campaign=neither-mcp.

Then Add to Cursor:

Add to Cursor Add to Cursor

Configure the key locally in Cursor (replace REPLACE_WITH_YOUR_WORKSPACE_KEY). Node.js 20+ required.

Then follow the existing own-project walkthrough: llms-install.md (first-use section).

MCP server (Cursor / Claude Desktop / Claude Code)

Canonical install: npx -y @neitherai/mcp-server@latest

Fallback — add this to Cursor MCP settings (mcp.json), Claude Desktop config, or Claude Code user MCP config:

config.json
{
  "mcpServers": {
    "neither": {
      "command": "npx",
      "args": ["-y", "@neitherai/mcp-server@latest"],
      "env": {
        "NEITHER_API_KEY": "REPLACE_WITH_YOUR_WORKSPACE_KEY",
        "NEITHER_API_BASE": "https://api.neither.online"
      }
    }
  }
}
  • NEITHER_API_KEY — required workspace key
  • NEITHER_API_BASE — optional; defaults to https://api.neither.online

Docs: https://www.neither.online/docs/mcp

The root Dockerfile builds this stdio server (not a remote HTTP process) so hosts such as Glama can introspect tools/list. The image sets a placeholder NEITHER_API_KEY so the process can start; inject a real workspace key at run time.

Agent install: llms-install.md

Claude Code (CLI)

Neither is not listed in a Claude Code marketplace card today. Use the same local stdio server via Claude Code’s MCP commands (Node 20+):

Terminal
claude mcp add neither -s user \
  -e NEITHER_API_KEY=sk_ctx_… \
  -e NEITHER_API_BASE=https://api.neither.online \
  -- npx -y @neitherai/mcp-server@latest

Then claude mcp list should show neither as Connected. Put the workspace key only in that -e / config env (never in chat). Restart or open a new Claude Code session, then ask for memory_search on a note you pushed (see llms-install.md).

Equivalent JSON (if you edit Claude Code user MCP config by hand) matches the Cursor / Claude Desktop block below.

Guide: Keeping Claude Code's rules and memory from being rewritten or lost (deny rules, a PreToolUse hook, git, and what survives /compact).

Claude Desktop (MCPB)

One-click local stdio bundle for Claude Desktop. Pack command:

bash
bash scripts/pack-mcpb.sh

That vendors packages/mcp-server into the .mcpb and spawns Claude’s bundled Node (node ${__dirname}/server/index.js). Cursor JSON config still uses npx -y @neitherai/mcp-server@latest.

Sideload steps, env vars, and the Windows + macOS smoke checklist (human; not run in CI): DESKTOP-EXTENSION.md.

This packaging does not mean the extension is listed or submitted to Anthropic.

See also mcpb/README.md. The release-assets workflow attaches the .mcpb and Gemini CLI archives together on a published GitHub Release. Do not remove the .mcpb.

Gemini CLI (additional install)

Primary tested clients remain Cursor and Claude Desktop. Gemini CLI uses the same stdio server (npx -y @neitherai/mcp-server@0.1.3 in gemini-extension.json; Cursor JSON uses @latest). This is not a claim that a Gemini gallery card is live.

bash
gemini extensions install https://github.com/stonianua/neither-mcp

Enter NEITHER_API_KEY when prompted (required). Node.js 20+. MCP stays Disconnected until the key is set.

Gemini CLI 0.59 treats that GitHub URL as a github-release install: it downloads a custom Release asset and only extracts .tar.gz / .zip. Release v0.1.3 attaches linux.neither-mcp.tar.gz, darwin.neither-mcp.tar.gz, and win32.neither-mcp.zip (gemini-extension.json at archive root, npm pin @neitherai/mcp-server@0.1.3) in addition to the Claude Desktop .mcpb. A Release whose only custom asset is the .mcpb still makes 0.59 unpack a non-extension tree, then git clone into the same non-empty temp dir fails — do not remove the .mcpb.

If those Gemini archives misbehave, clone main instead:

bash
gemini extensions install https://github.com/stonianua/neither-mcp --ref=main

Local-path install of this repo (a checkout that already contains gemini-extension.json) also works.

Cursor Marketplace packaging

This repo is a single Cursor Plugin (not a multi-plugin marketplace). Manifests follow cursor/plugin-template and the Cursor Plugins reference:

PathRole
.cursor-plugin/plugin.jsonCursor Plugin manifest + NEITHER_API_KEY user variable
mcp.jsonLocal stdio MCP: npx -y @neitherai/mcp-server@latest

There is no .cursor-plugin/marketplace.json (that file is only for multi-plugin repos). There is no remote MCP URL and no OAuth-only install path.

After a marketplace install, set NEITHER_API_KEY under Plugins → Configure (workspace key from quickstart). Node 20+ and npx must be on PATH. This packaging does not mean Neither is listed on the Cursor Marketplace; a maintainer still submits the public repo at cursor.com/marketplace/publish for manual review.

Try-it sample: https://github.com/stonianua/neither-demo

CLI

Push local docs to decision memory (separate from MCP install):

Terminal
npx -y neither@latest push <path>

Homebrew (macOS / Linuxbrew):

bash
brew install stonianua/neither/neither

Docs: https://www.neither.online/docs/cli

Packages

Published npm packages:

  • @neitherai/mcp-server — MCP server for Cursor, Claude Desktop, Claude Code, and Gemini CLI
  • neither — CLI for pushing local docs to decision memory

Privacy Policy

The Neither privacy policy (collection, use and storage, third-party sharing / subprocessors, retention, and contact) is published at https://www.neither.online/privacy/. Privacy contact: privacy@neither.online. Support: support@neither.online.

This repository’s MCP server, Claude Desktop extension, and Gemini CLI extension are a local stdio process. They are not a remote HTTPS MCP server.

  • Collection. Tool arguments you or the model supply (search queries, repo-relative file paths, snippet ids, and for memory_push snippet text and optional provenance). The workspace API key is sent as an HTTP Bearer token to the Neither API (NEITHER_API_BASE, default https://api.neither.online).
  • Use and storage. The local process uses the key only to call that API. Claude Desktop stores sensitive user_config values in the OS keychain. Neither stores workspace decision memory as described in the privacy policy.
  • Third-party sharing. The connector sends requests to the Neither API host you configure. Neither’s subprocessors and sharing rules are in the privacy policy. This connector does not add a second vendor beyond that API host.
  • Retention. Per the privacy policy, workspace data is kept while the account is active; account or data deletion is removed within 30 days (backup window). The local extension does not keep a second copy of API responses on disk.
  • Contact. privacy@neither.online, support@neither.online, or GitHub issues.

Issues

Report bugs and feature requests at https://github.com/stonianua/neither-mcp/issues.

Repository layout

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Neither MCP

neither-mcp is an MCP server that stores and retrieves cited decision memory for Cursor, Claude Desktop, and Claude Code, with Gemini CLI as an additional install surface. It records Decision, Rejected, and Constraint information by file path, helping coding agents recall prior choices. It runs locally as a Node.js 20+ stdio server.

Install neither-mcp with Node.js 20+ by running `npx -y @neitherai/mcp-server@latest`, then configure the server in Cursor, Claude Desktop, or Claude Code.

neither-mcp requires the `NEITHER_API_KEY` workspace key; `NEITHER_API_BASE` is optional and defaults to `https://api.neither.online`. Add these values to your MCP configuration environment.

Add neither-mcp to Claude Code with `claude mcp add neither -s user -e NEITHER_API_KEY=YOUR_WORKSPACE_KEY -e NEITHER_API_BASE=https://api.neither.online -- npx -y @neitherai/mcp-server@latest`, then verify it with `claude mcp list`.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewNeither MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/neither-mcp?style=directory)](https://allmcps.com/mcp/neither-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/neither-mcp"><img src="https://allmcps.com/api/badge/neither-mcp?style=directory" alt="Neither MCP on AllMCPs" /></a>