Files
first_contas/docs/MCP_ENV_LOADING_FIX_V8.md
2026-06-16 20:54:49 -03:00

57 lines
1.4 KiB
Markdown

# MCP ENV Loading Fix - V8
## Problema encontrado
No pacote V7, o MCP Server podia retornar:
```text
Endpoint externo não configurado para TIM_COMPLETE_INVOICES
```
mesmo quando `.env` continha:
```env
TIM_COMPLETE_INVOICES_URL=http://10.151.3.100:8000/customers/v1/completeInvoices
```
A causa era que o MCP dependia do ambiente já estar carregado pelo shell (`source .env`) ou pelo Docker `env_file`. Quando o `uvicorn main:app` era iniciado diretamente, o arquivo `.env` não era carregado automaticamente.
## Correção aplicada
O MCP Server agora carrega automaticamente:
1. `.env` do diretório corrente.
2. `.env` local do MCP Server: `mcp_servers/legacy_tim_mcp/.env`.
3. `.env` da raiz do projeto.
A carga preenche variáveis ausentes ou exportadas como string vazia.
## Novos endpoints de diagnóstico
```bash
curl http://localhost:8100/health | jq
curl http://localhost:8100/debug/config | jq
```
O retorno agora mostra:
- arquivos `.env` carregados;
- endpoints configurados;
- URLs resolvidas;
- presença de autenticação sem expor o secret.
## Validação esperada
Para `TIM_COMPLETE_INVOICES`, deve aparecer:
```json
{
"url": "http://10.151.3.100:8000/customers/v1/completeInvoices",
"has_auth": true,
"timeout": 30.0,
"client_id": "AIAGENTCR"
}
```
Se a URL aparecer vazia, o MCP não está lendo o `.env` correto ou o arquivo não contém a variável.