MCP实现Agentic RAG server案例

使用dify的知识库 api,fastapi创建mcp server


代码

复制代码
@mcp.tool()
async def rag_retrieve(query: str) -> dict:
    """
    Name:
        ***产品业务服务等相关客服问答知识检索服务

    Description:
        提供****业务服务等相关客服问答知识检索服务,根据输入query返回结果。
    
    Args:
        query: 搜索的内容,参数必传,例如 'query=客服电话'
    """
    url = "http://117.-dbb9-4cb9-a172-482c6571aab8/retrieve"
    token = "dataset-VVqUSZNMzMrVLiB4wQbvlYCW"  # 你的token

    headers = {
        "Authorization": f"Bearer {token}",
        # 使用 json= 参数时会自动设置 Content-Type,此处保留以匹配原始请求
        "Content-Type": "application/json"
    }

    payload = {
        "query": query,
        "retrieval_model": {
            "search_method": "semantic_search",
            "reranking_enable": False,  # false → False
            "reranking_mode": None,  # null → None
            "reranking_model": {
                "reranking_provider_name": "",
                "reranking_model_name": ""
            },
            "weights": None,  # null → None
            "top_k": 2,
            "score_threshold_enabled": False,  # false → False
            "score_threshold": None,  # null → None
            
        }
    }
    logging.info(f"rag_retrieve query:{query}")
    # ✅ 使用全局连接池
    client = await get_http_client()
    
    try:
        response = await client.post(url, headers=headers, json=payload)
        response.raise_for_status()
        result = response.json()
        logging.info(f"🔍 rag_retrieve 完成")
        return result
    except Exception as e:
        logging.error(f"❌ rag_retrieve 失败: {e}")
        raise ValueError(f"调用API失败: {e}")

cherry studio客服端访问

相关推荐
先吃饱再说7 分钟前
手写一个文件读写 MCP Server:让大模型“触摸”你的硬盘
llm·mcp
VIP_CQCRE2 小时前
Codex CLI 如何高效整合 Ace Data Cloud MCP:把开发、生成、搜索和发布放进一个终端
ai工具·开发效率·mcp·codex cli·ace data cloud
love530love15 小时前
WorkBuddy + 本地 ComfyUI MCP:免订阅费的自建方案
人工智能·windows·mcp·comfy cloud
神一样的老师19 小时前
使用WorkBuddy自动发微博教程
人工智能·mcp
Darling噜啦啦19 小时前
手写 MCP Server 全栈实战:用 Node.js + Zod 从零构建 AI 文件读取工具
mcp
至乐活着1 天前
让Claude能力飞升:用MCP协议构建自定义工具实战
claude·mcp·model context protocol·自定义工具·ai扩展
阿拉斯攀登1 天前
企业级RAG架构:权限控制、安全防护与多租户
检索增强·知识库·向量数据库·rag·企业级应用
HjhIron1 天前
从 RAG 乱象到统一标准:MCP 凭什么成为 Agentic AI 的底座?
ai编程·mcp
Darling噜啦啦1 天前
MCP 协议深度解析:AI 界的 USB-C,彻底终结工具接入的混乱时代
mcp
CV-deeplearning2 天前
万物皆可 Markdown!开源 MCP 服务器 Markdownify,10 种格式一键转换
开源·markdown·格式转换·ai工具·mcp·markdownify