# io.github.seayniclabs/knowledge (pypi · knowledge-bundle-mcp)

Search, read and write your self-hosted Open Notebook knowledge base from an AI assistant.

- Trust score: 59/100 (low)
- Change this week: +1
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-11-05

## Components

- pypi · `knowledge-bundle-mcp`: 59/100 (this document), [markdown](https://verifymcp.io/servers/seayniclabs-knowledge/knowledge-bundle-mcp.md), [page](https://verifymcp.io/servers/seayniclabs-knowledge/knowledge-bundle-mcp)

## Channel facts

- Registry: `pypi`
- Package: `knowledge-bundle-mcp`
- Version: `0.2.1`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-11-05.

- **Supply Chain Security**: 50/100
  - Malware scan not yet available for this package.
  - No known CVEs affecting this package version or its production dependencies.
  - Runs hatchling.build at install time, a recognised build step with no custom scripting around it.
  - 0 of 28 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 100/100
  - Source repository is publicly reachable at the declared URL.
  - Cryptographically verified build provenance (signed, bound to seayniclabs/knowledge).
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 8 days ago).
  - Publishes a security disclosure policy (SECURITY.md).
- **Schema Quality & AI Usability**: 45/100
  - 18% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (fair).
  - Tool/resource definitions use about 1060 tokens (~26/item across 40 items; 8 tools + 32 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 71/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 0% of tool parameters carry a description.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 8 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 10 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### How do I install the io.github.seayniclabs/knowledge MCP server?

io.github.seayniclabs/knowledge runs locally as a PyPI package, launched with uvx knowledge-bundle-mcp. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add seayniclabs-knowledge -- uvx knowledge-bundle-mcp
```

### Cursor

```json
{
  "mcpServers": {
    "seayniclabs-knowledge": {
      "command": "uvx",
      "args": [
        "knowledge-bundle-mcp"
      ]
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "seayniclabs-knowledge": {
      "command": "uvx",
      "args": [
        "knowledge-bundle-mcp"
      ]
    }
  }
}
```

### Codex

```bash
codex mcp add seayniclabs-knowledge -- uvx knowledge-bundle-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "seayniclabs-knowledge": {
      "type": "local",
      "command": [
        "uvx",
        "knowledge-bundle-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add seayniclabs-knowledge --command uvx --arg knowledge-bundle-mcp
```

### Hermes

```yaml
mcp_servers:
  seayniclabs-knowledge:
    command: "uvx"
    args: ["knowledge-bundle-mcp"]
```

### Netclaw

```json
{
  "McpServers": {
    "seayniclabs-knowledge": {
      "Transport": "stdio",
      "Command": "uvx",
      "Arguments": [
        "knowledge-bundle-mcp"
      ]
    }
  }
}
```

### Vellum

```bash
assistant mcp add seayniclabs-knowledge -t stdio -c uvx -a knowledge-bundle-mcp
```

### Other

```json
{
  "mcpServers": {
    "seayniclabs-knowledge": {
      "command": "uvx",
      "args": [
        "knowledge-bundle-mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-11-05 (score 59, −15)

- [security regression] Malware scan: pass → unverified

### 2026-10-30 (score 74, +16)

- [security improvement] Malware scan: unverified → pass
- [functional improvement] Security disclosure: unverified → pass

### 2026-10-29 (score 58, −15)

- [security regression] Malware scan: pass → unverified
- [functional regression] Security disclosure: fail → unverified

### 2026-10-28 (score 73, +15)

- [security improvement] Malware scan: unverified → pass

### 2026-10-27 (score 58)

First indexed and scored.

## MCP tools (8)

### `open_notebook_notebooks` (~50 tokens)

List your notebooks, most recently updated first. Page with offset=<next_offset>.

Input parameters:

- `include_archived` (boolean)
- `limit` (integer)
- `offset` (integer)

Output parameters:

- `has_more` (boolean)
- `limit` (integer)
- `next_offset`
- `notebooks` (array)
- `offset` (integer)

### `open_notebook_search` (~108 tokens)

Search sources and notes. mode 'text' matches keywords; 'vector' matches meaning and
needs an embedding model set up on the server. Limit a search to one notebook with
notebook_id. Page with offset=<next_offset>.

Input parameters:

- `include_notes` (boolean)
- `include_sources` (boolean)
- `limit` (integer)
- `mode` (string)
- `notebook_id`
- `offset` (integer)
- `query` (string, required)

Output parameters:

- `has_more` (boolean)
- `hits` (array)
- `limit` (integer)
- `mode` (string)
- `next_offset`
- `notebook_id`
- `offset` (integer)
- `query` (string)

### `open_notebook_notes` (~59 tokens)

List the notes in one notebook, titles only. Read a note with open_notebook_note_get.
Page with offset=<next_offset>.

Input parameters:

- `limit` (integer)
- `notebook_id` (string, required)
- `offset` (integer)

Output parameters:

- `has_more` (boolean)
- `limit` (integer)
- `next_offset`
- `notebook_id` (string)
- `notes` (array)
- `offset` (integer)

### `open_notebook_note_get` (~49 tokens)

Read one note. Long content is cut at max_chars (up to 50000) and marked truncated.

Input parameters:

- `max_chars` (integer)
- `note_id` (string, required)

Output parameters:

- `content`
- `content_chars` (integer)
- `created` (string)
- `id` (string)
- `note_type`
- `title`
- `truncated` (boolean)
- `updated` (string)

### `open_notebook_source_get` (~58 tokens)

Read one source: its title, topics, extracted text (cut at max_chars, up to 50000) and
the notebooks it belongs to.

Input parameters:

- `max_chars` (integer)
- `source_id` (string, required)

Output parameters:

- `content_chars` (integer)
- `created` (string)
- `embedded` (boolean)
- `embedded_chunks` (integer)
- `full_text`
- `id` (string)
- `notebooks` (array)
- `status`
- `title`
- `topics` (array)
- `truncated` (boolean)
- `updated` (string)

### `open_notebook_note_create` (~93 tokens)

Create a note in a notebook. Without confirm=true it only returns a preview. With
confirm=true you are asked to approve it (unless the notebook is pre-approved in settings);
the assistant cannot approve on your behalf. Text that looks like a credential is refused.

Input parameters:

- `confirm` (boolean)
- `content` (string, required)
- `notebook_id` (string, required)
- `title` (string, required)

Output parameters:

- `approved_by`: "person", "allowlist" or "settings".
- `content_chars` (integer)
- `created` (boolean): True only when the note was saved.
- `embedding_command_id`
- `id`
- `note`
- `notebook_id` (string)
- `notebook_name` (string)
- `preview`: Start of the content, when nothing was saved yet.
- `title` (string)

### `open_notebook_add_source` (~138 tokens)

Add a web link or a local file as a source in one notebook. Give exactly one of url or file_path.
Without confirm=true it only returns a preview. With confirm=true you are asked to approve it; the
assistant cannot approve for you. A local file is always approved by you, with its full path and
size shown, and is never pre-approved in settings. Open Notebook processes the source in the
background: check progress with open_notebook_source_get.

Input parameters:

- `confirm` (boolean)
- `file_path`
- `notebook_id` (string, required)
- `title`
- `url`

Output parameters:

- `approved_by`: "person", "allowlist" or "settings".
- `command_id`: Background job that processes the source.
- `created` (boolean): True only when the source was sent to Open Notebook.
- `kind` (string)
- `note`
- `notebook_id` (string)
- `notebook_name` (string)
- `path`: Full path of the local file. Set only in a preview.
- `size_bytes`: Size of the local file, when kind is file.
- `source_id`
- `status`: Processing status when the source was created, usually 'new'.
- `target` (string): The link without its query string, or the file name.

### `knowledge_modules` (~39 tokens)

Which modules are on, what settings are missing, and what each tool does.
Pass a module name for its full settings list.

Input parameters:

- `module`

Output parameters:

- `config_file` (string)
- `homepage` (string)
- `modules` (array)
- `publisher` (string)
- `skills` (array)
- `version` (string)

## Diagnostics

Captured diagnostic sections: Provenance, Install scripts, Dependencies. The full working is on the page: https://verifymcp.io/servers/seayniclabs-knowledge/knowledge-bundle-mcp#diagnostics

## Score history

- 2026-11-05: 59
- 2026-11-04: 74
- 2026-11-03: 74
- 2026-11-02: 74
- 2026-11-01: 74
- 2026-10-31: 74
- 2026-10-30: 74
- 2026-10-29: 58
- 2026-10-28: 73
- 2026-10-27: 58

## Common questions

### What is the io.github.seayniclabs/knowledge MCP server?

io.github.seayniclabs/knowledge is an MCP server listed in the public MCP registry as io.github.seayniclabs/knowledge. Search, read and write your self-hosted Open Notebook knowledge base from an AI assistant. This page covers its PyPI package (knowledge-bundle-mcp).

### Is the io.github.seayniclabs/knowledge MCP server safe to use?

io.github.seayniclabs/knowledge scores 59 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 5 November 2026. Its build provenance is signed and verified. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the io.github.seayniclabs/knowledge MCP server expose?

io.github.seayniclabs/knowledge exposes 8 tools: open_notebook_notebooks, open_notebook_search, open_notebook_notes, open_notebook_note_get, open_notebook_source_get, and 3 more. Their descriptions and schemas cost roughly 594 tokens of context every time the server is loaded.

### Is the io.github.seayniclabs/knowledge MCP server still maintained?

io.github.seayniclabs/knowledge is still listed as active in the MCP registry. We last reached this channel on 5 November 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

### What licence is the io.github.seayniclabs/knowledge MCP server under?

io.github.seayniclabs/knowledge declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.

## Links

- PyPI project: https://pypi.org/project/knowledge-bundle-mcp/
- Socket report: https://socket.dev/pypi/package/knowledge-bundle-mcp
- Repository: https://github.com/seayniclabs/knowledge
- Changelog RSS feed: https://verifymcp.io/servers/seayniclabs-knowledge/knowledge-bundle-mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/seayniclabs-knowledge/knowledge-bundle-mcp.json
- HTML version of this page: https://verifymcp.io/servers/seayniclabs-knowledge/knowledge-bundle-mcp
