# OpenViking MCP

OpenViking MCP Server - 为AI助手提供OpenViking知识库访问能力

## 功能

- **语义搜索** - 基于向量嵌入的智能检索
- **文档读取** - 读取PDF、MD等文档内容
- **模式匹配** - 使用glob模式搜索文件
- **摘要/概览** - 获取L0摘要和L1概览
- **全文搜索** - 关键字全文检索

## 快速开始

### 1. 安装依赖

```bash
pip install openviking mcp
```

### 2. 配置Ollama

确保Ollama服务运行中，并安装嵌入模型：

```bash
ollama serve
ollama pull qwen3-embedding:0.6b
```

### 3. 配置OpenCode

编辑 `C:\Users\fenci\.config\opencode\opencode.json`:

```json
{
  "mcp": {
    "openviking": {
      "type": "local",
      "command": ["python", "path\\to\\openviking_mcp_server.py"],
      "environment": {
        "OPENVIKING_DATA_PATH": "path\\to\\viking_data",
        "OPENVIKING_CONFIG_FILE": "path\\to\\ov.conf"
      },
      "enabled": true,
      "timeout": 20000
    }
  }
}
```

### 4. 使用

在OpenCode中直接搜索：

```
使用 openviking 搜索"维斯塔斯接地"
```

## 项目结构

```
openviking-mcp/
├── openviking_mcp_server.py   # MCP服务器实现
├── OPENVIKING_MCP_MANUAL.md   # 详细文档
├── example_usage.py          # 使用示例
├── ov.conf                   # 配置文件示例
├── viking_data/              # 数据目录(可选)
└── docs/                     # 文档目录(可选)
```

## 可用工具

| 工具 | 功能 |
|-----|------|
| `openviking_find` | 语义搜索 |
| `openviking_read` | 读取内容 |
| `openviking_glob` | 模式匹配 |
| `openviking_abstract` | L0摘要 |
| `openviking_overview` | L1概览 |
| `openviking_grep` | 全文搜索 |

## 文档

详细使用说明请参考 [OPENVIKING_MCP_MANUAL.md](./OPENVIKING_MCP_MANUAL.md)

## 相关链接

- [OpenViking GitHub](https://github.com/volcengine/OpenViking)
- [OpenCode](https://github.com/anomalyco/opencode)
- [MCP协议](https://modelcontextprotocol.io)

## 版本

- OpenViking: 0.1.17
- MCP SDK: 1.25.0
- Python: 3.13+

## 许可证

MIT License
