MCP
Dupli speaks the Model Context Protocol over stdio. Configure servers once and their tools become available to the model as regular actions — no extra flags needed at launch.
Configuration
Add servers to any config file (global or per-folder):
{
"mcpServers": {
"fetch": {
"command": "uvx",
"args": ["mcp-server-fetch"]
},
"files": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/tmp"],
"env": { "SOME_VAR": "value" }
}
}
}
What happens at startup
- Dupli spawns each server process.
- It performs the
initializehandshake (protocol2024-11-05). - It calls
tools/listand registers every tool. - The tools are listed in the system prompt, so the model can call:
{"type": "mcp_tool", "server": "fetch", "tool": "fetch",
"arguments": {"url": "https://example.com"}}
Inspecting
» /mcp
fetch:
fetch — Fetches a URL and returns its content
If a server fails to start, Dupli prints a warning and keeps going — a broken MCP server never blocks your session.