使用说明
库存-MCP(或“库存-多通道协议”,具体翻译取决于MCP在此上下文中的具体含义)
一个简单的MCP服务器示例,附带在GCP Cloud Run上的部署说明。
服务器获取股票价格函数来自Bo Yang的“2分钟Adk” 文章
设置
安装 gcloud 命令行界面(CLI) https://cloud.google.com/sdk/docs/install 的中文翻译为:https://cloud.google.com/sdk/docs/install(该网址本身为英文,但说明其内容为关于安装Google Cloud SDK的文档) 并使用(某种方式)进行身份验证
gcloud auth application-default login
设置Python环境
# setup python environment
python -m venv .venv
pip install uv
pip install -r requirements.txt
构建与部署
在GCP控制台中,转到Artifact Registry并找到或创建一个工件(Docker)仓库。复制仓库的路径。路径看起来会像这样:
{region}/{project-id}/{repo-name}
eg.
us-central1-docker.pkg.dev/mullan-gmail-com/cloud-run-source-deploy
使用以下命令构建容器并部署到Cloud Run
# replace with your repo
export repo=us-central1-docker.pkg.dev/mullan-gmail-com/cloud-run-source-deploy
export image=$repo/stock-mcp
# build
gcloud builds submit --region=us-central1 --tag $image
# deploy
gcloud run deploy stock-mcp --region=us-central1 --no-allow-unauthenticated --image $image
客户
使用client.py客户端测试服务器。
获取服务器URL
export url=$(gcloud run services describe stock-mcp --format="value(status.url)" --region=us-central1)
获取身份令牌以进行身份验证
export token=$(gcloud auth print-identity-token)
运行客户端
uv run client.py
输出。。。
CallToolResult(content=[TextContent(type='text', text='237.49', annotations=None, meta=None)], structured_content={'result': 237.49}, data=237.49, is_error=False)
使用代理进行身份验证
作为使用身份令牌的一种替代方案,您可以运行云运行代理并无需令牌即可连接到它。
gcloud run services proxy stock-mcp --port=8080 --region=us-central1
export url=http://localhost:8080
export token=
uv run client.py
代理
代理目录中包含一个代理示例,用于测试我们的MCP服务器。
设置
编辑 agent/.env-template 文件,设置您的 GCP 项目 ID,并将其复制到 agent/.env
cp agent/.env-template agent/.env
运行ADK网络用户界面
adk web
然后浏览至 http://localhost:8000
在代理聊天中提出一些与股票相关的问题;你应该能看到工具调用我们的MCP服务器。你可以检查输入和输出。
