Skip to main content
Glama

Knowledge Base MCP Server

A lightweight personal knowledge base server built with FastMCP. It lets an MCP-compatible client store, search, organize, and summarize research notes from a local JSON file.

Features

  • Add structured notes with titles, content, tags, and timestamps

  • Search notes by keyword across titles and content

  • Filter notes by tag

  • List all tags used in the knowledge base

  • Delete notes by ID

  • View knowledge base statistics, including tag distribution and content depth

  • Expose recent notes and statistics as MCP resources

  • Provide a reusable research-summary prompt for synthesizing saved notes

  • Include an optional .claude research-capture skill for guided note capture workflows

Related MCP server: ai-journal

Project Structure

.
|-- server.py
|-- notes.json
|-- requirements.txt
`-- .claude/
    `-- skills/
        `-- research-capture/
            `-- SKILL.md

Requirements

  • Python 3.10 or newer

  • An MCP-compatible client such as Claude Desktop, Codex, Cursor, or another client that can launch local MCP servers

Installation

Clone the repository and install the Python dependency:

git clone https://github.com/YOUR_USERNAME/knowledge-base-mcp.git
cd knowledge-base-mcp
python -m venv .venv
.venv\Scripts\activate
pip install -r requirements.txt

On macOS or Linux, activate the virtual environment with:

source .venv/bin/activate

Running the Server

Run the MCP server directly:

python server.py

The server uses stdio transport by default through mcp.run(), which is the common setup for local MCP clients.

MCP Client Configuration

Add a server entry to your MCP client configuration. Use the absolute path to server.py on your machine.

Example:

{
  "mcpServers": {
    "knowledge-base": {
      "command": "python",
      "args": ["C:\\Users\\YOUR_NAME\\path\\to\\knowledge-base-mcp\\server.py"]
    }
  }
}

If you use a virtual environment, point the command to the virtual environment's Python executable:

{
  "mcpServers": {
    "knowledge-base": {
      "command": "C:\\Users\\YOUR_NAME\\path\\to\\knowledge-base-mcp\\.venv\\Scripts\\python.exe",
      "args": ["C:\\Users\\YOUR_NAME\\path\\to\\knowledge-base-mcp\\server.py"]
    }
  }
}

Available Tools

Tool

Description

add_note

Add a note with a title, content, and optional tags

search_notes

Search note titles and content by keyword

get_notes_by_tag

Return notes that contain a specific tag

list_tags

List all unique tags in the knowledge base

delete_note

Delete a note by numeric ID

get_statistics

Return note count, tag distribution, date range, and average content length

Available Resources

Resource

Description

notes://recent

Shows the five most recent notes

notes://stats

Shows formatted knowledge base statistics

Available Prompt

Prompt

Description

research_summary(topic)

Creates a structured research summary workflow for a topic

Data Storage

Notes are stored in notes.json next to server.py. Each note uses this structure:

{
  "id": 1,
  "title": "Example note",
  "content": "The note body goes here.",
  "tags": ["example", "research"],
  "created_at": "2026-05-09T20:26:50.618981"
}

Before publishing a public repository, review notes.json and remove any private or sensitive information.

Example Usage

After connecting the server to an MCP client, you can ask the client to:

  • "Add a note about MCP authentication updates with tags MCP and security."

  • "Search my notes for OAuth."

  • "Show all notes tagged research."

  • "List my knowledge base tags."

  • "Create a research summary about MCP architecture."

Development

The project is intentionally small:

  • server.py contains the MCP server, tools, resources, and prompt.

  • notes.json is the local JSON data store.

  • .claude/skills/research-capture/SKILL.md defines an optional workflow for capturing and reviewing research notes.

To check that the server imports correctly:

python -m py_compile server.py

License

MIT

Maintenance

ActivityStale
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    A local MCP server for journaling, organizing, and recalling your work. It captures entries as plain markdown files, indexes them for full-text and structured search, and enables querying via natural language.
    1
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    MCP server for managing a local, domain-agnostic knowledge base using Markdown notes with frontmatter. Enables AI agents to capture, read, search, link, and maintain notes with atomic writes and privacy controls.
    13
    MIT