Skip to main content
Glama
FilippoPilo

cortex-connector

README.md
# Cortex โ€” Semantic Memory for AI Agents

> One external brain, model-agnostic, in production. Connect it to Claude in two minutes โ€” free trial, no credit card.

**Cortex** is a patent-pending semantic memory infrastructure developed by [SKYNETLAB](https://skynetlab.net/) (Bergamo, Italy). Connected to your AI assistant as a remote MCP connector, it lets your conversations **save decisions, context and sources โ€” and find them again in every later session**. Your AI remembers, and can show *why* it remembers.

๐ŸŒ Website: [skynetlab-cortex.com](https://skynetlab-cortex.com/) ยท ๐Ÿ“„ [Patent](https://skynetlab-cortex.com/brevetto) ยท ๐Ÿ“Š [Benchmark](https://skynetlab-cortex.com/benchmark) ยท ๐Ÿ“š [Paper](https://skynetlab-cortex.com/paper) ยท ๐Ÿ’ถ [Pricing](https://skynetlab-cortex.com/abbonamenti)

[![MCP Registry](https://img.shields.io/badge/MCP%20Registry-io.github.FilippoPilo%2Fcortex-b8523d)](https://registry.modelcontextprotocol.io) [![Listed on mcpservers.org](https://mcpservers.org/badge.svg)](https://mcpservers.org/servers/filippopilo/cortex-connector)

> ๐Ÿ‡ฎ๐Ÿ‡น Versione italiana: [README.it.md](README.it.md)

![Cortex โ€” one external brain, shared by all your AIs](assets/cortex-site-hero.png)

---

## Why Cortex is not "just another memory plugin"

Most memory tools for AI agents record what the agent did and retrieve similar text later. Cortex models **what is true and how reliable it is**:

| Capability | What it means |
|---|---|
| **Quality Gate on write** | Every memory passes a novelty/redundancy check before being stored. No junk accumulation. |
| **Typed claims & conflict tracking** | Facts are extracted as claims; contradictions between memories are detected and tracked, not silently overwritten. |
| **Knowledge graph** | Memories are linked by entities and typed relations, not just vector similarity. |
| **Coherence metric (ฮจ_C)** | Each memory carries a native coherence score โ€” the system knows how well a memory fits what it already knows. |
| **Memory consolidation ("REM")** | A continuous background cycle consolidates episodic memories into long-term knowledge. |
| **Transparent evidence** | Answers can cite the memories and sources they come from. |

Cortex runs on globally distributed edge infrastructure operated in the **European Union**. The memory engine is covered by Italian patent application **UIBM 102026000014026** (filed 15 May 2026).

## Quick start โ€” Claude (web / desktop / mobile)

Requirements: a Claude plan that supports custom connectors (the "Connectors" entry appears in Settings). No Cortex account needed beforehand โ€” it is created on first sign-in.

1. In Claude open **Settings โ†’ Connectors โ†’ Add custom connector**
2. Paste this URL and confirm:

   ```
   https://skynetlab-cortex-saas-mcp.cortex-320.workers.dev/mcp
   ```

3. Authorize access on the Cortex consent page (Google or email sign-in). Your personal memory space is created automatically, isolated from every other user.

That's it. Talk to Claude as usual: *"Remember that we chose supplier X"*, *"what did we decide about the budget?"*, *"show me the sources for this claim"*. Claude picks the right tool on its own.

## Quick start โ€” Claude Code

```bash
claude mcp add --transport http cortex https://skynetlab-cortex-saas-mcp.cortex-320.workers.dev/mcp
```

Then authenticate when prompted (`/mcp` shows connection status).

## Quick start โ€” other MCP clients (stdio bridge)

For MCP clients that don't support remote connectors natively, use the [`mcp-remote`](https://www.npmjs.com/package/mcp-remote) bridge. Example configuration (see [`examples/`](examples/)):

```json
{
  "mcpServers": {
    "cortex": {
      "command": "npx",
      "args": ["-y", "mcp-remote", "https://skynetlab-cortex-saas-mcp.cortex-320.workers.dev/mcp"]
    }
  }
}
```

## Quick start โ€” this repository as a local stdio server

This repository also ships a small **stdio MCP server** (`server/`) that exposes the Cortex tools locally and forwards every call to the hosted service. It is meant for MCP clients, registries and evaluators that need a local process: it starts, lists its seven tools and answers introspection with no configuration at all; tool calls are forwarded when an access token is set.

```bash
git clone https://github.com/FilippoPilo/cortex-connector.git
cd cortex-connector
npm install
CORTEX_ACCESS_TOKEN=<your token> node server/index.js
```

Or with Docker:

```bash
docker build -t cortex-connector .
docker run -i --rm -e CORTEX_ACCESS_TOKEN=<your token> cortex-connector
```

| Variable | Meaning |
|---|---|
| `CORTEX_ACCESS_TOKEN` | Bearer token for the hosted connector (the OAuth access token issued at sign-in, for example the one `mcp-remote` stores). Optional: without it the server only lists tools. |
| `CORTEX_MCP_URL` | Remote endpoint, defaults to the hosted Cortex connector. |

`npm test` runs a self test (initialize, tools/list, one call without token).

## The seven tools

| Tool | Type | Description |
|---|---|---|
| **Search memories** | read | Semantic search across your memories |
| **Fetch memory** | read | Full detail of one memory, with its sources |
| **Recall & synthesize** | read | Narrative synthesis of what Cortex knows about a topic |
| **Show conflicts** | read | Tracked contradictions between memories |
| **Save memory** | write | Stores a memory โ€” after a quality check against duplicates and redundancy |
| **Write status** | read | Outcome of a queued save: quality-gate verdict and any open conflicts |
| **Forget memory** | destructive | Deletes a memory โ€” always with explicit confirmation |

## Data & privacy

Memories are personal: each user only sees their own. They are exportable and deletable on request, and the infrastructure operates in the European Union. Details: [Privacy Policy](https://skynetlab-cortex.com/privacy).

To disconnect, simply remove the connector from your client's settings; your memories remain in your Cortex account until you request their deletion.

## Is this open source?

The Cortex memory engine is a **hosted, patent-pending service** โ€” its source code is not published. This repository contains the public documentation, the client-side configuration examples and a small stdio bridge (`server/`) for connecting to it. Everything in this repository is released under the [MIT License](LICENSE).

## Support

๐Ÿ“ง info@skynetlab.net ยท [Contact page](https://skynetlab-cortex.com/contatti)

---

*Cortex is a [SKYNETLAB](https://skynetlab.net/) product โ€” independent research lab & deeptech studio, Bergamo, Italy. Founder: Filippo Pilotta ([ORCID 0009-0000-5002-4199](https://orcid.org/0009-0000-5002-4199)).*

*Some content and product outputs are generated or assisted by artificial intelligence, pursuant to Art. 50 of Reg. (EU) 2024/1689. [AI transparency](https://skynetlab-cortex.com/trasparenza-ai).*

TDQS

A3.9/5.0

Scored across 7 tools

Disambiguation4/5

Most tools have distinct purposes: conflicts, forget, write, status, and fetch are clear. However, search, fetch, and recall all involve retrieving memory content and could overlap in practice, requiring careful description reading to pick the right one.

Naming Consistency2/5

Naming is inconsistent: some tools use the cortex_ prefix (cortex_conflicts, cortex_forget, cortex_recall, cortex_write, cortex_write_status) while others do not (search, fetch). The pattern is not uniform, and cortex_write_status breaks the simple verb_noun structure.

Tool Count5/5

Seven tools is a reasonable, focused set for a persistent memory server. Each tool covers a needed operation without feeling bloated or sparse.

Completeness4/5

The toolset covers the core memory lifecycle: write, read via search/fetch/recall, delete via forget, plus conflict and status handling. An explicit update or list-all operation is missing, but write can likely serve as upsert and search covers listing, so the surface is largely complete.

Maintenance

ActivityMaintained
ResponsivenessNo issues