Wiki智能助手

Wiki Agent是一个基于CrewAI的智能系统,能够自动搜索和处理Wiki.js数据库中的信息,提供文章搜索、内容分析和总结、Markdown格式清理等功能。

  • by Szewczyk-PI
  • Python
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Szewczyk-PI/wiki-mcp

使用说明

Wiki代理-智能助理做Wiki.js

开玩笑?

Wiki Agent是一个基于CrewAI的智能AI系统,可以自动搜索和处理Wiki.js数据库中的信息。代理可以:

  • 基于查询在Wiki.js中搜索文章
  • 分析和总结内容
  • 从Markdown格式中清除文本
  • 返回准备好的摘要和链接

它是如何工作的?

该系统由三个主要部分组成:

1.维基代理(AI)

具有“Wiki知识专家”角色的人工智能代理:

  • 通过MCP(模型上下文协议)与Wiki.js通信
  • 使用高级搜索功能
  • 处理和分析找到的内容

2.MCP服务器(wiki js MCP)

AI代理和Wiki.js之间的代理服务器:

  • 提供 21 种文档管理工具
  • 支持文件层次结构
  • 与 GraphQL API Wiki.js 集成

3.自定义工具

其他 Python 工具:

  • clear_markd - 清除Markdown格式的文本(*, *, #, |,等等)

系统要求

  • Python>=3.10 i<3.14
  • Wiki.js(本地或远程)
  • UV - Python 软件包管理器
  • PostgreSQL(用于 Wiki.js)

安装

步骤1:环境准备

# Zainstaluj UV (jeśli nie masz)
pip install uv

# Przejdź do katalogu projektu
cd /wiki/

步骤 2:配置 Wiki.js MCP Server

# Przejdź do katalogu MCP
cd src/wiki/wiki-js-mcp

# Skopiuj plik konfiguracyjny
cp config/example.env .env

# Uruchom skrypt instalacyjny
./setup.sh

步骤 3:设置环境变量

编辑文件 .env 在目录中 wiki-js-mcp:

# Konfiguracja Wiki.js
WIKIJS_API_URL=http://localhost:3000
WIKIJS_TOKEN=twoj_token_api_z_wikijs

# Alternatywnie: login i hasło
WIKIJS_USERNAME=twoj_username
WIKIJS_PASSWORD=twoje_haslo

# Baza danych mapowań
WIKIJS_MCP_DB=./wikijs_mappings.db
LOG_LEVEL=INFO
LOG_FILE=wikijs_mcp.log

如何从Wiki.js获取API令牌:

  1. 以管理员身份登录Wiki.js
  2. 前往 Admin Panel → API Access
  3. 创建新的API密钥
  4. 将令牌复制到文件 .env

步骤 4: 安装主项目的依赖关系

# Wróć do głównego katalogu
# Zainstaluj zależności
crewai install

第5步:为AI配置API

创建文件 .env 在项目主目录中:

# Klucz API do Google Gemini
GOOGLE_API_KEY=twoj_klucz_api_google

# Lub dla OpenAI (jeśli wolisz)
OPENAI_API_KEY=twoj_klucz_openai

启动

选项1:基本启动

# Z głównego katalogu projektu
crewai run

选项2:自定义查询启动

编辑文件 src/wiki/main.py 更改参数 inputs:

def run():
    inputs = {
        'topic': 'Twoje zapytanie tutaj',
        'current_year': str(datetime.now().year)
    }
    Wiki().crew().kickoff(inputs=inputs)

然后运行:

crewai run

项目结构

wiki/
├── src/wiki/
│   ├── config/
│   │   ├── agents.yaml          # Definicje agentów AI
│   │   └── tasks.yaml           # Definicje zadań
│   ├── tools/
│   │   └── custom_tool.py       # Narzędzie do czyszczenia Markdown
│   ├── wiki-js-mcp/             # Serwer MCP dla Wiki.js
│   │   ├── src/
│   │   │   └── wiki_mcp_server.py
│   │   ├── setup.sh
│   │   ├── start-server.sh
│   │   └── .env                 # Konfiguracja MCP
│   ├── crew.py                  # Definicja crew i agentów
│   └── main.py                  # Punkt wejścia aplikacji
├── .env                         # Klucze API (Google/OpenAI)
├── pyproject.toml              # Zależności projektu
└── README.md                   # Ten plik

可供代理使用的 MCP 工具

代理可以访问21个Wiki.js工具,包括:

  • wikijs_search_pages - 网页搜索
  • wikijs_get_page - 下载网站内容
  • wikijs_create_page - 创建新页面
  • wikijs_update_page - 网站更新
  • wikijs_create_nested_page 建立层次结构
  • wikijs_delete_page 删除页面
  • 还有很多。我…

完整列表在: src/wiki/wiki-js-mcp/README.md