Skip to main content
Glama
ogconstrutorasp

apex-contabil

apex-mcp-framework

Framework MCP reutilizável que conecta um ERP a agentes Model Context Protocol via stdio (Python, SDK oficial mcp 1.x). Expõe capacidades de negócio — classificação de CNAEs, revisão jurídica de contratos, obrigações fiscais, financeiro, marketing com publicação real em Facebook/Instagram, WhatsApp e relatórios — como ferramentas MCP autenticadas.

Projeto derivado do Apex ERP Contábil. Este repositório é o home público do servidor MCP — a publicação nos registries (Smithery, Glama, mcp.so, registry oficial) aponta para cá.


✨ O que é um "framework" aqui?

Você não edita o núcleo do servidor para mudar comportamento. A estrutura é modular:

apex-mcp-framework/
├── pyproject.toml          # empacotamento (pip install -e .)
├── requirements.txt        # mcp>=1.0.0,<2.0.0 (API 1.x do SDK)
├── server.json             # metadados p/ registries MCP
├── src/apex_mcp/
│   ├── __main__.py         # python -m apex_mcp
│   ├── server.py           # servidor MCP (stdio) — raramente mexe
│   ├── config.py           # config via env (ERP_BASE, credenciais)
│   ├── http_client.py      # cliente HTTP com auth Bearer + refresh automático
│   └── tools.py            # ⭐ catálogo de ferramentas — É AQUI QUE VOCÊ ADICIONA
└── examples/
    └── mcp_client.py       # cliente MCP de exemplo

Para adicionar uma ferramenta nova, edite apenas src/apex_mcp/tools.py:

# 1) acrescente o Tool (o agente vê nome + descrição + schema)
Tool(name="minha_ferramenta", description="O que ela faz",
     inputSchema={"type": "object", "properties": {"campo": {"type": "string"}}, "required": ["campo"]}),

# 2) acrescente a rota (método, path na API do ERP)
"minha_ferramenta": ("POST", "/api/meu-modulo/acao", None),

Pronto — o servidor expõe automaticamente. Nenhum outro arquivo muda.


Related MCP server: vistoazul-mcp

🚀 Instalação e execução

git clone https://github.com/ogconstrutorasp/apex-mcp-framework.git
cd apex-mcp-framework
pip install -r requirements.txt     # ou: pip install -e .
python -m apex_mcp                  # inicia o servidor (stdio)

Configuração (variáveis de ambiente):

Variável

Descrição

Padrão

ERP_BASE

URL base da API do ERP

http://localhost:3001 (produção: https://apex-contabil.vercel.app)

SUPABASE_URL

URL do Supabase (login da conta de serviço)

https://vebileaugzzrgnhgmvmr.supabase.co

SUPABASE_ANON_KEY

chave anon do Supabase

<anon-key>

ERP_MCP_EMAIL / ERP_MCP_PASSWORD

conta de serviço — o framework autentica com Bearer em todas as chamadas e renova o token sozinho

vazio (modo sem auth, avisa)

API key por tenant (x-api-key): consulte o painel do ERP (Fase 5 — máquina-a-máquina).

🔌 Conectar em um cliente MCP

Claude Desktop / qualquer cliente MCP:

{
  "mcpServers": {
    "apex-contabil": {
      "command": "python",
      "args": ["-m", "apex_mcp"]
    }
  }
}

🧰 Ferramentas (13)

classificar_cnae · revisar_contrato · consultar_saldo_cliente · consultar_cronograma_obrigacoes · gerar_post_marketing · publicar_post_agora · analytics_marketing · criar_campanha_meta · gerar_criativos_multiplataforma · enviar_whatsapp · alertas_pendentes · gerar_relatorio · enviar_notificacao

🧪 Testar localmente

python examples/mcp_client.py
# Handshake OK — 13 ferramentas:
#   - classificar_cnae: ...
#   ...

🌐 Catálogo público

  • Metadados para registro: server.json

  • Catálogo do ERP: https://apex-contabil.vercel.app/api/mcp/catalogo

  • Guia de publicação nos registries: veja docs/PUBLICAR-MCP-REGISTRIES.md no repo do ERP.

🔒 Segurança

  • O framework só expõe ferramentas do próprio ERP via API autenticada (Bearer de conta de serviço ou x-api-key por tenant) — nunca shell/arquivos arbitrários.

  • Credenciais vêm somente de variáveis de ambiente; nada é commitado.

  • O SDK está fixado em mcp<2 porque o servidor usa a API 1.x (Server.list_tools/call_tool), removida no 2.x.

📄 Licença

MIT — veja LICENSE.

A
license - permissive license
-
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    -
    quality
    B
    maintenance
    37 MCP servers for agentic commerce and Brazilian services. Covers Stripe ACP, x402 (Coinbase), AP2 (Google), Google UCP, plus 14 traditional Brazilian payment rails, fiscal, banking, communication, logistics, ERP, identity, and crypto APIs. ~480 tools. Supports stdio and Streamable HTTP.
    267
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    MCP server that enables AI agents to operate WhatsApp via Visto Azul API: send text, media, PIX charges, manage campaigns and contacts, and configure webhooks using natural language.
    11
    20
    MIT
  • A
    license
    B
    quality
    B
    maintenance
    MCP server that connects AI assistants to the Conexa business management system, enabling CRUD operations on sales, customers, plans, contracts, charges, and more via 83 tools.
    83
    121
    1
    MIT
  • F
    license
    -
    quality
    C
    maintenance
    MCP server that exposes Brazilian tax infrastructure as tools, resources, and prompts, enabling AI agents to emit and manage fiscal documents (NF-e, NFC-e, NFS-e, CT-e, MDF-e, DC-e) through natural language.

View all related MCP servers

Related MCP Connectors

  • Hosted MCP server for Mini Accountant: invoices, expenses, customers, analytics, tax estimates.

  • Brazilian fiscal MCP server - issue NF-e, NFC-e, NFS-e, CT-e, MDF-e and DC-e via SEFAZ.

  • MCP Server for agents to onboard, pay, and provision services autonomously with InFlow

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ogconstrutorasp/apex-mcp-framework'

If you have feedback or need assistance with the MCP directory API, please join our Discord server