ICSC Ava Upload Toolkit
完整的檔案上傳工具套件,包含 MCP Server 和 Mock File Service,支援工具鏈設計,專為 LibreChat 系統設計。
功能
MCP Server (icsc-ava-upload-mcp-server)
- download_and_upload: [CHAINING TOOL] 接收來自上游工具的暫存 URL,下載檔案並上傳到 LibreChat 後端系統
Mock File Service (mock-file-service)
- FastAPI 模擬服務: 模擬 Node.js Fastify 的 AVA File Service
- 檔案上傳/下載: 提供完整的檔案管理 API
- 多種儲存類型: 支援 chat、crawler、doc、logs 等不同類型的檔案儲存
安裝
使用 uv 安裝
uv sync
uv pip install -e .
使用 uvx 直接運行
MCP Server
uvx --from . icsc-ava-upload-server stdio
uvx --from . icsc-ava-upload-server http 127.0.0.1 8001
uvx --from . icsc-ava-mcp stdio
Mock File Service
uvx --from . mock-file-service 127.0.0.1 8090
uvx --from . icsc-ava-mock-service 127.0.0.1 8090
uvx --from . mock-file-service 127.0.0.1 8090 --reload
運行模式
MCP Server 運行模式
STDIO 模式
適用於本地 MCP Client 連接:
uv run python -m icsc_ava_upload_mcp_server.server stdio
uv run icsc-ava-upload-server stdio
Streamable HTTP 模式
適用於遠端 MCP Client 連接:
uv run python -m icsc_ava_upload_mcp_server.server http
uv run python -m icsc_ava_upload_mcp_server.server http 0.0.0.0 9000
uv run icsc-ava-upload-server http 127.0.0.1 8001
Mock File Service 運行模式
uv run python -m mock_file_service.server
uv run python -m mock_file_service.server 0.0.0.0 9000
uv run python -m mock_file_service.server 127.0.0.1 8090 --reload
uv run mock-file-service 127.0.0.1 8090
同時運行兩個服務
方法一:使用快速啟動腳本(推薦)
uv run icsc-ava-start
uvx --from . icsc-ava-start
方法二:手動啟動
uv run mock-file-service 127.0.0.1 8090
uv run icsc-ava-upload-server http 127.0.0.1 8001
HTTP 模式預設監聽:
- MCP Server:
http://127.0.0.1:8001/mcp
- Mock File Service:
http://127.0.0.1:8090
MCP Client 設定範例
Claude Desktop (stdio 模式)
在 claude_desktop_config.json 中加入:
{
"mcpServers": {
"icsc-ava-upload": {
"command": "uvx",
"args": ["--from", "D:\\project\\icsc-file-uploader", "icsc-ava-upload-server", "stdio"]
}
}
}
HTTP 模式連接
啟動 HTTP 伺服器後,MCP Client 可連接到:
- URL:
http://127.0.0.1:8001/mcp
開發
VSCode 啟動設定
專案已包含 .vscode/launch.json,提供兩種除錯模式:
- MCP Server (STDIO): 以 stdio 模式啟動
- MCP Server (HTTP): 以 streamable-http 模式啟動
發佈
發佈到官方 PyPI
發佈到測試 PyPI
如需先測試發佈流程:
uv publish --publish-url https://test.pypi.org/legacy/
pip install --index-url https://test.pypi.org/simple/ icsc-ava-upload-toolkit
Git 標籤管理
發佈時建議建立 Git 標籤:
git tag v1.0.0
git push origin v1.0.0
發佈檢查清單
授權
MIT License