mirror of
https://github.com/hoshikawa2/compass_backoffice.git
synced 2026-07-09 13:54:20 +00:00
first commit
This commit is contained in:
88
docs/CORRECAO_ENV_MCP_TIM_CLIENTS.md
Normal file
88
docs/CORRECAO_ENV_MCP_TIM_CLIENTS.md
Normal file
@@ -0,0 +1,88 @@
|
||||
# Correção: .env original TIM + MCP Server + URLs
|
||||
|
||||
## Problema corrigido
|
||||
|
||||
O pacote anterior ainda tratava o MCP Server como um backend REST genérico baseado em `BACKOFFICE_MCP_REST_BASE_URL`. Quando essa variável não existia, uma chamada HTTP podia ser montada com URL vazia, gerando erro como:
|
||||
|
||||
```text
|
||||
Request URL is missing an 'http://' or 'https://' protocol.
|
||||
```
|
||||
|
||||
Além disso, o `.env` original do backoffice `develop` usa variáveis específicas:
|
||||
|
||||
```text
|
||||
PMID_API_HOST
|
||||
SIEBEL_API_HOST
|
||||
SPEECH_PREDICTION_BASE_URL
|
||||
SPEECH_HISTORY_BASE_URL
|
||||
TAIS_DB_DSN
|
||||
TAIS_GENAI_ENDPOINT
|
||||
...
|
||||
```
|
||||
|
||||
Essas variáveis não devem ser substituídas por uma URL REST genérica.
|
||||
|
||||
## Ajustes implementados
|
||||
|
||||
1. `src/core/config.py` agora carrega explicitamente o `.env` da raiz do projeto.
|
||||
2. `config/mcp_servers.yaml` agora usa endpoint literal seguro:
|
||||
|
||||
```yaml
|
||||
endpoint: http://localhost:8010
|
||||
```
|
||||
|
||||
Isso evita depender de expansão YAML `${VAR:default}` caso o `MCPToolRouter` do framework não suporte esse formato.
|
||||
|
||||
3. `mcp_servers/backoffice_mcp_server/settings.py` agora aceita:
|
||||
|
||||
- variáveis `BACKOFFICE_MCP_*`, quando existirem;
|
||||
- variáveis originais TIM/develop, como `PMID_API_HOST`, `SIEBEL_API_HOST`, `SPEECH_*`, `TAIS_*`.
|
||||
|
||||
4. O default do MCP Server passou a ser:
|
||||
|
||||
```text
|
||||
BACKOFFICE_MCP_BACKEND_TYPE=tim_clients
|
||||
BACKOFFICE_MCP_USE_MOCK=false
|
||||
```
|
||||
|
||||
Assim o MCP não mascara erro usando mock quando o `.env` real está presente.
|
||||
|
||||
5. As tools IMDB/PMID, Speech, TAIS, ABRT e Portabilidade passam a chamar os clients originais do projeto quando `backend_type=tim_clients`.
|
||||
|
||||
## Como testar
|
||||
|
||||
Suba o MCP Server:
|
||||
|
||||
```bash
|
||||
uvicorn mcp_servers.backoffice_mcp_server.main:app --host 0.0.0.0 --port 8010 --reload
|
||||
```
|
||||
|
||||
Confirme o health:
|
||||
|
||||
```bash
|
||||
curl http://localhost:8010/health
|
||||
```
|
||||
|
||||
O retorno deve indicar:
|
||||
|
||||
```json
|
||||
{
|
||||
"use_mock": false,
|
||||
"backend_type": "tim_clients",
|
||||
"tim_clients_configured": true
|
||||
}
|
||||
```
|
||||
|
||||
Depois suba o backend principal:
|
||||
|
||||
```bash
|
||||
uvicorn app.main:app --host 0.0.0.0 --port 9000 --reload
|
||||
```
|
||||
|
||||
Teste a lista de tools via backend:
|
||||
|
||||
```bash
|
||||
curl http://localhost:9000/debug/mcp/tools
|
||||
```
|
||||
|
||||
Se o MCP estiver ativo, essa chamada deve chegar no processo da porta `8010`.
|
||||
Reference in New Issue
Block a user