# WeKnora MCP Server 安装和使用指南 ## 快速开始 ### 1. 安装依赖 ```bash pip install -r requirements.txt ``` ### 2. 设置环境变量 ```bash # Linux/macOS export WEKNORA_BASE_URL="http://localhost:8080/api/v1" export WEKNORA_API_KEY="your_api_key_here" # Windows PowerShell $env:WEKNORA_BASE_URL="http://localhost:8080/api/v1" $env:WEKNORA_API_KEY="your_api_key_here" # Windows CMD set WEKNORA_BASE_URL=http://localhost:8080/api/v1 set WEKNORA_API_KEY=your_api_key_here ``` ### 3. 运行服务器 有多种方式运行服务器: #### 方式 1: 使用主入口点 (推荐) ```bash python main.py ``` #### 方式 2: 使用原始启动脚本 ```bash python run_server.py ``` #### 方式 3: 直接运行服务器模块 ```bash python weknora_mcp_server.py ``` #### 方式 4: 作为 Python 模块运行 ```bash python -m weknora_mcp_server ``` ## 作为 Python 包安装 ### 开发模式安装 ```bash pip install -e . ``` 安装后可以使用命令行工具: ```bash weknora-mcp-server # 或 weknora-server ``` ### 生产模式安装 ```bash pip install . ``` ### 构建分发包 ```bash # 构建源码分发包和轮子 python setup.py sdist bdist_wheel # 或使用 build 工具 pip install build python -m build ``` ## 命令行选项 主入口点 `main.py` 支持以下选项: ```bash python main.py --help # 显示帮助信息 python main.py --check-only # 仅检查环境配置 python main.py --verbose # 启用详细日志 python main.py --version # 显示版本信息 ``` ## 环境检查 运行以下命令检查环境配置: ```bash python main.py --check-only ``` 这将显示: - WeKnora API 基础 URL 配置 - API 密钥设置状态 - 依赖包安装状态 ## 故障排除 ### 1. 导入错误 如果遇到 `ImportError`,请确保: - 已安装所有依赖:`pip install -r requirements.txt` - Python 版本兼容(推荐 3.10+) - 没有文件名冲突 ### 2. 连接错误 如果无法连接到 WeKnora API: - 检查 `WEKNORA_BASE_URL` 是否正确 - 确认 WeKnora 服务正在运行 - 验证网络连接 ### 3. 认证错误 如果遇到认证问题: - 检查 `WEKNORA_API_KEY` 是否设置 - 确认 API 密钥有效 - 验证权限设置 ## 开发模式 ### 项目结构 ``` WeKnoraMCP/ ├── __init__.py # 包初始化文件 ├── main.py # 主入口点 ├── run_server.py # 原始启动脚本 ├── weknora_mcp_server.py # MCP 服务器实现 ├── requirements.txt # 依赖列表 ├── setup.py # 安装脚本 ├── MANIFEST.in # 包含文件清单 ├── LICENSE # 许可证 ├── README.md # 项目说明 └── INSTALL.md # 安装指南 ``` ### 添加新功能 1. 在 `WeKnoraClient` 类中添加新的 API 方法 2. 在 `handle_list_tools()` 中注册新工具 3. 在 `handle_call_tool()` 中实现工具逻辑 4. 更新文档和测试 ### 测试 ```bash # 运行基本测试 python test_imports.py # 测试环境配置 python main.py --check-only # 测试服务器启动 python main.py --verbose ``` ## 部署 ### Docker 部署 创建 `Dockerfile`: ```dockerfile FROM python:3.11-slim WORKDIR /app COPY requirements.txt . RUN pip install -r requirements.txt COPY . . RUN pip install -e . ENV WEKNORA_BASE_URL=http://localhost:8080/api/v1 EXPOSE 8000 CMD ["weknora-mcp-server"] ``` ### 系统服务 创建 systemd 服务文件 `/etc/systemd/system/weknora-mcp.service`: ```ini [Unit] Description=WeKnora MCP Server After=network.target [Service] Type=simple User=weknora WorkingDirectory=/opt/weknora-mcp Environment=WEKNORA_BASE_URL=http://localhost:8080/api/v1 Environment=WEKNORA_API_KEY=your_api_key ExecStart=/usr/local/bin/weknora-mcp-server Restart=always [Install] WantedBy=multi-user.target ``` 启用服务: ```bash sudo systemctl enable weknora-mcp sudo systemctl start weknora-mcp ``` ## 支持 如果遇到问题,请: 1. 查看日志输出 2. 检查环境配置 3. 参考故障排除部分 4. 提交 Issue 到项目仓库: https://github.com/NannaOlympicBroadcast/WeKnoraMCP/issues