mirror of
https://gitee.com/wanwujie/deer-flow
synced 2026-04-03 06:12:14 +08:00
Add comprehensive MCP integration using langchain-mcp-adapters to enable pluggable external tools from MCP servers. Features: - MCP server configuration via mcp_config.json - Automatic lazy initialization for seamless use in both FastAPI and LangGraph Studio - Support for multiple MCP servers (filesystem, postgres, github, brave-search, etc.) - Environment variable resolution in configuration - Tool caching mechanism for optimal performance - Complete documentation and setup guide Implementation: - Add src/mcp module with client, tools, and cache components - Integrate MCP config loading in AppConfig - Update tool system to include MCP tools automatically - Add eager initialization in FastAPI lifespan handler - Add lazy initialization fallback for LangGraph Studio Dependencies: - Add langchain-mcp-adapters>=0.1.0 Documentation: - Add MCP_SETUP.md with comprehensive setup guide - Update CLAUDE.md with MCP system architecture - Update config.example.yaml with MCP configuration notes - Update README.md with MCP setup instructions Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
55 lines
1.5 KiB
JSON
55 lines
1.5 KiB
JSON
{
|
|
"mcpServers": {
|
|
"filesystem": {
|
|
"enabled": true,
|
|
"command": "npx",
|
|
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/files"],
|
|
"env": {},
|
|
"description": "Provides file system access within specified directory"
|
|
},
|
|
"postgres": {
|
|
"enabled": false,
|
|
"command": "npx",
|
|
"args": ["-y", "@modelcontextprotocol/server-postgres", "postgresql://localhost/mydb"],
|
|
"env": {
|
|
"PGPASSWORD": "$POSTGRES_PASSWORD"
|
|
},
|
|
"description": "PostgreSQL database access"
|
|
},
|
|
"github": {
|
|
"enabled": false,
|
|
"command": "npx",
|
|
"args": ["-y", "@modelcontextprotocol/server-github"],
|
|
"env": {
|
|
"GITHUB_PERSONAL_ACCESS_TOKEN": "$GITHUB_TOKEN"
|
|
},
|
|
"description": "GitHub repository operations"
|
|
},
|
|
"brave-search": {
|
|
"enabled": false,
|
|
"command": "npx",
|
|
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
|
|
"env": {
|
|
"BRAVE_API_KEY": "$BRAVE_API_KEY"
|
|
},
|
|
"description": "Brave Search API integration"
|
|
},
|
|
"puppeteer": {
|
|
"enabled": false,
|
|
"command": "npx",
|
|
"args": ["-y", "@modelcontextprotocol/server-puppeteer"],
|
|
"env": {},
|
|
"description": "Browser automation with Puppeteer"
|
|
},
|
|
"custom-server": {
|
|
"enabled": false,
|
|
"command": "python",
|
|
"args": ["-m", "my_custom_mcp_server"],
|
|
"env": {
|
|
"API_KEY": "$CUSTOM_API_KEY"
|
|
},
|
|
"description": "Custom MCP server implementation"
|
|
}
|
|
}
|
|
}
|