yeepay_yop_link_detail
Fetch detailed content from YOP platform subpages or external links by providing a URL. Recursively retrieve details from links found in the content.
Instructions
通过此工具,获取易宝支付开放平台(YOP)的各个子页面或者外部链接的详细内容,内容中包含链接时可以调用工具yeepay_yop_link_detail进一步获取其详细内容
Args: url: str - 易宝支付开放平台(YOP)的子页面的URL地址
Returns: str: 易宝支付开放平台(YOP)的各个子页面的详细内容
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |
Implementation Reference
- yop_mcp/main.py:149-168 (handler)The main handler function for the yeepay_yop_link_detail tool. It accepts a URL, uses HttpUtils.download_content to fetch the content of the page. If the URL starts with 'http' it uses it as-is; otherwise it prepends 'https://open.yeepay.com/' to form the full URL. On failure, it returns an error message.
@mcp.tool() def yeepay_yop_link_detail(url: str) -> str: """ 通过此工具,获取易宝支付开放平台(YOP)的各个子页面或者外部链接的详细内容,内容中包含链接时可以调用工具yeepay_yop_link_detail进一步获取其详细内容 Args: url: str - 易宝支付开放平台(YOP)的子页面的URL地址 Returns: str: 易宝支付开放平台(YOP)的各个子页面的详细内容 """ try: if url.startswith("http"): return HttpUtils.download_content(url) url = ("https://open.yeepay.com/" + url).replace("//", "/") return HttpUtils.download_content(url) except (ValueError, TypeError, ConnectionError): return "HTTP请求失败, url: " + url - yop_mcp/main.py:149-149 (registration)The tool is registered as an MCP tool via the @mcp.tool() decorator on line 149. The mcp instance is a FastMCP server created on line 11.
@mcp.tool() - tools/http_utils.py:13-37 (helper)The HttpUtils.download_content static method used by the handler to fetch the URL content via HTTP GET using httpx (HTTP/2 enabled).
@staticmethod def download_content(url: str, timeout: Optional[int] = None) -> str: """ 同步下载文件(无进度显示)并返回文件内容 Args: url: 下载地址 timeout: 超时时间(秒) Returns: str: 下载的文本内容 """ try: with httpx.Client(http2=True, timeout=timeout) as client: # 启用HTTP/2加速 response = client.get(url) response.raise_for_status() # 自动检测4xx/5xx错误 content = response.text print(f"已获取内容,长度: {len(content)} 字符") return content except httpx.HTTPStatusError as e: print(f"HTTP错误 {e.response.status_code}") return f"HTTP请求失败: HTTP {e.response.status_code}" except Exception as e: # 保持通用异常处理以支持测试 print(f"请求失败:{str(e)}") return f"HTTP请求失败: {str(e)}" - yop_mcp/main.py:150-158 (schema)The function signature defines the schema: a single required parameter 'url' of type str as input, and returns a str.
def yeepay_yop_link_detail(url: str) -> str: """ 通过此工具,获取易宝支付开放平台(YOP)的各个子页面或者外部链接的详细内容,内容中包含链接时可以调用工具yeepay_yop_link_detail进一步获取其详细内容 Args: url: str - 易宝支付开放平台(YOP)的子页面的URL地址 Returns: str: 易宝支付开放平台(YOP)的各个子页面的详细内容