Metadata-Version: 2.4
Name: vinehoo-vector-products-search-mcp
Version: 0.1.1
Summary: VikingDB Multi-modal Search MCP Server using FastMCP
Project-URL: Homepage, https://github.com/vber/vinehoo-vector-products-search-mcp
Project-URL: Bug Tracker, https://github.com/vber/vinehoo-vector-products-search-mcp/issues
Author-email: vber <vbersoft@gmail.com>
License-Expression: MIT
Keywords: mcp,vector-search,vikingdb,vinehoo,volcengine
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.10
Requires-Dist: mcp[fastmcp]
Requires-Dist: python-dotenv
Requires-Dist: requests
Requires-Dist: volcengine
Description-Content-Type: text/markdown

# VikingDB Multi-modal Search MCP Server

这是一个使用 Python FastMCP 框架开发的 MCP Server，用于在火山引擎 VikingDB 向量数据库中进行多模态检索。

## 功能介绍

提供 `search_multi_modal` 工具，支持：
- 文本搜索
- 图片搜索 (TOS 或 HTTP 链接)
- 视频搜索 (TOS 或 HTTP 链接)
- 多模态组合搜索

## 安装依赖

```bash
pip install -r requirements.txt
```

## 配置

复制 `.env.example` 为 `.env` 并填入您的火山引擎凭证：

```bash
cp .env.example .env
```

并在 `.env` 中设置以下变量：
- `VOLC_AK`: 火山引擎 Access Key
- `VOLC_SK`: 火山引擎 Secret Key
- `VIKINGDB_HOST`: VikingDB 域名 (默认: api-vikingdb.vikingdb.cn-beijing.volces.com)
- `VIKINGDB_REGION`: 区域 (默认: cn-beijing)

## 运行

```bash
python server.py
```

## MCP 工具说明

### `search_multi_modal`

参数：
- `collection_name` (str): 集合名称
- `index_name` (str): 索引名称
- `text` (str, 可选): 检索文本
- `image` (str, 可选): 图片链接
- `video_url` (str, 可选): 视频链接
- `video_fps` (float, 可选): 视频采样频率
- `need_instruction` (bool): 是否启用 Instruction (默认为 True)
- `output_fields` (list, 可选): 返回字段列表
- `limit` (int): 返回结果数量 (默认 10)

## 发布到 PyPI

如果您希望将此项目发布到 PyPI，请按照以下步骤操作：

1. **安装构建和上传工具**：
   ```bash
   pip install build twine
   ```

2. **构建项目**：
   ```bash
   python -m build
   ```
   这将在 `dist/` 目录中生成 `.tar.gz` 和 `.whl` 文件。

3. **上传到 PyPI**：
   ```bash
   # 上传到正式环境
   python -m twine upload dist/*
   ```

   > **注意**：在上传之前，请确保已修改 `pyproject.toml` 中的 `authors` 和 `project.urls` 等信息。

## 本地开发安装

可以使用开发模式安装，以便直接运行命令：

```bash
pip install -e .
vinehoo-search
```
