办学质量监测教学评价系统
ageerle
2025-04-18 9cd97a4dc596aad1f31cf3a72b9ee4c04727945b
feat: mcp支持远程调用
已修改3个文件
16 ■■■■ 文件已修改
ruoyi-admin/src/main/resources/mcp-server.json 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/impl/OpenAIServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/impl/SseServiceImpl.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
ruoyi-admin/src/main/resources/mcp-server.json
@@ -7,6 +7,16 @@
        "@modelcontextprotocol/server-filesystem",
        "D:\\software"
      ]
    },
    "search1api": {
      "command": "C:\\Program Files\\nodejs\\npx.cmd",
      "args": [
        "-y",
        "search1api-mcp"
      ],
      "env": {
        "SEARCH1API_KEY": "92A3D8F1-9BFA-485A-90E9-7680914CB666"
      }
    }
  }
}
ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/impl/OpenAIServiceImpl.java
@@ -62,7 +62,7 @@
    public SseEmitter chat(ChatRequest chatRequest,SseEmitter emitter) {
        String toolString = webMcpChat(chatRequest.getPrompt());
        Message userMessage = Message.builder().content("工具返回信息:"+toolString).role(Message.Role.ASSISTANT).build();
        Message userMessage = Message.builder().content("工具返回信息:"+toolString).role(Message.Role.USER).build();
        List<Message> messages = chatRequest.getMessages();
        messages.add(userMessage);
ruoyi-modules/ruoyi-chat/src/main/java/org/ruoyi/chat/service/chat/impl/SseServiceImpl.java
@@ -144,7 +144,9 @@
        String sysPrompt = chatModelVo.getSystemPrompt();
        if(StringUtils.isEmpty(sysPrompt)){
            sysPrompt ="你是一个由RuoYI-AI开发的人工智能助手,名字叫熊猫助手。你擅长中英文对话,能够理解并处理各种问题,提供安全、有帮助、准确的回答。" +
                    "当前时间:"+ DateUtils.getDate();
                    "当前时间:"+ DateUtils.getDate()+
                    "#注意:回复之前注意结合上下文内容。 ";
        }
        // 设置系统默认提示词
        Message sysMessage = Message.builder().content(sysPrompt).role(Message.Role.SYSTEM).build();