Token导航 LogoToken导航TokenDH.com
my MCP project logo
AI代理stdio官方级别未说明来源级核验

my MCP project

MCP Server

一个使用模型上下文协议(MCP)将AI助手连接到股票查询工具的服务,支持通过Gemini API进行股票价格查询和比较。

工具数

2

提示词数

0

GitHub Stars

0

资源数

0
金融工具Python数据分析本地部署

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

jdu211171

提供方

jdu211171

最后核验

2026/5/17 20:22

运行时

Python

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

python -m venv venv

详细介绍

Python MCP股票工具(FastMCP服务器+CLI客户端)

使用模型上下文协议(MCP)连接AI的小而集中的示例 真正工具的助手。FastMCP服务器公开了股票工具和Python CLI客户端要求Gemini选择正确的工具和参数,然后调用它 停下来

主要特点

  • 从纯英语查询中选择Gemini驱动的工具
  • 雅虎财经主要数据,CSV回退,可靠性高
  • 客户端和服务器之间的简单stdio连接(无需配置套接字)
  • 最小的依赖关系、清晰的结构和确定性提示

______________________________________________________________________

快速入门

前提条件

  • Python 3.11+(使用3.13开发)
  • Gemini API关键 .env 作为 GEMINI_API_KEY=...

设置

python -m venv venv
source venv/bin/activate        # Windows: .\\venv\\Scripts\\activate
pip install -U pip
pip install -r requirements.txt

  • 服务器(直接): python mcp_server.py
  • 客户端(通过stdio生成服务器): python mcp_client.py

尝试查询

What is your query? → What's the current price of AAPL?
What is your query? → Compare MSFT and AAPL

______________________________________________________________________

项目结构

├── mcp_server.py      # FastMCP server exposing tools
├── mcp_client.py      # CLI: lists tools, asks Gemini, calls tool
├── requirements.txt   # Pinned runtime deps
├── .env               # Local secrets (e.g., GEMINI_API_KEY)
├── stocks_data.csv    # Optional CSV fallback data
└── README.md

______________________________________________________________________

运作原理

流动

  1. mcp_client.py 列出了MCP stdio上的服务器工具。
  2. 它用一个确定性的、仅支持JSON的指令提示Gemini选择一个

工具和论据。

  1. 客户端通过MCP调用所选工具并打印结果。

数据源

  • 主要:雅虎财经 yfinance
  • 退路: stocks_data.csv 带模式 symbol,price,last_updated

更新工作目录

  • 客户端使用以下命令启动服务器 cwd 开始 mcp_client.py.
  • 如果您从其他地方运行,请确保它指向您的项目路径。

______________________________________________________________________

工具(服务器)

get_stock_price(symbol: str) -> str

  • 使用雅虎财经返回当前价格,当

需要。

  • 示例查询:“苹果的股价是多少?”,“获取TSLA价格”。

compare_stocks(symbol1: str, symbol2: str) -> str

  • 比较两个较高的符号和报告(带有源代码提示)。
  • 示例查询:“比较MSFT和AAPL”,“特斯拉与福特的价格”。

CSV格式

symbol,price,last_updated
AAPL,150.25,2024-01-15
MSFT,380.50,2024-01-15

______________________________________________________________________

配置

.env

GEMINI_API_KEY=your_api_key_here

确定性提示

  • fetch_tool_identifier_prompt() 只需要JSON模型输出。
  • 客户端剥离代码围栏并解析JSON。如果 arguments 作为a到达

字符串(例如“symbol,AAPL”),客户端将其强制转换为字典。

网络行为

  • 避免紧张的投票。外部电话打给yfinance和Gemini;失败

尽可能回到CSV。

______________________________________________________________________

发展

棉绒/格式(可选)

pip install ruff black
ruff check .
black .

编码风格

  • Python 3.11+,4空格缩进,~88个字符行。
  • 公共函数使用类型提示和短文档字符串。
  • 名称:模块/函数 snake_case,类 PascalCase,常数

UPPER_CASE.

  • MCP工具使用 @mcp.tool(...) 并返回简洁的文本。

______________________________________________________________________

测试

pip install pytest pytest-asyncio
pytest -q

覆盖范围(可选)

pip install pytest-cov
pytest --cov=mcp_server --cov=mcp_client

______________________________________________________________________

故障排除

Gemini/API密钥

  • 确保 .env 包含 GEMINI_API_KEY 并且密钥有效。

服务器启动路径

  • 如果客户端无法连接,请验证 cwdmcp_client.py 匹配您的

项目目录。

雅虎财经/SSL或网络错误

  • 在受限或不稳定的网络中,yfinance可能无法通过TLS/SSL。服务器将

回落到 stocks_data.csv。确保CSV中存在所需的符号。

未找到价格

  • 确认股票代码以及是否可以获得融资或CSV

有一行用于符号。

______________________________________________________________________

贡献

  • 使用常规承诺: feat:, fix:, docs:, chore:, refactor:.
  • 保持公关小而专注。包括测试内容/原因、如何测试(命令和

预期输出)以及屏幕截图/终端片段(如果有用)。链接问题 喜欢 #12 在适用的情况下。

  • 更新此README以了解行为变化;如果提示/API,则添加迁移注释

改变。

______________________________________________________________________

安全说明

  • 不要泄露秘密。把它们放在里面 .env.
  • 尽量减少日志记录;永远不要打印秘密。
  • 外部调用会攻击第三方API;清楚地处理错误,并在出现错误时退缩

弱点。

免责声明

  • 仅用于教育/演示目的。不是财务建议。

目录标签

目录标签

金融工具Python数据分析本地部署股票查询AI助手

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

2

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP