VNStock MCP服务器(非官方)
 ](https://pypi.org/project/vnstock-mcp-server/) ](https://pypi.org/project/vnstock-mcp-server/) ](https://pypi.org/project/vnstock-mcp-server/) 
备注:这是一个独立的项目,与vnstock库或其维护者没有正式联系。
关于vnstock
此MCP服务器构建在 vnstock库 -由Thinh Vu.vnstock创建的用于越南股市分析的强大Python工具包提供了对越南股市数据的全面访问,包括:
- 实时和历史股价
- 公司财务报表
- 市场数据和交易统计
- 以及共同基金信息
- 黄金价格和汇率
有关基础库的更多信息,请访问:https://github.com/thinh-vu/vnstock
特性
此MCP服务器通过MCP工具公开vnstock的功能,允许AI助手和其他MCP客户端:
- 访问公司信息和财务数据
- 检索股票报价和历史价格
- 获取交易统计数据和市场数据
- 查询共同基金信息
- 获取黄金价格和汇率
- 检索财务报表(收入、资产负债表、现金流量)
安装
从PyPI安装(推荐)
pip install vnstock-mcp-server从源代码安装
git clone https://github.com/maobui/vnstock-mcp-server.git
cd vnstock-mcp-server
uv sync先决条件
- Python 3.10+
- uv(安装
pip install uv或查看https://docs.astral.sh/uv/)
快速开始
运行MCP服务器
默认模式(stdio)
# If installed from PyPI
vnstock-mcp-server
# If installed from source with uv
uv run python -m vnstock_mcp.server有运输选择
# Use stdio transport (default)
vnstock-mcp-server --transport stdio
# Use Server-Sent Events (SSE) transport for web applications
vnstock-mcp-server --transport sse
# Use SSE with custom endpoint path
vnstock-mcp-server --transport sse --path /mcp
# Use HTTP streaming transport
vnstock-mcp-server --transport streamable-http
# Show help with all available options
vnstock-mcp-server --help服务器使用 FastMCP 并支持多种传输协议:
- 标准:标准输入/输出(默认值,适用于Claude Desktop等MCP客户端)
- SSE:服务器发送事件(适用于web应用程序)
- 可流式传输http:HTTP流(用于基于HTTP的集成)
运输方式
VNStock MCP服务器支持三种不同的传输协议,以适应各种用例:
stdio(默认)
- 用例:标准MCP客户端,如Claude Desktop、Cursor、Cline
- 协议:通过标准输入/输出流进行通信
- 用法:
vnstock-mcp-server或vnstock-mcp-server --transport stdio - 最适合:桌面应用程序和传统MCP集成
SSE(服务器发送事件)
- 用例:需要实时数据流的Web应用程序
- 协议:基于HTTP的服务器发送事件
- 用法:
vnstock-mcp-server --transport sse [--path /mcp] [--host 0.0.0.0] [--port 8000] - 服务器在上运行:
http://127.0.0.1:8000(默认) - 最适合:Web仪表板、基于浏览器的应用程序
可流式传输http
- 用例:基于HTTPs的集成和API服务
- 协议:通过HTTP使用JSON-RPC进行HTTP流式传输
- 用法:
vnstock-mcp-server --transport streamable-http [--path /mcp] [--host 0.0.0.0] [--port 8000] - 服务器在上运行:
http://127.0.0.1:8000(默认) - 最适合:REST API集成,微服务架构
命令行选项
vnstock-mcp-server [OPTIONS]
Options:
-t, --transport {stdio,sse,streamable-http}
Transport protocol to use (default: stdio)
--path PATH Endpoint path for HTTP transports (optional, e.g. /mcp)
--host HOST Host address to bind to (default: 0.0.0.0)
-p, --port PORT Port to run the server on (default: 8000)
-v, --version Show version information
-h, --help Show help messageMCP客户端集成
光标/临床示例
在MCP配置中添加服务器条目:
默认stdio传输
{
"mcpServers": {
"vnstock": {
"command": "uvx",
"args": [
"vnstock-mcp-server"
]
}
}
}具有特定的运输选项
{
"mcpServers": {
"vnstock-sse": {
"command": "uvx",
"args": [
"vnstock-mcp-server",
"--transport",
"sse",
"--path",
"/mcp",
"--port",
"8000"
]
},
"vnstock-http": {
"command": "uvx",
"args": [
"vnstock-mcp-server",
"--transport",
"streamable-http"
]
}
}
}如果从源代码安装:
{
"mcpServers": {
"vnstock": {
"command": "uv",
"args": ["run", "python", "-m", "vnstock_mcp.server"],
"env": {}
},
"vnstock-sse": {
"command": "uv",
"args": ["run", "python", "-m", "vnstock_mcp.server", "--transport", "sse"],
"env": {}
}
}
}Claude桌面示例
在MCP服务器设置中:
- 命令:
vnstock-mcp-server - Args:(将stdio留空,或添加传输选项,如
--transport sse)
可用工具
MCP服务器提供以下类别的工具:
公司信息
- 公司概况、新闻、活动
- 股东和高级职员信息
- 子公司和内幕交易
- 交易统计和比率
财务数据
- 损益表、资产负债表、现金流量表
- 财务比率和原始报告
- 历史财务数据(季度/年度)
市场数据
- 实时报价和历史价格
- 日内交易数据和价格深度
- 多种交易品种的市场价格牌
基金信息
- 基金列表和搜索
- 资产净值报告和持股
- 产业与资产配置
杂项
- 黄金价格(SJC、BTMC)
- 汇率
- 按行业/集团列出的符号
发展
使用uv进行安装(用于开发)
# From the project root
uv sync
# Include dev dependencies (for tests and coverage)
uv sync --group dev紫外线测试
# Run all tests
uv run pytest
# Run a specific test file
uv run pytest test/test_company_tools.py
# Run with coverage (HTML)
uv run pytest --cov=src/vnstock_mcp --cov-report=html
# Open report:
# ./htmlcov/index.html建筑与出版
本地建设
# Using the build script
./scripts/build.sh
# Or manually
python -m build创建发布
# Update version in pyproject.toml first, then:
./scripts/release.sh这将:
- 运行测试
- 创建并推送一个git标签
- 触发GitHub操作以构建并发布到PyPI
鸣谢
请考虑:
- ⭐ 主演原版 vnstock存储库
- 📖 阅读 vnstock文档
- 💖 如果您认为vnstock项目有价值,请支持它
免责声明
这是一个非官方的包装器,与vnstock库或其维护者无关。有关基础股票市场数据或vnstock功能的问题,请参阅 vnstock存储库.
故障排除
安装问题
- 找不到具有的模块
uv run:
- 确保 uv sync 已在项目根目录中成功完成。 - 验证Python版本: python --version 和 uv python list.
- 命令
vnstock-mcp-server未找到:
- 确保软件包已安装: pip list | grep vnstock-mcp-server - 尝试重新安装: pip install --upgrade vnstock-mcp-server
连接问题
- MCP客户端无法连接(stdio模式):
- 确认客户端配置与安装方法匹配 - 检查客户端日志以了解详细错误。 - 确保没有为stdio传输传递额外的参数
- 无法访问SSE/HTTP端点:
- 验证服务器是否正在运行:检查“Uvicorn正在运行http://127.0.0.1:8000" - 检查端口8000是否可用: netstat -an | grep 8000 - 尝试访问 http://127.0.0.1:8000 浏览器中的SSE模式
运输方式问题
- SSE传输不工作:
- 如果需要,确保正确指定路径 - 检查服务器日志中的启动错误 - 验证web客户端是否可以连接到SSE端点
- 选择了错误的运输模式:
- 使用 --help 查看可用的运输选项 - stdio:用于桌面MCP客户端(Claude desktop、Cursor) - sse:用于web应用程序 - streamable-http:用于http API集成
获取帮助
- 检查服务器版本:
vnstock-mcp-server --version - 查看所有选项:
vnstock-mcp-server --help - 测试服务器启动:跑步
--transport stdio首先验证基本功能
许可证
MIT许可证-请参阅 许可证 文件以获取详细信息。
贡献
- 复刻仓库
- 创建要素分支
- 进行更改
- 添加新功能的测试
- 运行测试:
uv run pytest - 提交拉取请求
更新日志
v1.0.2(最新)
- 新:添加了TOON(python TOON)支持,以增强功能
- 改进:将MCP工具拆分为单独的文件,以更好地组织代码
- 固定的:SSE传输连接问题
v1.0.1
- 新:添加了对多种传输模式的支持(stdio、sse、可流式传输http)
- 新:传输选择的命令行参数(
--transport,--path,--host,--port) - 新:web应用程序的SSE(服务器发送事件)传输
- 新:用于API集成的HTTP流传输
- 改进:增强的CLI,带有帮助消息和验证
- 改进:更好的错误处理和用户反馈
- 改进:所有运输方式的综合文件
v1.0.0
- 初始版本
- 通过MCP全面访问越南股市数据
- 支持公司数据、财务报表、报价等
- 围绕vnstock v3.2.6的包装+
