# Naumu [Health: Active]

**Category:** 🧠 Knowledge & Memory  
**Repository:** https://github.com/naumu-ai/mcp  
**GitHub Stars:** 0  
**npm Downloads (last month):** 1750  
**Views:** 0  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/naumu

## Description
Search, extend, and act on your team's Naumu knowledge graph: notes, threads, and nodes.

## Tools
Capabilities this server exposes over MCP:

- **naumu_list_graphs** — List every space (graph) the key can access, with ids, names, and roles
- **naumu_create_graph** — Create a new, empty space owned by the authenticated user
- **naumu_list_members** — List a space's members with their roles
- **naumu_whoami** — Return who the calling key is (user, or bot identity with its graph and allowed tools)
- **naumu_get_schema** — Get a space's schema (node types, attributes, connections)
- **naumu_update_schema** — Replace the schema with a full new definition
- **naumu_add_node_type** — Add one node type without resending the whole schema
- **naumu_add_connection** — Add one connection from an existing node type to another
- **naumu_add_attribute** — Add or extend an attribute on an existing node type
- **naumu_list_schema_violations** — Audit a space against its schema and report violations
- **naumu_search** — Hybrid (meaning plus text) search over graph nodes
- **naumu_filter** — Filter nodes by type and attributes, with deterministic and complete results
- **naumu_get_node** — Get one node with its properties, edges, notes, threads, and generated context
- **naumu_list_node_connections** — List a single node's connections
- **naumu_list_dense_nodes** — Find over-connected hub nodes by child count
- **naumu_ask** — Ask @Naumu a question and get a synthesised, node-grounded answer with sources and confidence
- **naumu_add_node** — Create 1-25 nodes in one call
- **naumu_update_node** — Overwrite properties of an existing node
- **naumu_remove_node** — Delete a node and all of its connections (destructive)
- **naumu_add_edge** — Create 1-25 edges between existing nodes
- **naumu_remove_edge** — Delete one edge identified by (source, target, label)
- **naumu_remove_edges_bulk** — Delete 1-100 edges in one atomic call
- **naumu_reparent** — Atomically swap a node's parent edge
- **naumu_batch_reparent** — Reparent 1-25 nodes onto a shared new parent
- **naumu_delegate** — Hand @Naumu a task to carry out asynchronously; returns a `threadId` to poll
- **naumu_list_threads** — List threads by last activity, with an `isParticipant` flag
- **naumu_get_thread** — Fetch one thread plus its human and bot participant rosters
- **naumu_read_thread** — Read a thread's messages; each carries `processing` or `complete` status
- **naumu_post_message** — Post a markdown message in a thread you participate in
- **naumu_create_thread** — bot** Start a new conversation, attach participants, post a first message, optionally file into topics
- **naumu_add_reaction** — Add an emoji reaction to a message (idempotent)
- **naumu_remove_reaction** — Remove your own reaction from a message
- **naumu_typing** — Show or hide your "is typing" indicator in a thread
- **naumu_list_topics** — List a space's topics (filing destinations) for use in `topicIds
- **naumu_create_topic** — Create a topic; admin-only, name must be a lowercase slug
- **naumu_create_note** — Create a note, optionally with its full markdown body in the same call
- **naumu_note_read** — Read a note's current markdown plus the nodes it is tied to
- **naumu_note_append** — Append markdown blocks to the end of a note
- **naumu_note_insert** — Insert markdown immediately after a named heading
- **naumu_note_replace_section** — Replace the body under a named heading
- **naumu_note_delete_section** — Delete a heading and its body (destructive)
- **naumu_note_replace** — Replace an entire note's content (destructive)
- **naumu_note_find_replace** — Literal find and replace within a note
- **naumu_request_attachment_upload** — Get a presigned S3 URL to upload a file, then reference it via `attachmentIds
- **naumu_get_attachment** — Read a chat attachment by `attachmentId
- **naumu_persist_canvas_attachment** — Promote a canvas-bound pending attachment to a persisted one
- **naumu_admission_status** — Show who can auto-join a space and who is waiting for approval
- **naumu_whitelist_members** — Whitelist emails so those people auto-join on sign-in
- **naumu_resolve_admission** — Join (or request to join) the space a repo's `.naumu` file references
- **naumu_resolve_join_request** — Approve or deny a pending join request
- **search** — Search across every accessible space; returns `{ results: [{ id, title, url }] }
- **fetch** — Fetch a node returned by `search`; returns `{ id, title, text, url }

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "naumu": {
    "command": "npx",
    "args": ["-y","-p","@naumu/mcp","naumu-mcp"],
    "env": {
      "NAUMU_API_KEY": "",
      "NAUMU_API_URL": ""
    }
  }
}
```

**Requires environment variables:** `NAUMU_API_KEY`, `NAUMU_API_URL` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What Naumu MCP server does

The Naumu MCP server gives an MCP client access to Naumu spaces, which are knowledge graphs containing typed nodes, attributes, connections, notes, and discussion threads. Agents can discover accessible spaces, inspect members and schemas, search graph content, retrieve individual nodes, and ask questions that return synthesized answers with sources and confidence.

The server also exposes write operations. Agents can create or update nodes, add or remove edges, reparent nodes, modify schemas, and audit schema violations. Thread tools support listing conversations, reading messages, posting markdown, and delegating work to @Naumu for asynchronous processing. The README also documents note editing, topics, attachments, space admission, reactions, and ChatGPT-compatible `search` and `fetch` tools.

Reach for the Naumu MCP server when an agent needs shared organizational context rather than isolated files or a one-off document search. It is suitable for querying team knowledge, maintaining structured graph data, and coordinating work through Naumu threads.

## How it works

Naumu provides two transports with the same main tool surface. The remote endpoint is `https://naumu.ai/api/mcp` and uses OAuth: the client opens a browser for sign-in and approval, and access can later be revoked from Naumu's agent settings. The local package communicates over stdio and is launched on demand by the client with `npx`.

Local authentication uses an API key. User keys identify the calling user, while bot identity keys can receive a restricted tool set based on their permissions. Bot-only operations include starting a new thread with participants and an initial message. Tool results can expose graph structure, node context, thread status, participant information, and sources for grounded answers.

## Setup and configuration

For clients that support remote MCP with OAuth, register the server at `https://naumu.ai/api/mcp`. Claude Code can add it with an HTTP transport command, while Cursor uses an MCP server entry containing the URL. OAuth client credentials should be left blank for Cursor because Naumu handles registration during sign-in.

For local stdio use, create an API key under Naumu Settings > Your agents. The key is shown only once and starts with `nmu_`; using a separate key for each tool is recommended in the documentation. Clients launch the package with `npx -y -p @naumu/mcp naumu-mcp` and pass the key through `NAUMU_API_KEY`.

`NAUMU_API_URL` is optional and defaults to `https://naumu.ai`. It can be used when the client must target a different Naumu API base URL. The package is not installed globally; the MCP client runs it on demand.

## Tools and capabilities

The Naumu MCP server groups its tools around several operations:

- Discover spaces, members, caller identity, schemas, topics, and admission status.
- Search by meaning and text, filter by node type and attributes, inspect connections, and identify dense hub nodes.
- Create, update, delete, and reparent nodes; add or remove individual or bulk edges.
- Replace or extend schemas with node types, attributes, and connections, then report violations.
- Ask @Naumu for node-grounded answers or delegate tasks that return a thread ID for polling.
- Read, create, and update threads, notes, attachments, and topic assignments where the identity has permission.

Several mutations are destructive. Removing a node also removes its connections, and note replacement or section deletion overwrites content. Bulk edge removal is atomic, while node and edge creation support bounded batches.

## Limitations and notes

Remote OAuth is the recommended route when the client supports it, but the local package is intended for CI, bots, external-agent identities, and older stdio-only harnesses. Access depends on the authenticated key and space permissions; bot keys may expose fewer tools than user keys. The client must support the selected transport, and local use requires securely providing the API key.

The package repository is the public home for the published npm package, documentation, issues, and releases; development occurs in Naumu's monorepo. The available tool set includes client-specific compatibility wrappers named `search` and `fetch` for clients that require those literal names.

_Full upstream README: https://allmcps.com/mcp/naumu/readme_

