MCP Proxy
Um proxy leve que permite que clientes se conectem a servidores MCP via HTTP sem transporte de streaming.
Documentação
mcp-proxy
Um proxy MCP leve. Ele permite que clientes se conectem a servidores MCP via HTTP sem transporte de streaming. Ele possibilita colocá-lo em uma infraestrutura simples.
Como instalar
go install github.com/ubie-oss/mcp-proxy
Como usar
Prepare seu arquivo de configuração mcp
Crie um arquivo de configuração. O formato é semelhante ao do Claude. $VARNAME será substituído por variáveis de ambiente. Ele suporta tanto json quanto yaml.
{
"mcpServers": {
"server1": {
"command": "npx",
"args": ["module1"],
"env": {
"VAR1": "$SERVER1_VAR1",
"VAR2": "$SERVER1_VAR2"
}
},
"server2": {
"command": "npx",
"args": ["module2"],
"env": {
"VAR1": "$SERVER2_VAR1",
"VAR2": "$SERVER2_VAR2"
},
"_extensions": {
"tools": {
"allow": [
"tool1",
"tool2"
],
"deny": [
"tool11",
"tool12"
]
}
}
}
}
}
mcpServers:
server1:
command: "npx"
args:
- "module1"
env:
VAR1: $SERVER1_VAR1
VAR2: $SERVER1_VAR2
server2:
command: "npx"
args:
- "module2"
env:
VAR1: $SERVER2_VAR1
VAR2: $SERVER2_VAR2
_extensions:
tools:
allow:
- tool1
- tool2
deny:
- tool11
- tool12
Filtragem de ferramentas com listas de permissão/negação
Você pode controlar quais ferramentas estão disponíveis para cada servidor MCP usando a configuração _extensions.tools:
allow: Somente as ferramentas listadas aqui serão permitidas. Se esta lista estiver vazia ou não for especificada, todas as ferramentas serão permitidas (a menos que sejam negadas).deny: As ferramentas listadas aqui serão bloqueadas, mesmo que estejam na lista de permissão.
Quando ambas as listas allow e deny forem especificadas, a lista de negação tem precedência. Ou seja, as ferramentas na lista de negação serão bloqueadas mesmo que também apareçam na lista de permissão.
Execute o mcp-proxy com a configuração
go run . -config config.json -port 9090