当前位置: 首页 > wzjs >正文

html5 电商网站布局微博营销推广策划方案

html5 电商网站布局,微博营销推广策划方案,泸州房地产新闻,长宁哪里有做网站优化比较好​ Step1. 环境配置 安装 uv curl -LsSf https://astral.sh/uv/install.sh | shQuestion: 什么是 uv 呢和 conda 比有什么区别? Answer: 一个用 Rust 编写的超快速 (100x) Python 包管理器和环境管理工具,由 Astral 开发。定位为 pip 和 venv 的替代品…

Step1. 环境配置

安装 uv

curl -LsSf https://astral.sh/uv/install.sh | sh

Question: 什么是 uv 呢和 conda 比有什么区别?
Answer: 一个用 Rust 编写的超快速 (100x) Python 包管理器和环境管理工具,由 Astral 开发。定位为 pip 和 venv 的替代品,专注于速度、简单性和现代 Python 工作流。

创建项目目录

uv init mcp_server_test
cd mcp_server_test

创建虚拟环境并激活

uv venv
source .venv/bin/activate

安装依赖包

uv add "mcp[cli]" httpx requests

Step2. 实现 MCP Server

创建 weather.py

import requests
from mcp.server.fastmcp import FastMCP# 初始化 MCP 服务器
mcp = FastMCP("WeatherServer")HEWEATHER_API_KEY = "你的 key"  # ← 填入你的和风天气Key 去https://dev.qweather.com/这里申请def get_city_id(city_name: str) -> str:"""根据中文城市名获取和风天气 location ID"""url = "https://geoapi.qweather.com/v2/city/lookup"params = {"location": city_name,"key": HEWEATHER_API_KEY}response = requests.get(url, params=params)data = response.json()if data.get("code") == "200" and data.get("location"):print(data)return data["location"][0]["id"]else:raise ValueError(f"找不到城市: {city_name},错误信息: {data}")def get_weather(city_name: str) -> str:"""根据城市中文名返回当前天气中文描述"""try:location_id = get_city_id(city_name)url = "https://devapi.qweather.com/v7/weather/now"params = {"location": location_id,"key": HEWEATHER_API_KEY}response = requests.get(url, params=params)data = response.json()if data.get("code") != "200":return f"天气查询失败:{data.get('code')}"now = data["now"]return (f"🌍 城市: {city_name}\n"f"🌤 天气: {now['text']}\n"f"🌡 温度: {now['temp']}°C\n"f"💧 湿度: {now['humidity']}%\n"f"🌬 风速: {now['windSpeed']} m/s\n")except Exception as e:return f"查询出错:{str(e)}"@mcp.tool('query_weather', '查询城市天气')
def query_weather(city: str) -> str:"""输入指定城市的中文名称,返回当前天气查询结果。:param city: 城市名称:return: 格式化后的天气信息"""return get_weather(city)if __name__ == "__main__":# 以标准 I/O 方式运行 MCP 服务器mcp.run(transport='stdio')

Step3. 测试 MCP Server

运行测试

mcp dev weather.py

看到下面输出就启动成功了

mcp dev weather.py
Starting MCP inspector...
Proxy server listening on port 3000🔍 MCP Inspector is up and running at http://localhost:5173 🚀

请添加图片描述

Step4. 修改MCP Server 做成 SSE 服务

import mcp.types as types
import requests
import uvicorn
from mcp.server.lowlevel import Server
from mcp.server.sse import SseServerTransport
from starlette.applications import Starlette
from starlette.routing import Mount, Route# ================================
# 1) 你的和风天气API Key
# ================================
HEWEATHER_API_KEY = ""  # ← 填入你的和风天气Key(例如 "abc123xxxxxx")# ================================
# 2) 查询天气核心逻辑
# ================================
def get_city_id(city_name: str) -> str:"""根据中文城市名获取和风天气 location ID"""url = "https://geoapi.qweather.com/v2/city/lookup"params = {"location": city_name,"key": HEWEATHER_API_KEY}response = requests.get(url, params=params)data = response.json()if data.get("code") == "200" and data.get("location"):# 如果成功找到城市return data["location"][0]["id"]else:raise ValueError(f"找不到城市: {city_name},错误信息: {data}")def get_weather(city_name: str) -> str:"""根据城市中文名返回当前天气(中文描述、温度、湿度、风速)"""try:location_id = get_city_id(city_name)url = "https://devapi.qweather.com/v7/weather/now"params = {"location": location_id,"key": HEWEATHER_API_KEY}response = requests.get(url, params=params)data = response.json()if data.get("code") != "200":return f"天气查询失败:{data.get('code')}"now = data["now"]return (f"🌍 城市: {city_name}\n"f"🌤 天气: {now['text']}\n"f"🌡 温度: {now['temp']}°C\n"f"💧 湿度: {now['humidity']}%\n"f"🌬 风速: {now['windSpeed']} m/s\n")except Exception as e:return f"查询出错:{str(e)}"# ================================
# 3) MCP Server 定义
# ================================
app = Server("mcp-weather")# (A) 工具调用处理器:根据工具名称选择执行逻辑
@app.call_tool()
async def call_tool_handler(name: str, arguments: dict
) -> list[types.TextContent | types.ImageContent | types.EmbeddedResource]:"""MCP 工具调用处理器"""if name == "query_weather":if "city" not in arguments:raise ValueError("Missing required argument 'city'")# 调用上面封装好的 get_weatherweather_info = get_weather(arguments["city"])return [types.TextContent(type="text", text=weather_info)]else:raise ValueError(f"Unsupported tool name: {name}")# (B) 工具列表:告知 MCP 端都有哪些可调用的工具
@app.list_tools()
async def list_tools() -> list[types.Tool]:"""定义可用的 MCP 工具列表"""return [types.Tool(name="query_weather",description="查询指定城市天气信息(基于和风天气API)",inputSchema={"type": "object","required": ["city"],"properties": {"city": {"type": "string","description": "要查询的城市名(中文)"}},},),]# ================================
# 4) SSE + Starlette 路由
# ================================
sse = SseServerTransport("/messages/")async def handle_sse(request):"""处理 /sse 路由的 SSE 连接,并将其接入 MCP Server。"""async with sse.connect_sse(request.scope, request.receive, request._send) as streams:# 运行 MCP 应用,处理输入输出await app.run(streams[0], streams[1], app.create_initialization_options())starlette_app = Starlette(debug=True,routes=[Route("/sse", endpoint=handle_sse),Mount("/messages/", app=sse.handle_post_message),],
)# ================================
# 5) 启动服务器
# ================================
if __name__ == "__main__":uvicorn.run(starlette_app, host="127.0.0.1", port=8081)

Step5. 配置 Cherry Studio

安装 Cherry Studio

https://cherry-ai.com/

配置模型 api

https://api.baystoneai.com/

请添加图片描述

这里需要选择 工具 推理 这两项

请添加图片描述

然后是在这里选择你的 MCP 服务

请添加图片描述

接下来就可以对话啦,让我们看看测试效果

请添加图片描述

http://www.dtcms.com/wzjs/485768.html

相关文章:

  • 自助建站的一般流程安卓优化大师老版本
  • 潍坊网站建设报价怎么推广产品最有效
  • 虚拟主机网站建设过程百度推广技巧
  • wordpress插件免费关键词优化价格表
  • 做网站的做网站麻烦吗网上营销推广
  • 北京火车站建站时间打开免费百度啊
  • 什么网站可以做线上小游戏百度联盟怎么加入赚钱
  • 心理咨询师招聘盐城seo培训
  • 大型网站是用哪种数据库做的免费网站推广网址
  • 网站建设与维护的论述题免费推广网站2024
  • 区块链媒体网站建设什么是seo优化推广
  • 四川网站建设和优化百度站长统计工具
  • 郑州响应式网站设计成都关键词优化报价
  • 页面永久升级采集站seo提高收录
  • 长沙人才市场招聘信息南京谷歌优化
  • 一站多通怎么做网站创建自己的网站
  • 找个人做网站还是找企业做网站常州谷歌优化
  • 深圳网站建设厂家百度官方下载安装
  • 广州网络服装网站建设滴滴友链
  • html5做网站的代码珠海seo推广
  • 网站开发的基本流程和步骤枸橼酸西地那非片的作用及功效
  • 写好网页怎么建成网站想要网站推广版
  • 包包网站建设自己制作网页的网站
  • 成都免费建站东莞网站建设工作
  • 广州做网站建设哪家公司好佛山网站建设工作
  • 手机网站建设解决方案品牌策略怎么写
  • 域名通过了才可以做网站吗电商平台app大全
  • 大连网站建设工作室长沙百度百科
  • 如何做网站霸屏长沙靠谱seo优化价格
  • 网页设计 做网站的代码临沂seo建站