- Add intelligent-router.sh hook for automatic agent routing - Add AUTO-TRIGGER-SUMMARY.md documentation - Add FINAL-INTEGRATION-SUMMARY.md documentation - Complete Prometheus integration (6 commands + 4 tools) - Complete Dexto integration (12 commands + 5 tools) - Enhanced Ralph with access to all agents - Fix /clawd command (removed disable-model-invocation) - Update hooks.json to v5 with intelligent routing - 291 total skills now available - All 21 commands with automatic routing 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
150 lines
3.5 KiB
Markdown
150 lines
3.5 KiB
Markdown
# MCP Server Registry
|
|
|
|
This directory contains the MCP (Model Context Protocol) server registry system for Dexto.
|
|
|
|
## Structure
|
|
|
|
- `serverRegistry.ts` - The main registry service that manages MCP server entries
|
|
- `server-registry-data.json` - External JSON file containing all built-in server definitions
|
|
|
|
## Adding New MCP Servers
|
|
|
|
To add a new MCP server to the registry, simply edit the `server-registry-data.json` file. No code changes are required!
|
|
|
|
### Server Entry Format
|
|
|
|
Each server entry should follow this structure:
|
|
|
|
```json
|
|
{
|
|
"id": "unique-server-id",
|
|
"name": "Display Name",
|
|
"description": "Brief description of what this server does",
|
|
"category": "productivity|research|creative|development",
|
|
"icon": "📁",
|
|
"config": {
|
|
"type": "stdio|http|sse",
|
|
"command": "npx|uvx|python",
|
|
"args": ["-y", "package-name"],
|
|
"env": {
|
|
"API_KEY": ""
|
|
},
|
|
"timeout": 30000
|
|
},
|
|
"tags": ["tag1", "tag2"],
|
|
"isOfficial": true,
|
|
"isInstalled": false,
|
|
"requirements": {
|
|
"platform": "all|windows|mac|linux",
|
|
"node": ">=18.0.0",
|
|
"python": ">=3.10"
|
|
},
|
|
"author": "Author Name",
|
|
"homepage": "https://github.com/author/repo",
|
|
"matchIds": ["server-id", "alternative-id"]
|
|
}
|
|
```
|
|
|
|
### Configuration Types
|
|
|
|
#### Stdio (Node.js/npm)
|
|
```json
|
|
{
|
|
"type": "stdio",
|
|
"command": "npx",
|
|
"args": ["-y", "package-name"],
|
|
"env": {
|
|
"API_KEY": ""
|
|
}
|
|
}
|
|
```
|
|
|
|
#### Stdio (Python/uvx)
|
|
```json
|
|
{
|
|
"type": "stdio",
|
|
"command": "uvx",
|
|
"args": ["package-name"]
|
|
}
|
|
```
|
|
|
|
#### HTTP/SSE
|
|
```json
|
|
{
|
|
"type": "http",
|
|
"url": "https://api.example.com/mcp",
|
|
"headers": {
|
|
"Authorization": "Bearer $API_KEY"
|
|
}
|
|
}
|
|
```
|
|
|
|
### Categories
|
|
|
|
- **productivity** - File operations, task management, workflow tools
|
|
- **research** - Search, data analysis, information gathering
|
|
- **creative** - Image editing, music creation, content generation
|
|
- **development** - Code analysis, debugging, development tools
|
|
|
|
### Icons
|
|
|
|
Use appropriate emojis for each server type:
|
|
- 📁 File operations
|
|
- 🔍 Search/research
|
|
- 🖼️ Image/media
|
|
- 🎵 Audio/music
|
|
- 🌐 Web/browser
|
|
- 📋 Task management
|
|
- 🤗 AI/ML models
|
|
|
|
## Benefits of External JSON
|
|
|
|
1. **No rebuilds required** - Add servers by editing JSON only
|
|
2. **Easy maintenance** - All server data in one place
|
|
3. **Version control friendly** - Track server additions in git
|
|
4. **Non-developer friendly** - Anyone can add servers without touching code
|
|
5. **Consistent structure** - Enforced schema for all entries
|
|
|
|
## Example: Adding Tavily Search
|
|
|
|
```json
|
|
{
|
|
"id": "tavily",
|
|
"name": "Tavily Search",
|
|
"description": "Web search and research using Tavily AI search engine",
|
|
"category": "research",
|
|
"icon": "🔍",
|
|
"config": {
|
|
"type": "stdio",
|
|
"command": "npx",
|
|
"args": ["-y", "tavily-mcp@0.1.3"],
|
|
"env": {
|
|
"TAVILY_API_KEY": ""
|
|
},
|
|
"timeout": 30000
|
|
},
|
|
"tags": ["search", "web", "research", "ai"],
|
|
"isOfficial": false,
|
|
"isInstalled": false,
|
|
"requirements": { "platform": "all", "node": ">=18.0.0" },
|
|
"author": "Tavily AI",
|
|
"homepage": "https://www.npmjs.com/package/tavily-mcp",
|
|
"matchIds": ["tavily"]
|
|
}
|
|
```
|
|
|
|
## Testing
|
|
|
|
After adding a new server to the JSON file:
|
|
|
|
1. Restart the Dexto WebUI
|
|
2. Navigate to the server registry
|
|
3. Verify the new server appears in the list
|
|
4. Test adding it to an agent
|
|
|
|
## Troubleshooting
|
|
|
|
- **Server not appearing**: Check JSON syntax and restart WebUI
|
|
- **Import errors**: Ensure the JSON file is valid and accessible
|
|
- **Type errors**: Verify the server entry matches the expected schema
|