Omie
Omie Gestão financeira e contábil na Omie (líder de ERP em nuvem no Brasil), contas a pagar/receber, movimentos financeiros, conciliação, contas correntes…
What it can do
- Omie List Accounts: Lista as empresas (CNPJ) Omie conectadas a este install — id, label.
- Omie List Payables: Lista contas a pagar (ListarContasPagar). Paginado. Use `status` (aberto/pago/cancelado/todos) pra situação — é mais confiável que o filtro cru da Omie, que devolve CANCELADO junto
- Omie Get Payable: Detalha uma conta a pagar (ConsultarContaPagar). Informe `codigo_lancamento_omie` (id Omie) OU `codigo_lancamento_integracao`. Use antes de editar (omie_update_payable).
What data it sees
Do you need an account
No: the server works without sign-in
Omie
Gestão financeira e contábil na Omie (líder de ERP em nuvem no Brasil), contas a pagar/receber, movimentos financeiros, conciliação, contas correntes, clientes/fornecedores e NF-e, via API oficial JSON (app.omie.com.br). Lê e também lança e edita contas a pagar e a receber, e anexa comprovantes e documentos aos lançamentos. Pareia com o Banco MCP pra conciliar banco × gestão. Autenticação por app_key + app_secret (gerados na conta Omie, em Configurações → Geral → API).
Funciona em qualquer cliente MCP. Servidor remoto: https://api.mcp.ai/p_omie
How to connect
How to connect Omie to Claude
The server address to paste into Claude settings:
https://omie-mcp--mcp-dir.run.tools
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect Omie to ChatGPT
The server address to paste into ChatGPT settings:
https://omie-mcp--mcp-dir.run.tools
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect Omie to Cursor
The server address to paste into Cursor settings:
https://omie-mcp--mcp-dir.run.tools
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (50)
Raw names from tools/list. Only developers need these.
| omie_list_accounts | Lista as empresas (CNPJ) Omie conectadas a este install — id, label. |
| omie_list_payables | Lista contas a pagar (ListarContasPagar). Paginado. Use `status` (aberto/pago/cancelado/todos) pra situação — é mais confiável que o filtro cru da Omie, que devolve CANCELADO junto com PAGO/LIQUIDADO. Use `filters` (JSON) pro resto: filtrar_por_data_de/ate (DD/MM/AAAA), cliente, conta corrente etc. |
| omie_get_payable | Detalha uma conta a pagar (ConsultarContaPagar). Informe `codigo_lancamento_omie` (id Omie) OU `codigo_lancamento_integracao`. Use antes de editar (omie_update_payable). |
| omie_create_payable | Lança (cria) uma conta a pagar (IncluirContaPagar). `data` é um JSON string com os campos do payload da doc oficial — obrigatórios: codigo_lancamento_integracao (sua chave única), codigo_cliente_fornecedor (id do fornecedor, veja omie_list_customers), data_vencimento (DD/MM/AAAA), valor_documento, codigo_categoria, data_previsao (DD/MM/AAAA), id_conta_corrente (veja omie_list_checking_accounts). Doc: developer.omie.com.br (financas/contapagar). |
| omie_update_payable | Edita uma conta a pagar existente (AlterarContaPagar). `data` é um JSON string que DEVE conter a chave do lançamento (codigo_lancamento_omie OU codigo_lancamento_integracao) + os campos a alterar (ex.: data_vencimento, valor_documento, codigo_categoria, observacao). Consulte antes com omie_get_payable. |
| omie_settle_payable | Dá baixa (liquida/paga) uma conta a pagar (LancarPagamento). `data` é um JSON string com a chave do lançamento (codigo_lancamento, o id Omie — igual ao codigo_lancamento_omie do get — OU codigo_lancamento_integracao) + os dados da baixa: codigo_baixa_integracao (sua chave única da baixa, texto livre), valor, data (DD/MM/AAAA), codigo_conta_corrente (veja omie_list_checking_accounts) e opcional observacao. É o par pra conciliar com o Banco MCP. 🔑 Passe `conciliar_documento: "S"` pra já marcar a baixa como CONCILIADA — é a ÚNICA forma de conciliar um pagamento pela API (não existe ConciliarPagamento; a conciliação só acontece no momento da baixa). Pra conciliar um pagamento JÁ baixado: omie_cancel_payment e lance de novo com este campo. |
| omie_delete_payable | APAGA (exclui em definitivo) uma conta a pagar (ExcluirContaPagar). Informe `codigo_lancamento_omie` (id Omie) OU `codigo_lancamento_integracao`. Ação IRREVERSÍVEL — confirme com o usuário antes de chamar. Consulte antes com omie_get_payable pra ter certeza do lançamento. |
| omie_list_receivables | Lista contas a receber (ListarContasReceber). Paginado. Use `status` (aberto/pago/cancelado/todos) pra situação — o filtro cru da Omie mistura CANCELADO com PAGO/LIQUIDADO. `filters` (JSON) aceita o resto: filtrar_por_data_de/ate, filtrar_por_emissao_de/ate, filtrar_cliente etc. |
| omie_get_receivable | Detalha uma conta a receber (ConsultarContaReceber). Informe `codigo_lancamento_omie` (id Omie) OU `codigo_lancamento_integracao`. Use antes de editar (omie_update_receivable). |
| omie_create_receivable | Lança (cria) uma conta a receber (IncluirContaReceber). `data` é um JSON string com os campos do payload da doc oficial — obrigatórios: codigo_lancamento_integracao (sua chave única), codigo_cliente_fornecedor (id do cliente, veja omie_list_customers), data_vencimento (DD/MM/AAAA), valor_documento, codigo_categoria, data_previsao (DD/MM/AAAA), id_conta_corrente (veja omie_list_checking_accounts). Doc: developer.omie.com.br (financas/contareceber). |
| omie_update_receivable | Edita uma conta a receber existente (AlterarContaReceber). `data` é um JSON string que DEVE conter a chave do lançamento (codigo_lancamento_omie OU codigo_lancamento_integracao) + os campos a alterar (ex.: data_vencimento, valor_documento, codigo_categoria, observacao). Consulte antes com omie_get_receivable. |
| omie_settle_receivable | Dá baixa (liquida/recebe) uma conta a receber (LancarRecebimento). Aceita `conciliar_documento: "S"` pra já marcar a baixa como conciliada (aqui também existe omie_reconcile_receipt, que concilia depois). `data` é um JSON string com a chave do lançamento (codigo_lancamento, o id Omie — igual ao codigo_lancamento_omie do get — OU codigo_lancamento_integracao) + os dados da baixa: codigo_baixa_integracao (sua chave única da baixa, texto livre), valor, data (DD/MM/AAAA), codigo_conta_corrente (veja omie_list_checking_accounts) e opcional observacao. É o par pra conciliar com o Banco MCP. 🔑 Passe `conciliar_documento: "S"` pra já marcar a baixa como CONCILIADA — é a ÚNICA forma de conciliar um pagamento pela API (não existe ConciliarPagamento; a conciliação só acontece no momento da baixa). Pra conciliar um pagamento JÁ baixado: omie_cancel_payment e lance de novo com este campo. |
| omie_delete_receivable | APAGA (exclui em definitivo) uma conta a receber (ExcluirContaReceber). Informe `codigo_lancamento_omie` (id Omie) OU `codigo_lancamento_integracao`. Ação IRREVERSÍVEL — confirme com o usuário antes de chamar. Consulte antes com omie_get_receivable pra ter certeza do lançamento. |
| omie_list_financial_movements | Lista movimentos financeiros — lançamentos/baixas de contas a pagar, a receber e conta corrente (ListarMovimentos). É a base da CONCILIAÇÃO (pareia com o Banco MCP). Paginado. `filters` (JSON) usa nomes Hungarian da Omie: dDtPagtoDe/dDtPagtoAte, dDtVencDe/dDtVencAte, cTpLancamento ("CP","CR","BX"), cStatus, nCodCC (conta corrente), nCodCliente etc. |
| omie_list_checking_accounts | Lista as contas correntes (bancos/caixa) cadastradas na empresa (ListarContasCorrentes). Útil pra mapear cada conta Omie ↔ a conta bancária do Banco MCP na conciliação. |
| omie_get_checking_account_balance | EXTRATO BANCÁRIO e SALDO ATUAL de uma conta corrente (ListarExtrato). Com `incluir_movimentos:true` esta é a tool que LISTA OS LANÇAMENTOS do extrato no período — é por aqui que se casa o extrato do banco com os títulos da Omie. Sem ela, traz o saldo REAL de hoje, ao contrário de omie_list_checking_accounts, que só traz o `saldo_inicial` numa data fixa (ponto de partida contábil). Base da CONCILIAÇÃO Banco × Omie. Identifique a conta por `conta` (nome OU id), ou por `nCodCC` (id Omie) ou `cCodCCInt` (chave de integração). Por padrão traz só os saldos (nSaldoAtual, nSaldoAnterior, nSaldoDisponivel, nSaldoConciliado, nSaldoProvisorio); passe `incluir_movimentos:true` pra vir também a lista de lançamentos do período. `data_inicial`/`data_final` (AAAA-MM-DD ou DD/MM/AAAA) definem o período dos movimentos, default hoje. |
| omie_create_checking_account | Cria uma conta corrente (banco/caixa/cartão) na empresa (IncluirContaCorrente). `data` é um JSON string com os campos da doc oficial — comuns: cCodCCInt (sua chave de integração), tipo_conta_corrente ("CX" caixa, "CC" conta corrente, "CA" cartão, "AD" adiantamento), codigo_banco, descricao, nome_agencia, numero_conta_corrente. Doc: developer.omie.com.br (geral/contacorrente). |
| omie_update_checking_account | Edita uma conta corrente existente (AlterarContaCorrente). `data` é um JSON string que DEVE conter a chave da conta (nCodCC id Omie OU cCodCCInt chave de integração) + os campos a alterar. Consulte antes com omie_list_checking_accounts. |
| omie_delete_checking_account_entry | APAGA/estorna um LANÇAMENTO de conta corrente (ExcluirLancCC) — movimentos da conta corrente como transferências, aplicações, resgates e tarifas, diferente de conta a pagar/receber (use omie_delete_payable/omie_delete_receivable pra títulos). Informe `nCodLanc` (id Omie do lançamento) OU `cCodIntLanc` (sua chave de integração). Ação IRREVERSÍVEL, confirme com o usuário antes de chamar. Doc: developer.omie.com.br (financas/contacorrentelancamentos). |
| omie_list_customers | Lista clientes/fornecedores/transportadoras (ListarClientes). Paginado. `filters` (JSON) aceita os filtros do clientes_list_request da Omie. |
| omie_get_customer | Detalha um cliente/fornecedor (ConsultarCliente). Informe `codigo_cliente_omie` (id Omie) OU `codigo_cliente_integracao` (sua chave de integração). |
| omie_create_customer | Cadastra um cliente ou fornecedor (IncluirCliente). Na Omie cliente e fornecedor são o MESMO cadastro; o que muda é a classificação. `data` é um JSON string com os campos da doc oficial — obrigatórios: codigo_cliente_integracao (sua chave única), razao_social, cnpj_cpf (ou nome + doc pra PF); comuns: nome_fantasia, email, telefone1_numero, endereco, cidade, estado, cep. Pra marcar como fornecedor use tags: [{ "tag": "Fornecedor" }] (ou "Cliente"). Doc: developer.omie.com.br (geral/clientes). |
| omie_update_customer | Edita um cliente/fornecedor existente (AlterarCliente). `data` é um JSON string que DEVE conter a chave do cadastro (codigo_cliente_omie id Omie OU codigo_cliente_integracao) + os campos a alterar (ex.: razao_social, email, telefone1_numero, endereco). Consulte antes com omie_get_customer. |
| omie_list_categories | Lista as categorias / plano de contas da empresa (ListarCategorias). Paginado. Cada categoria tem um `codigo_categoria` — é o campo exigido ao lançar uma conta a pagar/receber (omie_create_payable/receivable). |
| omie_list_departments | Lista os departamentos / centros de custo da empresa (ListarDepartamentos). Paginado. Cada um tem um `codigo` usado pra ratear um lançamento por departamento. |
| omie_list_projects | Lista os projetos da empresa (ListarProjetos). Paginado. Cada projeto tem um `codigo` que pode ser vinculado a um lançamento financeiro. |
| omie_list_document_types | Lista os tipos de documento (dinheiro, boleto, cartão, transferência etc.) — PesquisarTipoDocumento. Não é paginado. Cada tipo tem um `codigo` (ex.: TRA = Transferência, BOL = Boleto) usado em baixas e lançamentos de conta corrente. Passe `codigo` pra filtrar um específico. |
| omie_list_invoices | Lista notas fiscais (NF-e) emitidas (ListarNF). Paginado. `filters` (JSON) aceita dEmiInicial/dEmiFinal (DD/MM/AAAA), filtrar_por_status (N=vigente, C=cancelada), tpNF (0=entrada,1=saída) etc. |
| omie_transfer_between_accounts | TRANSFERE dinheiro entre DUAS contas correntes da própria empresa (IncluirLancCC com bloco `transferencia`). É a operação certa pra isso: a Omie gera os DOIS lados (saída na origem, entrada no destino, origens TRAP/TRAR) e eles ficam amarrados — não faça uma saída + uma entrada separadas pra simular transferência, isso suja a conciliação. Aceita NOME ou id nas contas (resolve no servidor, igual omie_lancar). Datas em AAAA-MM-DD ou DD/MM/AAAA. |
| omie_create_checking_account_entry | Cria um LANÇAMENTO avulso de conta corrente (IncluirLancCC): tarifa, rendimento, aplicação, resgate, ajuste. NÃO é conta a pagar/receber (pra isso use omie_lancar) e NÃO é transferência (use omie_transfer_between_accounts). `data` é um JSON string com os blocos da doc oficial: `cabecalho` {nCodCC, dDtLanc (DD/MM/AAAA), nValorLanc}, `detalhes` {cCodCateg, cTipo, cNumDoc, nCodCliente, cObs} e opcionalmente `cCodIntLanc`. Veja omie_list_checking_accounts pro nCodCC. |
| omie_update_checking_account_entry | Edita um lançamento de conta corrente (AlterarLancCC). `data` é um JSON string que DEVE conter a chave (nCodLanc OU cCodIntLanc) + os blocos a alterar (cabecalho/detalhes). Consulte antes com omie_get_checking_account_entry. |
| omie_get_checking_account_entry | Detalha um lançamento de conta corrente (ConsultaLancCC). Informe nCodLanc (id Omie) OU cCodIntLanc. |
| omie_list_checking_account_entries | Lista lançamentos de conta corrente (ListarLancCC). Paginado. `filters` (JSON) aceita cOrigem, dDtIncDe/dDtIncAte, dDtAltDe/dDtAltAte, dtPagInicial/dtPagFinal (DD/MM/AAAA). Transferências aparecem com origem TRAP (saída) e TRAR (entrada). |
| omie_cancel_payment | CANCELA a baixa (o pagamento) de uma conta a pagar — CancelarPagamento. O título VOLTA a ficar em aberto; NÃO apaga o título (pra isso é omie_delete_payable). A chave é a BAIXA, não o lançamento: informe codigo_baixa (id Omie da baixa) OU codigo_baixa_integracao (a chave que você usou ao dar baixa). É também o caminho pra corrigir uma baixa errada: cancele e lance de novo com omie_settle_payable. |
| omie_cancel_receipt | CANCELA a baixa (o recebimento) de uma conta a receber — CancelarRecebimento. O título volta a ficar em aberto; não apaga o título. Chave: codigo_baixa OU codigo_baixa_integracao. |
| omie_reconcile_receipt | Marca a baixa de um recebimento como CONCILIADA (ConciliarRecebimento). Use ao casar o extrato do banco com o título na Omie. Chave: codigo_baixa OU codigo_baixa_integracao. |
| omie_unreconcile_receipt | Desfaz a conciliação de uma baixa de recebimento (DesconciliarRecebimento). Chave: codigo_baixa OU codigo_baixa_integracao. |
| omie_upsert_payables_batch | Cria OU atualiza VÁRIAS contas a pagar numa chamada (UpsertContaPagarPorLote). É o caminho pra mexer em massa (trocar categoria, conta corrente etc.) sem uma chamada por título. ⚠️ É UPSERT, não patch: o registro é gravado com o que você mandar, então inclua os campos que quer PRESERVAR, não só os que quer mudar — leia antes com omie_list_payables/omie_get_payable. A chave de cada item é `codigo_lancamento_integracao` (ou `codigo_lancamento_omie`). ✅ Funciona em título JÁ BAIXADO/PAGO: dá pra corrigir categoria, cliente/fornecedor etc. em massa SEM cancelar a baixa (a baixa é preservada e o status continua PAGO). `data` é um JSON string: `{"lote": 1, "conta_pagar_cadastro": [ {…}, {…} ]}`. |
| omie_upsert_receivables_batch | Cria OU atualiza VÁRIAS contas a receber numa chamada (UpsertContaReceberPorLote). Mesmas regras do omie_upsert_payables_batch: é UPSERT (mande os campos a preservar) e a chave de cada item é `codigo_lancamento_integracao`. `data`: `{"lote": 1, "conta_receber_cadastro": [ {…} ]}`. |
| omie_upload_attachment | Anexa um arquivo (comprovante, boleto, NF em PDF/PNG…) a um documento da Omie — IncluirAnexo. É o par de omie_lancar/omie_settle_payable: lançou ou deu baixa, anexa o comprovante sem abrir a tela web. - tabela: onde o documento vive (ex.: "conta-pagar", "conta-receber"). - id: o id do documento NAQUELA tabela (conta a pagar/receber = codigo_lancamento_omie, veja omie_get_payable). - arquivo: informe UMA forma — file_url (a plataforma baixa da URL, precisa ser acessível publicamente), upload_id (arquivo já enviado, veja abaixo) ou file_base64 (só arquivo pequeno cujos bytes você REALMENTE tem; NUNCA pra anexo da conversa). file_name é obrigatório em file_url/file_base64 e a Omie NÃO aceita nome com mais de um ponto ("nota.fiscal.pdf"). - Arquivo ANEXADO na conversa ou no computador do usuário: NÃO tente ler o conteúdo nem montar file_base64 (você recebe o texto extraído, não os bytes do arquivo, e o upload sairia corrompido). Chame esta tool SEM arquivo, passando file_path se souber o caminho do anexo: ela devolve um comando pronto de upload. Execute esse comando no seu sandbox de execução de código (ou peça pro usuário rodar no terminal) e chame de novo com o `upload_id` E o `file_name` que ela devolveu. O arquivo é compactado e enviado pela plataforma; você não precisa zipar nada. Depois de anexar, a cópia temporária do arquivo é apagada do nosso lado, ela existe só pra intermediar o upload. Bulk support: accepts ids, upload_ids for batched execution. |
| omie_list_attachments | Lista os anexos de um documento (ListarAnexo). Paginado. Devolve `listaAnexos` com o nIdAnexo de cada anexo — use em omie_get_attachment (baixar) ou omie_delete_attachment. Bulk support: accepts ids for batched execution. |
| omie_get_attachment | Devolve o LINK DE DOWNLOAD de um anexo (ObterAnexo) — `cLinkDownload`, válido até `dDtExpiracao`. Identifique o anexo por id_anexo (veja omie_list_attachments), codigo_integracao ou file_name. Bulk support: accepts ids for batched execution. |
| omie_delete_attachment | Remove um anexo de um documento (ExcluirAnexo). IRREVERSÍVEL. Identifique por id_anexo (veja omie_list_attachments), codigo_integracao ou file_name. Bulk support: accepts ids for batched execution. |
| omie_lancar | Atalho: lança uma conta a PAGAR ou a RECEBER em UMA chamada, resolvendo os códigos por NOME no servidor (fornecedor/cliente, categoria e conta corrente). Substitui o fluxo de 4-5 chamadas (list_customers + list_categories + list_checking_accounts + create). Aceita nome OU código em cada campo; se um nome não bater ou for ambíguo, retorna erro com as opções ANTES de criar (não chuta). Datas aceitam AAAA-MM-DD ou DD/MM/AAAA. Use isto por padrão pra lançar; as tools omie_create_* continuam pra quem já tem os códigos. |
| show_version | Show the current MCP platform and adapter versions. |
| report_bug | Report a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction. |
| connect | Returns connection status and URLs. When all providers are connected, returns authenticated:true and empty pending[]. When credentials are missing, returns connect_url for the toolkit and per-install URLs. |
| toolkit_info | Returns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes. |
| marketplace | The official mcp.ai marketplace — the in-platform catalog of every MCP/tool, AND the way to run them. Covers capability requests like "find an MCP that does X", "consulta um CPF", "is there a tool for Y". Core flow: action=search discovers MCPs by intent → describe returns one MCP's full profile (every tool with its id + params, pricing, auth) so you pick the right tool_id → invoke RUNS that tool. KEY: invoke works even when the MCP is NOT installed — it runs the tool pontualmente (one-off), without adding the MCP to the toolkit and without bloating the tool list. If the MCP needs a credential/login, invoke returns a connect link; if it is paid and the wallet is empty, invoke returns a checkout/top-up link (the user opens it, then you retry). Use install only to make an MCP PERMANENT in the active toolkit (its tools then show up natively in future sessions); prefer invoke for a single/occasional use. list_tools lists what is callable right now. subscribe/cancel handle per-MCP billing; report_bug sends feedback; request_mcp asks us to build a NEW MCP when nothing fits. Search/describe flag installed_in_toolkit vs installed_in_workspace. Writes (install/uninstall/subscribe/cancel and the one-off install behind invoke) require workspace owner/admin. It also carries the mcp.ai PROMPT LIBRARY, which is about ready-made prompt TEXT rather than MCPs: search_prompts finds one, get_prompt returns its full text with {{variables}} filled, and publish_prompt saves a prompt and returns a shareable mcp.ai/p/<slug> link that opens without login. |
| authenticate | MCP.AI for IDE agents (Cursor, etc.): log in in the browser, copy the access token. Best: add it to this server's config as a header `Authorization: Bearer <token>` for a permanent, non-expiring connection. Or paste it here for a session-only login: call with { token: "<jwt>" } after the user pastes, or with no args to get the link. |