MCPHub LabRegistryjd-opensource/joyagent-jdgenie
jd-opensource

jd opensource/joyagent jdgenie

Built by jd-opensource 11,598 stars

What is jd opensource/joyagent jdgenie?

开源的端到端产品级通用智能体

How to use jd opensource/joyagent jdgenie?

1. Install a compatible MCP client (like Claude Desktop). 2. Open your configuration settings. 3. Add jd opensource/joyagent jdgenie using the following command: npx @modelcontextprotocol/jd-opensource-joyagent-jdgenie 4. Restart the client and verify the new tools are active.
🛡️ Scoped (Restricted)
npx @modelcontextprotocol/jd-opensource-joyagent-jdgenie --scope restricted
🔓 Unrestricted Access
npx @modelcontextprotocol/jd-opensource-joyagent-jdgenie

Key Features

Native MCP Protocol Support
Real-time Tool Activation & Execution
Verified High-performance Implementation
Secure Resource & Context Handling

Optimized Use Cases

Extending AI models with custom local capabilities
Automating system workflows via natural language
Connecting external data sources to LLM context windows

jd opensource/joyagent jdgenie FAQ

Q

Is jd opensource/joyagent jdgenie safe?

Yes, jd opensource/joyagent jdgenie follows the standardized Model Context Protocol security patterns and only executes tools with explicit user-granted permissions.

Q

Is jd opensource/joyagent jdgenie up to date?

jd opensource/joyagent jdgenie is currently active in the registry with 11,598 stars on GitHub, indicating its reliability and community support.

Q

Are there any limits for jd opensource/joyagent jdgenie?

Usage limits depend on the specific implementation of the MCP server and your system resources. Refer to the official documentation below for technical details.

Official Documentation

View on GitHub

Agent开源git开源文档

简体中文 | English Version

业界首个开源高完成度轻量化通用多智能体产品(JoyAgent-JDGenie)

解决快速构建多智能体产品的最后一公里问题

new release

多模态知识管理平台是一款面向多模态非结构化知识的RAG解决方案,集成解析、检索与生成能力,能够高效处理复杂文档,为智能问答与内容生成提供一站式支持。

<font color=red>多模态知识管理:面向多模态文档的综合性RAG平台,为复杂文档的智能问答与内容生成提供一站式解决方案。</font> (注意使用mrag分支)

简介

当前相关开源agent主要是SDK或者框架,用户还需基于此做进一步的开发,无法直接做到开箱即用。我们开源的JoyAgent-JDGenie是端到端的多Agent产品,对于输入的query或者任务,可以直接回答或者解决。例如用户query"给我做一个最近美元和黄金的走势分析",JoyAgent-Genie可以直接给出网页版或者PPT版的报告文档。

JoyAgent-JDGenie是一个通用的多智能体框架,对于用户需要定制的一些新场景功能,只需将相关的子智能体或者工具挂载到JoyAgent-Genie即可。为了验证JoyAgent-JDGenie的通用性,在GAIA榜单Validation集准确率75.15%、Test集65.12%,已超越OWL(CAMEL)、Smolagent(Huggingface)、LRC-Huawei(Huawei)、xManus(OpenManus)、AutoAgent(香港大学)等行业知名产品。

此外,我们的开源多智能体产品JoyAgent-JDGenie相对比较轻量,不像阿里的SpringAI-Alibaba需要依赖阿里云百炼平台相关功能(基于百炼平台调用LLM),Coze依赖火山引擎平台。

我们整体开源了智能体产品JoyAgent-JDGenie,包括前端、后端、框架、引擎、核心子智能体(报告生成智能体、代码智能体、PPT智能体、文件智能体等)、想用微调后效果更好的欢迎使用JoyAgent。

案例展示

<table> <tbody> <tr> <td><img src="./docs/img/首页.png" alt=""></td> <td><img src="./docs/img/ppt.png" alt=""></td> </tr> <tr> <td><img src="./docs/img/report.png" alt=""></td> <td><img src="./docs/img/table_analysis.png" alt=""></td> </tr> </tbody> </table> <table> <tbody> <tr> <td> <video src="https://private-user-images.githubusercontent.com/49786633/469170308-065b8d1a-92e4-470a-bbe3-426fafeca5c4.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMxOTEzNzEsIm5iZiI6MTc1MzE5MTA3MSwicGF0aCI6Ii80OTc4NjYzMy80NjkxNzAzMDgtMDY1YjhkMWEtOTJlNC00NzBhLWJiZTMtNDI2ZmFmZWNhNWM0Lm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIyVDEzMzExMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWRjNGY5ZTlmMTA4ODVhMWE0ZmEzYzU3YTIwYzJkYmIyY2Y0ZWE0NGUwZWU2ODAxNDA2MzQ0NzMyMWFlNTdiNWImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.fJyoUGcWjPWyG64ZwIcWWKz3FrBWuXAHHfdTLpIaaeU" data-canonical-src="https://private-user-images.githubusercontent.com/49786633/469170308-065b8d1a-92e4-470a-bbe3-426fafeca5c4.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMxOTEzNzEsIm5iZiI6MTc1MzE5MTA3MSwicGF0aCI6Ii80OTc4NjYzMy80NjkxNzAzMDgtMDY1YjhkMWEtOTJlNC00NzBhLWJiZTMtNDI2ZmFmZWNhNWM0Lm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIyVDEzMzExMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWRjNGY5ZTlmMTA4ODVhMWE0ZmEzYzU3YTIwYzJkYmIyY2Y0ZWE0NGUwZWU2ODAxNDA2MzQ0NzMyMWFlNTdiNWImWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.fJyoUGcWjPWyG64ZwIcWWKz3FrBWuXAHHfdTLpIaaeU" controls="controls" muted="muted" class="d-block rounded-bottom-2 border-top width-fit" style="max-height:640px; min-height: 200px"> </video> <td> <video src="https://private-user-images.githubusercontent.com/49786633/469171050-15dcf089-5659-489e-849d-39c651ca7e5a.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMxOTEzNzEsIm5iZiI6MTc1MzE5MTA3MSwicGF0aCI6Ii80OTc4NjYzMy80NjkxNzEwNTAtMTVkY2YwODktNTY1OS00ODllLTg0OWQtMzljNjUxY2E3ZTVhLm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIyVDEzMzExMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTY5ZGU2MWU3NzA5NjYxM2ZhZDYxYTZjMWQxYWMzNGM2MTY2ODkzMTIzYjQ1NzRiOGZkOWUyODYzNmQ4N2Y5ZTUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.7KW-JGmFACnf5IS3kL7M0eV8uZhlxDD8Br61XvcgmjY" data-canonical-src="https://private-user-images.githubusercontent.com/49786633/469171050-15dcf089-5659-489e-849d-39c651ca7e5a.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMxOTEzNzEsIm5iZiI6MTc1MzE5MTA3MSwicGF0aCI6Ii80OTc4NjYzMy80NjkxNzEwNTAtMTVkY2YwODktNTY1OS00ODllLTg0OWQtMzljNjUxY2E3ZTVhLm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIyVDEzMzExMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTY5ZGU2MWU3NzA5NjYxM2ZhZDYxYTZjMWQxYWMzNGM2MTY2ODkzMTIzYjQ1NzRiOGZkOWUyODYzNmQ4N2Y5ZTUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.7KW-JGmFACnf5IS3kL7M0eV8uZhlxDD8Br61XvcgmjY" controls="controls" muted="muted" class="d-block rounded-bottom-2 border-top width-fit" style="max-height:640px; min-height: 200px"> </video> </td> </tr> <tr> <td> <video src="https://private-user-images.githubusercontent.com/49786633/469171112-cd99e2f8-9887-459f-ae51-00e7883fa050.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMxOTEzNzEsIm5iZiI6MTc1MzE5MTA3MSwicGF0aCI6Ii80OTc4NjYzMy80NjkxNzExMTItY2Q5OWUyZjgtOTg4Ny00NTlmLWFlNTEtMDBlNzg4M2ZhMDUwLm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIyVDEzMzExMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWYyYmU5ODg4ZjI5NDNjZjBiYTVjYWRjMTI2ZGEyMDdjOWU2OTk2M2EwZjU4N2ZkYzU5NTQ5ZDJjMmUxMWNjNjAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.OSPODm-E7K7PJaao8uThG1toIKsX3h93UEXS5GDqruQ" data-canonical-src="https://private-user-images.githubusercontent.com/49786633/469171112-cd99e2f8-9887-459f-ae51-00e7883fa050.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMxOTEzNzEsIm5iZiI6MTc1MzE5MTA3MSwicGF0aCI6Ii80OTc4NjYzMy80NjkxNzExMTItY2Q5OWUyZjgtOTg4Ny00NTlmLWFlNTEtMDBlNzg4M2ZhMDUwLm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIyVDEzMzExMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWYyYmU5ODg4ZjI5NDNjZjBiYTVjYWRjMTI2ZGEyMDdjOWU2OTk2M2EwZjU4N2ZkYzU5NTQ5ZDJjMmUxMWNjNjAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.OSPODm-E7K7PJaao8uThG1toIKsX3h93UEXS5GDqruQ" controls="controls" muted="muted" class="d-block rounded-bottom-2 border-top width-fit" style="max-height:640px; min-height: 200px"> </video> </td> <td> <video src="https://private-user-images.githubusercontent.com/49786633/469171151-657bbe61-5516-4ab9-84c2-c6ca75cc4a6f.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMxOTEzNzEsIm5iZiI6MTc1MzE5MTA3MSwicGF0aCI6Ii80OTc4NjYzMy80NjkxNzExNTEtNjU3YmJlNjEtNTUxNi00YWI5LTg0YzItYzZjYTc1Y2M0YTZmLm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIyVDEzMzExMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTVmNGExZTlhNmM5NWMzMjc3ZWFlNTcyMzZjZTA4NWU4ZjY3OTA5ZTg5NzgwNDA2ODExNTg5MTkyNGQ5NDYzNTgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.n3ZWlSK1GSM5Zyibk-D9jAArzDqvX3WdZtj7IdzG-4I" data-canonical-src="https://private-user-images.githubusercontent.com/49786633/469171151-657bbe61-5516-4ab9-84c2-c6ca75cc4a6f.mp4?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3NTMxOTEzNzEsIm5iZiI6MTc1MzE5MTA3MSwicGF0aCI6Ii80OTc4NjYzMy80NjkxNzExNTEtNjU3YmJlNjEtNTUxNi00YWI5LTg0YzItYzZjYTc1Y2M0YTZmLm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTA3MjIlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwNzIyVDEzMzExMVomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTVmNGExZTlhNmM5NWMzMjc3ZWFlNTcyMzZjZTA4NWU4ZjY3OTA5ZTg5NzgwNDA2ODExNTg5MTkyNGQ5NDYzNTgmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.n3ZWlSK1GSM5Zyibk-D9jAArzDqvX3WdZtj7IdzG-4I" controls="controls" muted="muted" class="d-block rounded-bottom-2 border-top width-fit" style="max-height:640px; min-height: 200px"> </video> </td> </tr> </tbody> </table>

产品对比

<table> <thead> <tr> <th>分类</th> <th>agent</th> <th>是否开源</th> <th>是否开源完整产品</th> <th>是否依赖生态</th> </tr> </thead> <tbody> <tr> <td rowspan="2"><strong>SDK类</strong></td> <td>SpringAI-Alibaba</td> <td>部分</td> <td>否,只开源SDK(SDK)</td> <td>是(阿里云百炼平台)</td> </tr> <tr> <td>Coze</td> <td>部分</td> <td>否,只开源部分Nieo SDK(SDK)</td> <td>是(火山引擎平台)</td> </tr> <tr> <td rowspan="6"><strong>框架类</strong></td> <td>Fellow</td> <td>是</td> <td>否,只开源了Eko智能体框架(框架)</td> <td>否</td> </tr> <tr> <td>Dify</td> <td>是</td> <td>否,只开源了智能体框架,且主要是workflow(框架)</td> <td>否</td> </tr> <tr> <td>SkyworkAI</td> <td>是</td> <td>否,只开源了智能体框架(框架)</td> <td>否</td> </tr> <tr> <td>OpenManus</td> <td>是</td> <td>否,只开源了智能体框架(框架)</td> <td>否</td> </tr> <tr> <td>Owl</td> <td>是</td> <td>否,只开源了智能体框架(框架)</td> <td>否</td> </tr> <tr> <td>n8n</td> <td>是</td> <td>否,只开源了智能体框架,且主要是workflow(框架)</td> <td>否</td> </tr> <tr> <td rowspan="3"><strong>协议类</strong></td> <td>MCP</td> <td>是</td> <td>否,只是开源协议</td> <td>否</td> </tr> <tr> <td>A2A</td> <td>是</td> <td>否,只是开源协议</td> <td>否</td> </tr> <tr> <td>AG-UI</td> <td>是</td> <td>否,只是开源协议</td> <td>否</td> </tr> <tr> <td rowspan="2"><strong>技术模块类</strong></td> <td>memory0</td> <td>是</td> <td>否,只是开源的技术模块</td> <td>否</td> </tr> <tr> <td>LlamaIndex</td> <td>是</td> <td>否,只是开源的技术模块</td> <td>否</td> </tr> <tr> <td><strong>产品类</strong></td> <td>Our</td> <td>是</td> <td>是,开源端到端完整的Agent产品(产品)</td> <td>否</td> </tr> </tbody> </table>

框架效果先进性

Test集效果 65.12%

<img width="3524" height="1022" alt="test" src="https://github.com/user-attachments/assets/06c85286-e61f-4b5e-8335-413cd22ecbf4" />

Validation集效果 75.15%

AgentScoreScore_level1Score_level2Score_level3机构
Alita v2.10.87270.88680.89530.7692Princeton
Skywork0.82420.92450.83720.5769天工
AWorld0.77580.88680.77910.5385Ant Group
Langfun0.76970.86790.76740.5769DeepMind
JoyAgent-JDGenie0.75150.86790.77910.4230JD
OWL0.69090.84910.67440.4231CAMEL
Smolagent0.55150.67920.53490.3462Huggingface
AutoAgent0.55150.71700.53490.2692HKU
Magentic0.46060.56600.46510.2308MSR AI Frontiers
LRC-Huawei0.4060.52830.43020.0769Huawei
xManus0.40610.81130.27910.0000OpenManus
<img width="1073" height="411" alt="score" src="https://github.com/user-attachments/assets/9d997b68-565e-4228-8f5b-229158f33617" />

系统架构

archi

本开源项目基于JoyAgent-JDGenie产品开源了整体的产品界面、智能体的多种核心模式(react模式、plan and executor模式等)、多个子智能体(report agent、search agent等)以及多整体间交互协议。

主要特点和优势

  • 端到端完整的多智能体产品,开箱即用,支持二次开发
  • 智能体框架协议
    • 支持多种智能体设计模式
    • 多智能体上下文管理
    • 高并发DAG执行引擎,极致的执行效率
  • 子智能体和工具
    • 子Agent和工具可插拔:预置多种子智能体和工具
    • 多种文件交付样式:html、ppt、markdown
    • plan和工具调用 RL优化迭代
    • 全链路流式输出

主要创新点

invo

multi-level and multi-pattern thinking:结合多种智能体设计模式支持多层级的规划和思考

  • multi-level:work level 和 task level
  • multi-pattern:plan and executor模式和react模式

cross task workflow memory:跨任务级别的相似任务memory

tool evolution via auto-disassembly-and-reassembly of atom-tools

  • 基于已有工具迭代产生新工具,而不是从0-1直接生成新工具(减少错误工具的生成)
  • 基于已有工具隐性拆解为原子工具,并基于原子工具结合大模型自动组合成新工具(不需要花费人力预先定义和拆解原子工具)

快速开始

方式1: docker 一键启动服务

1. git clone https://github.com/jd-opensource/joyagent-jdgenie.git

2. 手动更新 genie-backend/src/main/resources/application.yml中 base_url、apikey、model、max_tokens、model_name等配置
使用DeepSeek时: 注意deepseek-chat 为max_tokens: 8192

手动更新 genie-tool/.env_template 中的 OPENAI_API_KEY、OPENAI_BASE_URL、DEFAULT_MODEL、SERPER_SEARCH_API_KEY
使用DeepSeek时: 设置DEEPSEEK_API_KEY、DEEPSEEK_API_BASE,DEFAULT_MODEL 设置为 deepseek/deepseek-chat,所有 ${DEFAULT_MODEL} 也都改成deepseek/deepseek-chat

3. 编译dockerfile
docker build -t genie:latest .

4. 启动dockerfile
docker run -d -p 3000:3000 -p 8080:8080 -p 1601:1601 --name genie-app genie:latest

5. 浏览器输入 localhost:3000 访问genie

如果部署遇到问题,可以参考视频:【5分钟使用deepseek启动开源智能体应用joyagent-genie-哔哩哔哩】 https://b23.tv/8VQDBOK

方式2: 手动初始化环境,启动服务

环境准备

  • jdk17
  • python3.11
  • python环境准备
    • pip install uv
    • cd genie-tool
    • uv sync
    • source .venv/bin/activate

方案1:手动step by step部署手册

手动超详细攻略参考 Step by Step

方案2:手动一键启动部署(推荐)

直接通过shell启动所有服务

sh check_dep_port.sh # 检查所有依赖和端口占用情况
sh Genie_start.sh  # 直接启动,以后改动配置直接重启动脚本即可,control+c 一键kill所有服务

部署时可以参考视频:【joyagent-jdgenie部署演示】 https://www.bilibili.com/video/BV1Py8Yz4ELK/?vd_source=a5601a346d433a490c55293e76180c9d

二次开发

如何添加自己的MCP工具到JoyAgent-JDGenie中

配置文件

genie-backend/src/main/resources/application.yml 添加mcp_server服务,多个server逗号分隔 在 ui/.env 中可以修改前端请求后端的路径

mcp_server_url: "http://ip1:port1/sse,http://ip2:port2/sse"

启动服务

sh start_genie.sh

开始对话

比如添加12306工具后,规划7月7天2人从北京出发去新疆旅行计划,并查询相关火车票信息, genie会进行旅行计划设计,然后调用mcp工具查询车票信息,最终输出报告。 img.png

新增自定义子Agent到JoyAgent-JDGenie中

实现BaseTool接口,声明工具的名称、描述、参数、调用方法。

/**
 * 工具基接口
 */
public interface BaseTool {
    String getName(); // 工具名称
    String getDescription(); // 工具描述
    Map<String, Object> toParams(); // 工具参数
    Object execute(Object input); // 调用工具
}

// 天气智能体示例
public class WeatherTool implements BaseTool {
    @Override
    public String getName() {
        return "agent_weather";
    }

    @Override
    public String getDescription() {
        return "这是一个可以查询天气的智能体";
    }

    @Override
    public Map<String, Object> toParams() {
        return "{\"type\":\"object\",\"properties\":{\"location\":{\"description\":\"地点\",\"type\":\"string\"}},\"required\":[\"location\"]}";
    }

    @Override
    public Object execute(Object input) {
        return "今日天气晴朗";
    }
}

com.jd.genie.controller.GenieController#buildToolCollection中添加如下代码,引入自定义Agent

WeatherTool weatherTool = new WeatherTool();
toolCollection.addTool(weatherTool);

启动服务

sh start_genie.sh

项目共建者

贡献者:Liu Shangkun,Li Yang,Jia Shilin,Tian Shaohua,Wang Zhen,Yao Ting,Wang Hongtao,Zhou Xiaoqing,Liu min,Zhang Shuang,Liuwen,Yangdong,Xu Jialei,Zhou Meilei,Zhao Tingchong,Wu jiaxing, Wang Hanmin, Zhou Zhiyuan, Xu Shiyue,Liu Jiarun

所属机构:京东CHO企业信息化团队(EI)

贡献和合作

我们欢迎所有好想法和建议,如果您想成为项目的共建者,可随时向我们提Pull Request。无论是完善产品和框架、修复bug还是添加新特性,您的贡献都非常宝贵。 在此之前需要您阅读并签署贡献者协议并发送到邮箱org.developer3@jd.com,请阅读 贡献指南中文版贡献指南英文版

引用

如需学术引用,请使用以下 BibTeX:

@software{JoyAgent-JDGenie,
  author = {Agent Team at JDCHO},
  title = {JoyAgent-JDGenie},
  year = {2025},
  url = {https://github.com/jd-opensource/joyagent-jdgenie},
  version = {0.1.0},
  publisher = {GitHub},
  email = {jiashilin1@jd.com;liyang.1236@jd.com;liushangkun@jd.com;tianshaohua.1@jd.com;wangzhen449@jd.com;yaoting.2@jd.com}
}

Contributors

<a href="https://github.com/jd-opensource/joyagent-jdgenie/graphs/contributors"> <img src="https://contrib.rocks/image?repo=jd-opensource/joyagent-jdgenie" /> </a>

Star History

Star History Chart

欢迎沟通和联系我们
<img width="396" height="396" alt="image" src="https://github.com/user-attachments/assets/275e8ca5-da74-4bf1-84e5-f5712aea0b94" />

Global Ranking

8.5
Trust ScoreMCPHub Index

Based on codebase health & activity.

Manual Config

{ "mcpServers": { "jd-opensource-joyagent-jdgenie": { "command": "npx", "args": ["jd-opensource-joyagent-jdgenie"] } } }