Token导航 LogoToken导航

MCP Server · 文档知识

Mc Pedia

MCPedia是一个为AI编程代理(如Cursor、Codex、Claude等)提供持久化知识存储、搜索和管理的服务,通过Model Context Protocol(MCP)标准实现知识条目(技能、规则、模式等)的共享与复用。

stdio官方级别未说明来源级核验工具 8
知识管理持久化存储GoClaudeClaude DesktopCursorVS Code

快速开始

作者 / 组织
pouriya
提供方
pouriya
运行时
Docker

工具数量

8

来源目录标注

资源数量

0

来源目录标注

提示词数量

0

来源目录标注

GitHub Star

3

仓库热度

收录来源

1 个

MCP World

选型结论

Mc Pedia 属于文档知识类 MCP Server,公开资料标注 8 个工具,通过stdio 本地进程接入,适配 Claude Desktop、Claude、Cursor,有可以直接复制的安装命令;接入前要先准备 访问 Token。

分类

文档知识

传输方式

stdio

认证方式

访问 Token

部署方式

公开资料未说明

安装与配置

安装命令

docker run -p 8080:8080 \

公开命令不是通用的启动方式,拼不出可靠配置示例;请在客户端 MCP 配置里按官方文档填写 command 和 args。

上手步骤

  1. 1

    准备运行环境

    stdio 服务在本地起进程,需要先装好 Docker,再按安装命令拉取依赖。

  2. 2

    安装服务

    复制下面的安装命令执行;命令里带占位符的位置换成自己的密钥或路径。

  3. 3

    写入客户端配置

    在客户端的 MCP 配置里填启动命令和参数,保存后完全退出客户端再打开,让新配置生效。

  4. 4

    验证是否可用

    连接成功后客户端会列出 8 个工具,随便调一个只读工具确认能返回结果。

接入前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

详细介绍

MCPedia

通过以下方式为AI代理提供知识库服务器 模型上下文协议 (MCP)。MCPedia存储、搜索和管理可重用的知识条目——技能、规则、模式、指南和参考——可供Cursor、Codex、Claude等AI编码代理通过MCP标准访问。

为什么选择MCPedia?

Cursor、Claude和Codex等AI编码代理功能强大,但它们在会话之间会忘记一切。MCPedia为他们提供 持久内存。你只教你的代理一次东西(编码模式、项目约定、调试技巧),它就会永远记住它。

你能用它做什么?

  • 保存知识 --捕获编码模式、项目规则、风格指南或您的代理应该知道的任何内容
  • 搜索和检索 --您的代理可以按关键字搜索,按语言/域/项目筛选,或按上下文提取条目
  • 跨代理共享 --相同的知识库适用于任何兼容MCP的代理,因此切换工具并不意味着重新开始
  • 保持控制 --当您不希望代理进行更改时锁定数据库,当您进行更改时解锁数据库

把它想象成一个个人维基,你的人工智能代理可以自动读写。

核心概念

条目

条目是MCPedia的主要知识单元。每个条目都有:

  • 独特 鼻涕虫 (URL安全标识符,例如。 rust-error-handling)
  • A. 标题 可选 描述
  • 内容 Markdown格式(最大32 KB)
  • 亲切的 分类: skill, rule, context, pattern, reference,或 guide
  • 可选元数据: 语言, 领域, 项目
  • 一个或多个 标签 用于分类
  • 自动 版本 跟踪和 时间戳

例子:

{
  "slug": "rust-error-handling",
  "title": "Rust Error Handling",
  "description": "Idiomatic error handling patterns in Rust",
  "kind": "skill",
  "language": "rust",
  "domain": "",
  "project": "",
  "tags": ["rust", "errors", "result"],
  "version": 1,
  "content": "# Rust Error Handling\n\nUse `Result` for recoverable errors..."
}

标签

标签为条目提供了灵活的分类。每个标签跟踪有多少条目引用它,从而发现相关知识。标签是自动管理的——它们在首次使用时创建,在不再被引用时被清理。

使用统计

MCPedia跟踪每个条目的使用统计数据:

  • 阅读:当通过slug或上下文过滤器获取条目时递增
  • 搜索:当条目出现在全文搜索结果中时递增
  • 更新:修改条目时递增

这使代理能够了解哪些知识最常被访问。

写入锁定

MCPedia支持数据库级写锁,以防止AI代理在需要受控访问时修改知识库。锁定时,所有写入操作(create_entry, update_entry, delete_entry)被拒绝。该锁由SHA-256哈希令牌保护,只有原始令牌的持有者才能解锁。

API

MCPedia实施MCP协议版本 2025-11-25 使用JSON-RPC 2.0通过HTTP。服务器在以下位置公开了一个端点 POST /mcp.

工具

  • search_entries

- 使用SQLite FTS5对条目进行全文搜索,并突出显示代码段 - 输入: - query (字符串,必填):搜索查询文本 - language (字符串,可选):按编程语言筛选结果(例如。 "rust", "python") - domain (字符串,可选):按域筛选结果(例如。 "backend", "security") - kind (字符串,可选):按类型筛选结果("skill", "rule", "context", "pattern", "reference", "guide") - tag (字符串,可选):按特定标记筛选结果 - project (字符串,可选):按项目段块过滤结果 - limit (整数,可选):返回的最大结果数(默认值:10,最大值:50) - 返回带有搜索片段的匹配条目(内容不完整)

  • get_entry

- 按单个条目的唯一slug检索单个条目,包括完整内容 - 输入: - slug (string,必填):条目的唯一slug标识符 - 返回包含所有元数据、标签和完整Markdown内容的完整条目 - 在使用统计中增加条目的读取计数

  • get_entries_by_context

- 检索与上下文过滤器匹配的条目,包括完整内容 - 输入: - language (字符串,可选):按编程语言筛选 - domain (字符串,可选):按域筛选 - kind (字符串,可选):按条目类型筛选 - tags (字符串数组,可选):按标签筛选——所有指定的标签都必须出现在条目上 - project (字符串,可选):按项目段块过滤 - limit (整数,可选):最大结果数(默认值:20,最大值:50) - 返回包含内容的完整条目,适合将知识注入代理上下文 - 递增所有返回条目的读取计数

  • list_entries

- 列出所有没有内容的条目,并使用可选的元数据过滤器 - 输入: - kind (字符串,可选):按条目类型筛选 - language (字符串,可选):按编程语言筛选 - domain (字符串,可选):按域筛选 - project (字符串,可选):按项目段块过滤 - 返回不带内容的条目元数据(段符、标题、描述、种类、语言、域、项目)

  • list_tags

- 列出知识库中的所有标签及其使用次数 - 无需输入 - 返回一个标签数组,每个标签都有 name 和 count 相关条目

  • create_entry

- 在数据库中创建新的知识条目 - 输入: - slug (字符串,必填):唯一段塞标识符(URL安全) - title (字符串,必填):人类可读的标题 - content (字符串,必填):Markdown内容(最大32KB) - description (字符串,可选):条目的简短摘要 - kind (string,可选):条目类型--其中之一 "skill", "rule", "context", "pattern", "reference", "guide" (默认值: "skill") - language (字符串,可选):条目所涉及的编程语言 - domain (字符串,可选):域或区域(例如。 "backend", "testing") - project (string,可选):此条目所属的项目段塞 - tags (字符串数组,可选):分类标签 - 返回已创建的条目,并填充所有字段 - 当数据库写锁处于活动状态时被阻止

  • update_entry

- 更新现有条目——仅修改提供的字段 - 输入: - slug (string,必填):要更新的条目的字符串 - title (字符串,可选):新标题 - content (字符串,可选):新Markdown内容(最大32KB) - description (字符串,可选):新描述 - kind (字符串,可选):新种类分类 - language (字符串,可选):新的编程语言 - domain (字符串,可选):新建域 - project (字符串,可选):新项目段塞 - tags (字符串数组,可选):新标签--替换所有现有标签 - 返回更新后的条目;自动递增版本并更新时间戳 - 当数据库写锁处于活动状态时被阻止

  • delete_entry

- 通过slug永久删除条目 - 输入: - slug (string,必填):要删除的条目的字符串 - 返回确认消息 - 级联删除会删除相关标签和使用统计信息 - 当数据库写锁处于活动状态时被阻止

资源

MCPedia将条目作为MCP资源公开,允许客户端使用标准资源URI浏览和读取知识条目 how-to-use 条目始终可用:如果您没有添加自己的条目,则提供默认内容;创建一个替代它。如何使用资源始终是第一位的 resources/list 也可在 mcpedia://how-to-use (参见 resources/templates/list).

  • resources/list

- 返回所有条目作为资源的分页列表 - 每种资源包括: - uri: mcpedia://entries/ - name:入口塞 - description:条目描述 - mimeType: text/markdown - 分页:每页50个条目,基于光标(base64编码偏移)

  • resources/read

- 通过资源URI读取单个条目的内容 - 输入: uri (字符串)格式 mcpedia://entries/ - 返回条目的完整Markdown内容

  • resources/templates/list

- 返回URI模板: - mcpedia://how-to-use --AI代理的使用说明(请先阅读) - mcpedia://entries/{slug} --通过slug访问条目

提示

MCPedia提供了三个内置提示,帮助AI代理应用、审查和获取知识。

  • apply-entry

- 将知识条目的指南应用于当前任务 - 论据: - slug (string,必填):申请条目的字符串 - 从数据库中获取条目,并返回一条嵌入条目完整内容的提示消息,指示代理遵循条目的指导方针

  • review-with-entry

- 根据知识条目的指导方针审查代码 - 论据: - slug (string,必填):要审查的条目 - 获取条目并返回提示消息,指示代理根据条目的规则和最佳实践评估代码

  • save-learnings

- 从当前任务中提取并保存可重用的知识 - 无需任何论据 - 返回一个提示,指示代理从当前会话中识别可重用的模式、技术或规则,并使用 create_entry 工具

配置

MCPedia是通过环境变量和/或CLI标志配置的。标志优先于环境变量。

环境变量CLI标志默认值描述
MCPEDIA_DB--dbmcpedia.dbSQLite数据库文件的路径
MCPEDIA_ADDR--addr:8080HTTP服务器侦听地址
MCPEDIA_TOKEN--token*(空)*用于身份验证的承载令牌(空=无身份验证)

设置令牌后,所有HTTP请求都必须包含 Authorization: Bearer 头球这可以保护MCP端点免受未经授权的访问。

CLI命令

MCPedia以单个二进制文件的形式发布,其中包含用于数据库管理、服务器操作和条目管理的子命令。

mcpedia  [flags]

Commands:
  init      Create and initialize the database
  serve     Start the MCP HTTP server
  add       Add a new knowledge entry
  edit      Edit an existing entry
  list      List entries with optional filters
  lock      Lock the database (prevent AI writes)
  unlock    Unlock the database
  export    Export all entries as Markdown files
  import    Import a single entry from an export-format Markdown file

mcpedia init

使用所需的模式创建和初始化SQLite数据库。

mcpedia init --db ./mcpedia.db

mcpedia serve

启动MCP HTTP服务器,准备接受来自MCP客户端的JSON-RPC 2.0请求。

mcpedia serve --db ./mcpedia.db --addr :8080 --token my-secret-token

mcpedia add

添加新的知识条目。内容是从文件中读取的。

mcpedia add \
  --slug rust-error-handling \
  --title "Rust Error Handling" \
  --description "Idiomatic error handling patterns in Rust" \
  --file content.md \
  --kind skill \
  --language rust \
  --tags rust,errors,result

要自定义使用指南,请添加您自己的 how-to-use entry——它取代了内置的默认值。参考实现在 how-to-use.md 在项目根:

mcpedia add --slug how-to-use --title "How to Use MCPedia" \
  --description "Instructions for AI agents: read this first" \
  --file how-to-use.md --kind guide --tags mcpedia,usage,ai-agents

mcpedia edit

编辑现有条目。仅更新提供的字段。

mcpedia edit \
  --slug rust-error-handling \
  --title "Rust Error Handling (Updated)" \
  --file updated-content.md \
  --tags rust,errors,result,anyhow

mcpedia list

列出具有可选筛选器的条目。

mcpedia list --language rust --kind skill

mcpedia lock / mcpedia unlock

锁定数据库以防止AI代理创建、更新或删除条目。当您希望代理具有只读访问权限时非常有用。

mcpedia lock --db ./mcpedia.db --token my-lock-secret
mcpedia unlock --db ./mcpedia.db --token my-lock-secret

mcpedia export

使用YAML frontmatter将所有条目导出为Markdown文件。

mcpedia export --db ./mcpedia.db --out ./backup

每个条目都写在 .md:

---
title: "Rust Error Handling"
kind: skill
language: rust
domain: ""
project: ""
tags: [rust, errors, result]
description: "Idiomatic error handling patterns in Rust"
---

# Rust Error Handling

Use `Result` for recoverable errors...

mcpedia import

从使用与相同格式的Markdown文件导入单个知识条目 mcpedia export (YAML frontmatter之间 --- 分隔符,然后是正文)。入口 鼻涕虫 取自文件名(例如。 rust-error-handling.md → slug rust-error-handling).如果带有该slug的条目已经存在,import会打印一个错误并退出;如果要替换现有条目,请先删除它。

mcpedia import --db ./mcpedia.db --file ./backup/rust-error-handling.md

文件必须以开头 ---,包含所需的frontmatter密钥(title, kind, language, domain, project, tags; description 是可选的),并使用关闭 --- 在内容之前。未知密钥或无效格式会导致明显错误并中止。

种子数据(学习)

这 learnings/ 该目录包含Rust、Go和Python的每种语言种子Markdown文件(导出格式)。要将它们加载到mcpedia中:

make -C learnings build

用以下命令覆盖二进制文件或数据库 mcpedia_exe 和 mcpedia_db (默认值: mcpedia 和 mcpedia.db).看 learnings/README.md 用于目录布局。

使用游标

将MCPedia添加为Cursor配置中的MCP服务器(.cursor/mcp.json):

二进制

{
  "mcpServers": {
    "mcpedia": {
      "url": "http://localhost:8080/mcp",
      "env": {
        "MCPEDIA_TOKEN": "your-secret-token"
      }
    }
  }
}

然后启动服务器:

mcpedia serve --addr :8080 --token your-secret-token

码头工人

{
  "mcpServers": {
    "mcpedia": {
      "url": "http://localhost:8080/mcp"
    }
  }
}

然后通过Docker运行:

docker run -p 8080:8080 \
  -v $(pwd)/mcpedia.db:/mcpedia.db \
  -e MCPEDIA_DB=/mcpedia.db \
  -e MCPEDIA_TOKEN=your-secret-token \
  ghcr.io/pouriya/mcpedia:latest serve

使用Claude Desktop

将MCPedia添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "mcpedia": {
      "url": "http://localhost:8080/mcp"
    }
  }
}

使用VS代码

将配置添加到 .vscode/mcp.json 在您的工作区或用户级MCP配置中(命令面板> MCP: Open User Configuration):

{
  "servers": {
    "mcpedia": {
      "url": "http://localhost:8080/mcp"
    }
  }
}

安装

预构建二进制文件

从以下网址下载适用于您平台的最新版本 页面:

平台二进制
macOS(arm64)mcpedia-*-darwin-arm64
Linux(amd64)mcpedia-*-linux-amd64
Windows(amd64)mcpedia-*-windows-amd64.exe

码头工人

从GitHub容器注册表中提取:

docker pull ghcr.io/pouriya/mcpedia:latest

使用持久数据库运行:

docker run -p 8080:8080 \
  -v $(pwd)/mcpedia.db:/mcpedia.db \
  -e MCPEDIA_DB=/mcpedia.db \
  -e MCPEDIA_TOKEN=your-secret-token \
  ghcr.io/pouriya/mcpedia:latest serve

从源代码构建

需要Go 1.24+。

git clone https://github.com/pouriya/mcpedia.git
cd mcpedia

# Development build
make dev

# Or release build (stripped, cross-platform)
make release GOOS=linux GOARCH=amd64

初始化并启动:

./mcpedia init
./mcpedia serve --addr :8080 --token my-secret-token

在本地构建Docker镜像

make docker

这创造了 mcpedia:latest 和 mcpedia: 图像。

建筑

┌─────────────────────────────────────────────┐
│              MCP Clients                    │
│  (Cursor, Codex, Claude, VS Code, etc.)    │
└──────────────────┬──────────────────────────┘
                   │ HTTP POST /mcp
                   │ JSON-RPC 2.0
                   ▼
┌─────────────────────────────────────────────┐
│           mcpedia binary                    │
│                                             │
│  ┌──────────────┐    ┌──────────────────┐   │
│  │ CLI Commands  │    │  MCP HTTP Server │   │
│  │ (init, add,   │    │  (tools,         │   │
│  │  edit, list,  │    │   resources,     │   │
│  │  lock, export)│    │   prompts)       │   │
│  └──────┬───────┘    └────────┬─────────┘   │
│         │                     │             │
│         ▼                     ▼             │
│  ┌──────────────────────────────────────┐   │
│  │         SQLite DB Layer              │   │
│  │  (FTS5 search, tags, stats, lock)    │   │
│  └──────────────────────────────────────┘   │
└─────────────────────────────────────────────┘

项目结构

mcpedia/
├── cmd/mcpedia/
│   └── main.go              # CLI entry point, all subcommands
├── internal/
│   ├── db/
│   │   ├── db.go            # Database operations (CRUD, search, stats, lock)
│   │   └── schema.sql       # SQLite schema (embedded via go:embed)
│   └── mcp/
│       └── mcp.go           # MCP HTTP server (JSON-RPC 2.0, tools, resources, prompts)
├── test/
│   └── integration_test.go  # Comprehensive integration tests
├── Makefile                 # Build automation
├── Dockerfile               # Multi-stage Docker build
├── go.mod                   # Go module (pure Go SQLite, no CGO dependency at runtime)
└── go.sum

关键设计决策

  • 纯Go SQLite 通过 modernc.org/sqlite --无CGO运行时依赖性,单一静态二进制文件
  • 单端点 (POST /mcp)--标准MCP流式HTTP传输
  • MCP协议 2025-11-25 --完全符合工具、资源和提示
  • FTS5全文搜索 --快速、排名搜索,突出显示代码片段
  • 最小代码库 --3个Go源文件+1个SQL模式,没有不必要的抽象
  • 会话管理 --基于UUID的会话 Mcp-Session-Id 头球
  • 供应商依赖关系 --无需网络访问即可复制构建

数据库模式

MCPedia使用SQLite和下表:

表目的
entries带有符号、标题、内容、元数据的知识条目
tags唯一标签名称
entry_tags条目和标签之间的多对多关系
entry_stats使用统计(读取、搜索、更新)
lock写入锁定状态(单行)
entries_fts用于全文搜索的FTS5虚拟表

约束和特征:

  • CHECK(length(content) <= 32768) --32 KB内容大小限制
  • 条目上独特的slug约束
  • 带的外键 CASCADE 删除
  • FTS5同步通过 AFTER INSERT/UPDATE/DELETE 触发器
  • 索引 language, domain, kind, project 列

安全

  • 承载令牌身份验证 --可选但推荐;保护MCP端点
  • 写锁机制 --SHA-256哈希令牌可防止未经授权的修改
  • 参数化SQL查询 --防止SQL注入
  • 内容大小限制 --最大32KB防止滥用
  • 会话验证 --初始化后的请求必须包含有效的 Mcp-Session-Id

发展

# Run tests with race detection
make test

# Run tests with coverage report
make test-cover

# Format check
make fmt

# Go vet
make vet

# Clean build artifacts
make clean

许可证

此MCP服务器根据BSD 3条款许可证获得许可。版权所有(c)2022,Pouriya Jim Jahanbakhsh。有关更多详细信息,请参阅 许可证 项目存储库中的文件。

工具与能力

工具数量

8

资源数量

0

提示词数量

0

能力标签

知识管理Go本地部署AI编程辅助持久化存储多代理协作代码知识库

支持客户端

Claude DesktopClaudeCursorVS Code

数量来自来源目录的标注,具体工具清单以官方文档为准。

典型使用场景

读长文档提问

把 PDF、Markdown 和笔记交给模型,按章节追问细节。

整理知识库

把零散资料归档、打标签,检索时更容易命中。

批量出摘要

提取要点,输出能直接引用的段落。

选择建议

值得选的地方

  • 只提供 8 个工具,职责集中,接入后不容易误操作。
  • 有现成的安装命令,不用自己找入口,照着跑就能起服务。
  • 已经适配 Claude Desktop、Claude、Cursor,换客户端不用重新研究配置。

先想清楚的地方

  • stdio 方式要求本地装好 Docker,换机器要重新装一遍。
  • 需要自备访问 Token,没有凭据没法直接试。
  • 第三方目录整理,版本更新和行为细节以官方仓库为准。

更适合

  • 需要在文档知识场景里让模型直接调用外部能力的人。
  • 已经在用 Claude Desktop 的用户,接入路径最短。
  • 想先快速试一下、能接受在本地跑服务的人。

不太适合

  • 完全不想在本地装环境的人。
  • 暂时拿不到访问 Token的人。
  • 需要厂商级 SLA 和技术支持的生产环境。

同类对比

5 个同类
MCP Server工具数传输方式安装命令收录来源最后核验
Mc Pedia

MCP World · 本页

8stdio有1 个2026-05-17
Cherry Studio

MCP World

0未说明未标注1 个2026-05-17
Pdf Math Translate

MCP World

0stdio有1 个2026-05-17
report generation

MCP World

0stdio有1 个2026-05-17
Anything To Notebooklm

MCP World

0stdio有1 个2026-05-17

按同分类和工具数量挑出最接近的几条,字段以各自详情页为准。

常见问题

5 条

Mc Pedia 怎么安装?

公开资料给出的安装命令是 docker run -p 8080:8080 \,运行环境为 Docker。装完后按客户端要求写进 MCP 配置,重启客户端生效。

Mc Pedia 怎么在 Claude Desktop、Cursor 里配置?

它是stdio 本地进程,客户端配置里要写启动命令和参数,运行环境是 Docker;保存后完全退出客户端再打开,配置才会生效。

Mc Pedia 收费吗?

本站只整理公开资料,不代收费用,也没有标注具体价格。是否收费取决于服务本身和背后的接口额度,正式使用前按官方说明确认。

Mc Pedia 需要 API Key 吗?

公开资料标注的认证方式是访问 Token,也就是要先拿到凭据才能连上;凭据只填在自己本地的配置里,不要写进公开仓库。

Mc Pedia 支持哪些客户端?

公开资料标注支持 Claude Desktop、Claude、Cursor、VS Code;其他客户端只要能配置 MCP Server,也能用同样的命令或地址接入。

来源信息

继续浏览同类 MCP