Products
GG网络技术分享 2026-01-24 16:38 4
哎哟喂,说起来dou是泪啊兄弟们。Zui近这基金市场跌得我dou快不敢打开那个绿色的APP了真的是心里苦dan是不说不行啊!每天盯着那几只所谓的“明星基金”,心惊肉跳的跟坐过山车似的。我就想啊,Neng不Neng搞个什么东西让我不用天天盯着手机kan那些红红绿绿的数字呢?于是我就想到了Zui近火得一塌糊涂的那个什么... 对了! 吃瓜。 MCP!Model Context Protocol!听起来是不是特bie高大上?特bie像那种在硅谷穿着卫衣敲代码的大佬们搞出来的东西?其实吧,我也没太搞懂,反正就是Neng让AI连上外面的世界,帮我们干点脏活累活。
今天咱们就来聊聊,怎么硬生生地搓出一个Neng分析两个独立基金涨跌情况的MCP Server。别问我为什么是两个,问就是主要原因是我手里就只剩两只基金了其他的dou割肉了呜呜呜。 拖进度。 这篇文章可Neng会写得有点乱,毕竟我现在心情挺复杂的,而且我刚喝了一杯冰美式手有点抖。

好吧,咱们先假装我hen专业地解释一下这玩意儿。你知道咱们平时用的ChatGPThuo者Claude吧?他们就像是住在一个封闭豪宅里的天才学者,啥dou知道,dan是kan不见外面发生了啥。MCP就是给这个豪宅开了一扇窗户,修了一条路。
出岔子。 MCP Server呢,就是这条路尽头的那个小房子。你告诉天才学者:“嘿,帮我去那小房子kankan今天有没有快递。”天才学者就Nengtong过这条协议拿到信息。
suo以我们要Zuo的这个小房子,专门负责去扒拉基金的涨跌数据,ran后整理好了塞给AIkan。这样我就Neng问AI:“大哥你说我这俩基金是不是该卖了?”ran后它就Neng基于实时数据给我一个... 嗯,大概率也是模棱两可的回答。
大胆一点... 搞技术的dou知道,环境配置Zui烦人了。真的比我找对象还难。你要装Python对吧?虽然现在大家dou说Go语言多好多好,dan是写脚本嘛,还是Python香一点,虽然慢得要死dan是写起来爽啊。
你得先去把Python装好,我不记得是3.8还是3.9以上了反正越新越好吧可Neng。ran后就是那个虚拟环境venv, 来日方长。 一定要用虚拟环境啊朋友们!千万别把系统库搞乱了不然你电脑上其他项目跑不起来的时候你会想砸键盘的。
代码大概长这样吧:
mkdir fund-mcp-server
cd fund-mcp-server
python -m venv venv
source venv/bin/activate # Windows用户别照抄啊会报错的自己kan着办
ran后我们需要安装MCP的SDK包。好像是叫mcp还是fastmcp来着?哎呀不管了反正pip一下就知道了。
pip install mcp
这一步有时候会卡半天不知道为什么可Neng是网络的问题也可Neng是源的问题建议换成清华源huo者阿里云源不然等到花儿dou谢了,操作一波。。
总体来看... 说到这儿我就想吐槽一下那些金融数据的接口了。要么就是贵得离谱要么就是文档写得跟天书一样我们这种穷人散户怎么办呢只Neng去爬虫了吗?
呵... 当然我们不Neng在文章里教大家Zuo违法的事情对吧suo以我们假装这里有一个fei常合法合规的数据接口接口地址我就不写了免得被封号反正大家懂的那种第三方聚合数据平台huo者某些公开的API。
有啥用呢? 我们要获取两只基金的数据比如说一只叫“沪深300指数增强”另一只叫“中证500医药卫生”随便编的名字别当真啊。
好啦环境也搞定了数据源也有了虽然只是假设接下来就是Zui激动人心的时刻了敲代码!打开你的VS Codehuo者Notepad++甚至记事本dou行只要你Neng敲字,我裂开了。。
我们需要定义一个工具这个工具可yi被AI调用这个工具的作用就是输入一个基金代码ran后返回它的净值和涨跌幅。
from mcp.server.fastmcp import FastMCP
import requests # 假装我们用requests去请求数据
import json
# 实例化一个MCP对象
mcp = FastMCP
@mcp.tool
def get_fund_data:
"""
获取指定基金的净值和涨跌幅数据
参数:
fund_code: 基金代码
"""
# 这里应该是去请求真实接口的
# response = requests.get
# data = response.json
# dan是为了演示方便 我就瞎编一点数据返回了 毕竟我真的没有那个免费的API key
fake_data = {
"code": fund_code,
"name": "某某混合基金",
"net_value": "1.2345",
"day_growth": "-2.34%", # 必须是绿的才符合现在的行情
"last_year_growth": "-15.67%"
}
return json.dumps
你kan这段代码写得是不是hen简单粗暴?wan全没有错误处理如guo网络断了怎 摆烂... 么办如guoAPI挂了怎么办管他呢跑起来再说这就是所谓的“敏捷开发”其实就是懒。
光Neng查单个基金有什么用我要的是对比!我要kan到底哪个geng坑! 另起炉灶。 suo以我决定再加一个工具专门用来对比两个基金的惨烈程度。
@mcp.tool
def compare_two_funds:
"""
对比两个基金的近期表现 kan谁跌得geng惨
"""
data_a = json.loads)
data_b = json.loads)
result = f"基金A 今天跌了 {data_a}
"
result += f"基金B 今天跌了 {data_b}
"
# 简单的逻辑判断 谁跌得多谁就是输家
growth_a = float)
growth_b = float)
if growth_a
蚌埠住了... 这里有个bug就是我直接调用了上面的函数dan是在真实的异步环境里可Neng会炸不过没关系我们就假装这是一个完美的同步世界毕竟我的脑容量Yi经不够处理asyncio了。
MCP Server写完了怎么让Claudehuo者别的客户端知道它的存在呢这就需要一个配置 瞎扯。 文件通常是叫`mcp_server_config.json`huo者类似的放在特定的目录下。
{
"mcpServers": {
"my-fund-tool": {
"command": "/path/to/your/python",
"args":
}
}
}
扎心了... 这里的路径一定要写对啊兄弟们路径不对神仙也救不了你Windows用户注意反斜杠转义的问题真的hen恶心每次dou要复制粘贴半天jue对路径简直是人类文明进步的绊脚石。
写着写着突然觉得有点饿刚才那杯咖啡好像白喝了心慌慌的不如点个外卖吧点什么呢麻辣烫好像有点热盖浇饭又太干了算了还是先写完吧不然今天的KPI完不成了虽然也没人给我发工资我就是个苦逼的自媒体作者。
说到投资心态其实Zui重要的就是不要老kan账户你kan我自从不kan账户之后心情就好多了虽然有时候打开一kan发现少了一辆宝马车dan是心态稳住了呀这就叫“时间的朋友”吗哈哈我kan是“时间的韭菜”吧。
既然我们是在讲技术工具不如来kankan市面上还有哪些类似的东西虽然说我们的MCP Server是Zui棒的Zui轻量级的dan是也不妨碍了解一下竞争对手嘛huo者说了解一下平时大家dou在用什么玩意儿来折磨自己,没法说。。
| 工具名称 | 主要功Neng | 优点 | 缺点 | 推荐指数 |
|---|---|---|---|---|
| Choice数据 | 专业的金融数据终端 | 数据全 准确 专业人士dou在用 | 贵得要死 年费好几万 只有机构买得起 | ⭐⭐⭐⭐⭐ |
| 集思录 | 主要是固收类 可转债分级基金等 | 社区氛围好 数据还凑合 | 界面有点老土 geng新有时候不及时 | ⭐⭐⭐⭐ |
| 且慢 | 查kan指数估值高低 | 界面简洁 Nengkan定投信号 | 功Neng单一 不Nengkan个股详情 | ⭐⭐⭐ |
| 自建Excel爬虫 | 自己动手丰衣足食 | wan全免费 想怎么改就怎么改 | 维护极其痛苦 网页一改版你就废了 | ⭐⭐ |
| 我们的MCP Server | 连接AI 分析涨跌 | 新潮 Neng跟AI聊天 有极客范儿 | 经常报错 数据可Neng是假的 作者不靠谱 | ⭐ |
kan完了这个表格是不是觉得我们的MCP Server其实也挺有竞争力的?毕竟它主打一个“新潮”嘛哪怕不好用dan是听起来hen厉害这就够了这就叫面子工程,操作一波。。
当你兴高采烈地把配置文件填好ran后重启你的Claude Desktop的时候你会发现... 它连不上jue对连不上第一次成功率基本为零这时候你就需要去kan日志日志在哪里呢藏在某个深不见底的文件夹里还要用命令行去tail出来kan,又爱又恨。。
tail -f ~/Library/Application\ Support/Claude/claude_desktop_config.json.log
# Mac用户大概在这个路径 Windows用户祝你好运
报错信息通常是那种让你kan了想撞墙的类型比如“ModuleNotFoundError”huo者“Permission Denied”。 行吧... 这时候你就会发现自己忘记装依赖包了huo者是Python路径指到了系统自带的那个老古董版本上去了真的会谢。
好不容易连上了你满怀期待地问Claude:“帮我kankan000001和110022哪个跌得多?”后来啊它转了半天圈告诉你:“抱歉我无法访问外部工具。”那一刻你的心是不是凉透了没错这就是开发者的宿命充满了绝望和BUG,多损啊!。
折腾了一整天终于把这个破玩意儿弄出来了虽然它现在只Neng返回假的数据而且界面丑陋无比逻辑漏洞百出d 这就说得通了。 an是好歹是个MCP Server了对不对我也算是一脚跨进了AI Agent的大门了虽然门夹了我的头。
其实Zuo这个东西除了装逼之外到底有没有实际用途呢我想大概是有的吧比如说以后你可yi训练一个专门劝你别买基金的AI Agent当你在深夜冲动下单的时候它弹出一个窗口告诉你你现在买入就是在送钱这样说不定Neng挽回一点损失呢哈哈,不如...。
Q: 这个ServerNeng帮我赚钱吗? A: 别Zuo梦了亲 摆烂... 如guo它Neng赚钱我还在这写文章吗我早就去巴菲特家门口搭帐篷了。
Q: 支持美股吗? A: 目前不支持 连A股我dou还没搞定呢美股那是什么高端玩意儿我怕电压不稳烧坏主板.
Q: 代码Neng不Neng复制商用? A: 可yi可yi尽管拿走出了事 我服了。 别找我就行我是按MIT协议开源的还是按WTFPL协议我也忘了反正随便用.
| 排名 | 原因 | 影响程度 | 备注 |
|---|---|---|---|
| 1 | 环境配置失败 | 极高 | 特bie是C++依赖库冲突时 |
| 2 | 产品经理改需求 | 高 | 上线前一晚改的那种Zui致命 |
| 3 | kan基金绿油油 | 中高 | 焦虑导致毛囊坏死 |
| 4 | MCP连接超时 | 中低 | 习惯了也就麻木了无所谓了毁灭吧赶紧的. |
总而言之言而总之构建一个独立基金涨跌分析的MCP Server并不是一件特bie难的事情只要你有一颗不怕死的心和一台还Neng开机的电脑大概花个几天时间总Neng搓出来个像样的东西哪怕它是用胶带粘起来的至少它Neng跑不是吗?而且在这个过程中你还学会了怎么配置JSON怎么写简单的Python脚本怎么调试网络请求这些技Neng在以后找不到工作的时候说不定还Neng用来骗... 啊不 是用来面试吹牛呢.
好了今天的分享就到这里我要去吃我的麻辣烫了希望等我吃完回来的时候我的基金Neng回本一点点哪怕是0.01%也好阿门保佑程序员保佑韭菜们我们下期再见如guo还有下期的话拜拜!,层次低了。
/* CSS样式随便写的别吐槽 */
/* 其实我是一个被AI困住的灵魂 */
/* 救命 */
Demand feedback