protogrid

Search / io.github.douglac/contaazul-mcp

Conta Azul MCP

R0· no sign-in

Conta Azul ERP MCP — sales, customers, finance and NF-e via OAuth 2.0. Read + write, 35 tools.

v0.1.0 · active · repository · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality74needs work
Trust87of 100
Uptime, 30 days96%
Latency p50149 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "contaazul-mcp": {
      "type": "http",
      "url": "https://api.mcp.ai/contaazul"
    }
  }
}
claude mcp add --transport http contaazul-mcp https://api.mcp.ai/contaazul
[mcp_servers.contaazul-mcp]
url = "https://api.mcp.ai/contaazul"
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "contaazul-mcp": {
      "type": "remote",
      "url": "https://api.mcp.ai/contaazul",
      "enabled": true
    }
  }
}
{
  "mcpServers": {
    "contaazul-mcp": {
      "type": "http",
      "url": "https://api.mcp.ai/contaazul"
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=contaazul-mcp&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vYXBpLm1jcC5haS9jb250YWF6dWwifQ%3D%3D"
}
{
  "servers": {
    "contaazul-mcp": {
      "type": "http",
      "url": "https://api.mcp.ai/contaazul"
    }
  }
}
{
  "mcpServers": {
    "contaazul-mcp": {
      "httpUrl": "https://api.mcp.ai/contaazul"
    }
  }
}
extensions:
  "contaazul-mcp":
    enabled: true
    name: "contaazul-mcp"
    type: streamable_http
    uri: "https://api.mcp.ai/contaazul"
    timeout: 300

Quality 74 / 100needs work

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene86 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • warn
    tools.description_length3 tools have descriptions over 1,024 characters, which crowds the context
  • pass
    tools.schemasevery tool has an object input schema
  • pass
    tools.annotations58 of 58 tools declare readOnlyHint or destructiveHint
  • pass
    tools.directory_hintsevery tool declares readOnlyHint, destructiveHint, idempotentHint and openWorldHint
  • warn
    tools.token_costabout 9,878 tokens to load every tool
  • pass
    tools.api_dumptools are not a one-to-one API dump
stability50 · weight 15
  • pass
    stability.changes3 tool changes in 30 days
  • fail
    stability.rug_pull1 tools kept their name but changed most of their description in 30 days; review before trusting them
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

58 tools, about 9,878 tokens to load them all · tool set 02c844e2b5b9 · tools last changed 2026-10-02 · checked 2026-10-19 10:52 UTC

Tool changes

  • contaazul_list_payableschangeddescription
    before

    Lista contas a pagar (parcelas de despesa). Filtros: tamanho_pagina, pagina, data_vencimento_de, data_vencimento_ate (YYYY-MM-DD; se omitidas, lista todas), status (PERDIDO, RECEBIDO, EM_ABERTO, RENEGOCIADO, RECEBIDO_PARCIAL, ATRASADO).

    after · 57% of words in common

    Lista contas a pagar (parcelas de despesa). Filtros: tamanho_pagina, pagina, data_vencimento_de, data_vencimento_ate (YYYY-MM-DD; se omitidas, lista todas), status (PERDIDO, RECEBIDO, EM_ABERTO, RENEGOCIADO, RECEBIDO_PARCIAL, ATRASADO). O Conta Azul usa os MESMOS status de contas a receber (RECEBIDO aqui = pago) e o mesmo formato de item — parecido com list_receivables, mas são despesas.

  • contaazul_list_sale_itemsadded

    Itens (produtos/serviços, quantidade, valor) de uma ou mais vendas. Passe ids_venda (até 50); devolve um resultado por venda.

  • contaazul_list_saleschangeddescription, input schemameaning changed
    before

    Lista vendas. Filtros: tamanho_pagina, pagina, data_inicio, data_fim (YYYY-MM-DD), cliente_id, status_venda. Bulk support: accepts cliente_ids for batched execution.

    after · 32% of words in common

    Lista vendas (GET /venda/busca). Filtros: data_inicio/data_fim (emissão, AAAA-MM-DD), data_criacao_de/ate (AAAA-MM-DD), data_alteracao_de/ate (AAAA-MM-DDTHH:MM:SS), ids_clientes, ids_vendedores, ids_categorias, ids_produtos, numeros, situacoes (ex.: aprovado, em_andamento, faturado, cancelado, orcamento), termo_busca, ordenação por numero/cliente/data. Paginação: pagina + tamanho_pagina; a resposta traz total_itens, totais e quantidades por situação. Bulk support: accepts cliente_ids for batched execution.

Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 87 / 100

provenance80
liveness99
freshness65
hygiene100

+repository +namespace-matches-repo +reachable +uptime-96% ~updated-143d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://api.mcp.ai/contaazul streamable-httpnoneyes96%149 ms2025-11-252026-10-19

Tools (58)

authenticateMCP.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.
connectread-onlyReturns 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.
contaazul_cancel_chargedestructiveCANCELA uma cobrança já emitida (boleto/pix/link deixa de ser pagável). Use quando a cobrança foi gerada errada e ainda não foi paga. Passe o `id` da cobrança (de contaazul_generate_charge ou contaazul_get_charge), NÃO o id da parcela. Bulk support: accepts ids for batched execution.
contaazul_contract_next_numberread-onlyRetorna o próximo número de contrato disponível.
contaazul_contract_writeCria um contrato. `data` é o payload em JSON.
contaazul_create_budgetCria um orçamento. `data` é o JSON com id_cliente (obrigatório, UUID de uma pessoa com perfil Cliente), data_orcamento (obrigatório, YYYY-MM-DD), itens[] (cada item exige id do produto/serviço + tipo/quantidade/valor), data_validade, id_vendedor e composicao_de_valor (frete, desconto).
contaazul_delete_budgetsdestructiveExclui orçamentos em lote por id. Operação destrutiva, confirme antes. `ids` é a lista de UUIDs de orçamento (a API v2 não tem exclusão por id única).
contaazul_delete_contractdestructiveRemove um contrato por id. Operação destrutiva, confirme antes. Bulk support: accepts ids for batched execution.
contaazul_delete_settlementdestructiveEstorna (remove) uma baixa por id. Operação destrutiva, confirme antes. `id` é o UUID da baixa. Bulk support: accepts ids for batched execution.
contaazul_generate_chargeGera cobrança (boleto, pix ou link de pagamento) para uma ou mais PARCELAS de contas a receber. Aceita até 50 parcelas por chamada; cada uma é emitida separadamente e uma falha não aborta o lote. `tipo` (obrigatório) aceita EXATAMENTE: BOLETO, PIX_COBRANCA ou LINK_PAGAMENTO (cartão de crédito sai por LINK_PAGAMENTO); formas comuns como boleto/pix/cartão são normalizadas. `ids_parcelas` são UUIDs de PARCELA — pegue em contaazul_list_receivables (campo `id` de cada item) ou contaazul_get_installment, NÃO o id do evento financeiro. `conta_bancaria`, `descricao_fatura` e `data_vencimento` são exigidos pela API mas resolvidos automaticamente quando omitidos: a conta de cobranças ativa da empresa (passe `conta_bancaria` se houver mais de uma, via contaazul_list_financial_accounts com tipos=COBRANCAS_CONTA_AZUL) e a descrição/vencimento da própria parcela. Parcela que já tem cobrança ativa é PULADA (sai em `ignoradas`) — use forcar=true para emitir mesmo assim. `maximo_parcelas` só vale para LINK_PAGAMENTO. Retorna {solicitadas, emitidas:[{id_parcela,id,url,status}], ignoradas, erros} — `url` é o link da cobrança. Para consultar depois use contaazul_get_charge e para cancelar contaazul_cancel_charge. A API NÃO envia o e-mail de notificação da cobrança: isso só na tela do Conta Azul.
contaazul_get_account_balanceread-onlySaldo atual de uma conta financeira por id (banco/caixa/cartão). Pegue o id em contaazul_list_financial_accounts. Bulk support: accepts ids for batched execution.
contaazul_get_budgetread-onlyDetalhe de um orçamento por id (itens, cliente, composição de valor). Bulk support: accepts ids for batched execution.
contaazul_get_chargeread-onlyDetalhe de uma cobrança emitida por id (o `id` devolvido em contaazul_generate_charge). Retorna {id, url, status} — status vai de AGUARDANDO_CONFIRMACAO/REGISTRADO até PAGO, CANCELADO, EXPIRADO ou FALHA_EMISSAO. Bulk support: accepts ids for batched execution.
contaazul_get_companyread-onlyDados da empresa Conta Azul ativa (CNPJ, razão social, regime tributário).
contaazul_get_contractread-onlyDetalhe de um contrato por id (cliente, termos, condição de pagamento, composição de valor). Bulk support: accepts ids for batched execution.
contaazul_get_initial_balanceread-onlySaldos iniciais das contas financeiras por período. data_inicio e data_fim (YYYY-MM-DD ou ISO date-time; datas simples são normalizadas). Se omitidas, usa uma janela ampla.
contaazul_get_installmentread-onlyDetalhe de uma parcela por id. Bulk support: accepts ids for batched execution.
contaazul_get_invoice_nferead-onlyDetalhe de uma NF-e por id. Bulk support: accepts ids for batched execution.
contaazul_get_personread-onlyDetalhe de uma pessoa por id. Bulk support: accepts ids for batched execution.
contaazul_get_saleread-onlyDetalhe de uma venda por id. Bulk support: accepts ids for batched execution.
contaazul_get_settlementread-onlyDetalhe de uma baixa por id. `id` é o UUID da baixa. Bulk support: accepts ids for batched execution.
contaazul_list_accountsread-onlyLista as empresas Conta Azul vinculadas a este install (company_id, label).
contaazul_list_budgetsread-onlyLista orçamentos (cliente, número, total, situação, versão). Paginado.
contaazul_list_categoriesread-onlyLista categorias financeiras (DRE).
contaazul_list_changed_eventsread-onlyLista os IDs de eventos financeiros alterados num período (para sync incremental / conciliação). data_inicio e data_fim (YYYY-MM-DD ou ISO date-time). Paginado. Retorna só os IDs; use contaazul_get_installment para o detalhe.
contaazul_list_contractsread-onlyLista contratos no intervalo de data de início (data_inicio/data_fim, YYYY-MM-DD — obrigatórios na API; se omitidos, usa janela ampla = listar todos). Filtros: pagina, tamanho_pagina (máx 50), cliente_id, busca_textual. A API v2 não tem GET contrato por id nem cancelar/excluir. Bulk support: accepts cliente_ids for batched execution.
contaazul_list_cost_centersread-onlyLista centros de custo.
contaazul_list_financial_accountsread-onlyLista contas financeiras (banco, caixa, cartão). Filtre por `tipos`: APLICACAO, CAIXINHA, CONTA_CORRENTE, CARTAO_CREDITO, INVESTIMENTO, OUTROS, MEIOS_RECEBIMENTO, POUPANCA, COBRANCAS_CONTA_AZUL, RECEBA_FACIL_CARTAO. Para achar a conta que recebe cobranças (contaazul_generate_charge) use tipos=["COBRANCAS_CONTA_AZUL"].
contaazul_list_installmentsread-onlyLista as parcelas de UM evento financeiro (passe `id_evento`). A API v2 não tem listagem chapada de todas as parcelas — pra varrer contas a receber/pagar use contaazul_list_receivables / contaazul_list_payables.
contaazul_list_invoices_nferead-onlyLista notas fiscais emitidas (NF-e). Filtros: tamanho_pagina, pagina, data_emissao_inicio, data_emissao_fim, status.
contaazul_list_invoices_nfseread-onlyLista NFS-e (notas fiscais de serviço) por filtro. Exige data_competencia_de e data_competencia_ate (YYYY-MM-DD), com janela máxima de 15 dias (se omitidas, usa os últimos 15 dias). Outros filtros: id_cliente, numero_venda, status (PENDENTE, PRONTA_ENVIO, EMITIDA, CANCELADA…), tipo_negociacao (VENDA, CONTRATO), numero_nfse_inicial, numero_nfse_final, numero_rps_inicial, numero_rps_final.
contaazul_list_payablesread-onlyLista contas a pagar (parcelas de despesa). Filtros: tamanho_pagina, pagina, data_vencimento_de, data_vencimento_ate (YYYY-MM-DD; se omitidas, lista todas), status (PERDIDO, RECEBIDO, EM_ABERTO, RENEGOCIADO, RECEBIDO_PARCIAL, ATRASADO). O Conta Azul usa os MESMOS status de contas a receber (RECEBIDO aqui = pago) e o mesmo formato de item — parecido com list_receivables, mas são despesas.
contaazul_list_peopleread-onlyLista pessoas (clientes, fornecedores, vendedores, transportadores) cadastradas. Filtros via params: tamanho_pagina, pagina, busca (nome/documento), tipo_perfil, ativo.
contaazul_list_productsread-onlyLista produtos cadastrados. Filtros: tamanho_pagina, pagina, busca, ativo.
contaazul_list_receivablesread-onlyLista contas a receber (parcelas de receita). Filtros: tamanho_pagina, pagina, data_vencimento_de, data_vencimento_ate (YYYY-MM-DD; se omitidas, lista todas), status (PERDIDO, RECEBIDO, EM_ABERTO, RENEGOCIADO, RECEBIDO_PARCIAL, ATRASADO), ids_clientes (UUID do cliente).
contaazul_list_sale_itemsread-onlyItens (produtos/serviços, quantidade, valor) de uma ou mais vendas. Passe ids_venda (até 50); devolve um resultado por venda.
contaazul_list_salesread-onlyLista vendas (GET /venda/busca). Filtros: data_inicio/data_fim (emissão, AAAA-MM-DD), data_criacao_de/ate (AAAA-MM-DD), data_alteracao_de/ate (AAAA-MM-DDTHH:MM:SS), ids_clientes, ids_vendedores, ids_categorias, ids_produtos, numeros, situacoes (ex.: aprovado, em_andamento, faturado, cancelado, orcamento), termo_busca, ordenação por numero/cliente/data. Paginação: pagina + tamanho_pagina; a resposta traz total_itens, totais e quantidades por situação. Bulk support: accepts cliente_ids for batched execution.
contaazul_list_servicesread-onlyLista serviços cadastrados.
contaazul_list_settlementsread-onlyLista as baixas de uma parcela. `id` é o UUID da parcela. Bulk support: accepts ids for batched execution.
contaazul_list_transfersread-onlyLista transferências entre contas financeiras por período (conciliação). data_inicio e data_fim (YYYY-MM-DD) com janela máxima de 1 ano (se omitidas, usa os últimos 365 dias). Paginado.
contaazul_payable_createCria um evento financeiro de conta a pagar. `data` é o JSON do EventoFinanceiroRequest (mesma estrutura do contaazul_receivable_create: data_competencia, valor, observacao, descricao, contato (UUID do fornecedor), conta_financeira (UUID), condicao_pagamento.parcelas[] (cada parcela leva detalhe_valor:{valor_bruto obrigatório; valor_liquido derivado se omitido} — os aliases valor_composicao e composicao_valor são normalizados automaticamente), rateio[] opcional. metodo_pagamento da parcela usa o enum EXATO da API (PIX_PAGAMENTO_INSTANTANEO, BOLETO_BANCARIO, TRANSFERENCIA_BANCARIA, CARTAO_CREDITO, CARTAO_DEBITO, DINHEIRO etc — formas curtas como PIX/BOLETO/TED são normalizadas). Retorna 202 + {protocolId,status} (assíncrono).
contaazul_person_deletedestructiveRemove uma pessoa por id. Operação destrutiva — confirme antes. Bulk support: accepts ids for batched execution.
contaazul_person_write_createCria ou atualiza uma pessoa. action=create: requer nome, tipo_pessoa e (cpf|cnpj) — passe os campos via `data` (JSON). action=update: requer id e APENAS os campos a alterar em `data` (JSON) — é update PARCIAL: o resto do cadastro fica intacto e campo que o registro não tem NÃO é exigido (dá pra trocar só o email). Enums de escrita: tipo_pessoa = Física|Jurídica|Estrangeira; perfis = [{"tipo_perfil":"Cliente"|"Fornecedor"|"Transportadora"}] (variações de caixa/acento são normalizadas). Único campo fora do update parcial é `outros_contatos`: mudá-lo obriga a substituição integral do cadastro, e aí o Conta Azul exige codigo, data_nascimento, observacao, telefone_celular e telefone_comercial preenchidos — o erro retornado diz qual falta; inclua-o no `data`. [Flattened action: create] Bulk support: accepts ids for batched execution.
contaazul_person_write_updateCria ou atualiza uma pessoa. action=create: requer nome, tipo_pessoa e (cpf|cnpj) — passe os campos via `data` (JSON). action=update: requer id e APENAS os campos a alterar em `data` (JSON) — é update PARCIAL: o resto do cadastro fica intacto e campo que o registro não tem NÃO é exigido (dá pra trocar só o email). Enums de escrita: tipo_pessoa = Física|Jurídica|Estrangeira; perfis = [{"tipo_perfil":"Cliente"|"Fornecedor"|"Transportadora"}] (variações de caixa/acento são normalizadas). Único campo fora do update parcial é `outros_contatos`: mudá-lo obriga a substituição integral do cadastro, e aí o Conta Azul exige codigo, data_nascimento, observacao, telefone_celular e telefone_comercial preenchidos — o erro retornado diz qual falta; inclua-o no `data`. [Flattened action: update] Bulk support: accepts ids for batched execution.
contaazul_product_writeCria um produto (nome + valor_venda obrigatórios em `data` JSON). A API v2 do Conta Azul não expõe atualização nem GET de produto por id — para consultar, use contaazul_list_products (/produto/busca) com filtro.
contaazul_receivable_createCria um evento financeiro de conta a receber. `data` é o JSON do EventoFinanceiroRequest. OBRIGATÓRIOS: data_competencia (YYYY-MM-DD), valor (number), observacao, descricao, contato (UUID do cliente — via contaazul_list_people), conta_financeira (UUID — via contaazul_list_financial_accounts), condicao_pagamento.parcelas[] (cada: descricao, data_vencimento YYYY-MM-DD, nota, conta_financeira UUID, detalhe_valor:{valor_bruto obrigatório; valor_liquido derivado se omitido} — os aliases de leitura valor_composicao (o que contaazul_get_installment devolve) e de baixa composicao_valor são normalizados automaticamente pro detalhe_valor, metodo_pagamento com o enum EXATO da API: PIX_PAGAMENTO_INSTANTANEO, BOLETO_BANCARIO, TRANSFERENCIA_BANCARIA, CARTAO_CREDITO, CARTAO_DEBITO, DINHEIRO, DEPOSITO_BANCARIO, DEBITO_AUTOMATICO etc — formas curtas comuns como PIX/BOLETO/TED são normalizadas). OPCIONAL: rateio[] (cada: id_categoria UUID via contaazul_list_categories, valor, rateio_centro_custo[]). Retorna 202 + {protocolId,status} (processamento assíncrono).
contaazul_sale_canceldestructiveCancela uma venda. Operação destrutiva — confirme antes. Bulk support: accepts ids for batched execution.
contaazul_sale_write_createCria ou atualiza venda. action=create posta em /venda; action=update em /vendas/{id}. `data` é o payload completo da venda em JSON. [Flattened action: create] Bulk support: accepts ids for batched execution.
contaazul_sale_write_updateCria ou atualiza venda. action=create posta em /venda; action=update em /vendas/{id}. `data` é o payload completo da venda em JSON. [Flattened action: update] Bulk support: accepts ids for batched execution.
contaazul_service_writeCria um serviço. `data` é JSON com nome, valor, etc.
contaazul_settle_installmentRegistra a baixa (recebimento/pagamento) de uma parcela. `id` é o UUID da PARCELA (via contaazul_list_receivables / _list_payables / _get_installment). `data` é o JSON da baixa: data_pagamento (YYYY-MM-DD), composicao_valor {valor_bruto, multa, juros, desconto, taxa, valor_liquido}, conta_financeira (UUID em string, via contaazul_list_financial_accounts) e metodo_pagamento, enum EXATO da API: DINHEIRO, PIX_PAGAMENTO_INSTANTANEO, BOLETO_BANCARIO, TRANSFERENCIA_BANCARIA, CARTAO_CREDITO, CARTAO_DEBITO, CARTAO_CREDITO_VIA_LINK, CHEQUE, DEPOSITO_BANCARIO, CARTEIRA_DIGITAL, CASHBACK, CREDITO_LOJA, CREDITO_VIRTUAL, OUTRO (formas curtas como PIX, BOLETO, CARTAO ou TRANSFERENCIA dão 400); observacao é opcional. O campo `versao` (controle de concorrência) é buscado automaticamente. Retorna a baixa com id_reconciliacao. Bulk support: accepts ids for batched execution.
contaazul_terminate_contractdestructiveEncerra um contrato por id. Operação sensível, confirme antes. Bulk support: accepts ids for batched execution.
contaazul_update_installmentAtualiza campos de uma parcela (PATCH). Campos editáveis em `data` JSON: nota, descricao, vencimento (YYYY-MM-DD), composicao_valor:{valor_bruto,multa,juros,desconto,taxa,valor_liquido}, data_pagamento_esperado, metodo_pagamento, perda, nsu, pagamento_agendado, id_conta_financeira. O campo `versao` (controle de concorrência) é buscado automaticamente — não precisa passar. NÃO é editável aqui: `rateio`/`rateio_centro_custo` (categoria e centro de custo só entram na CRIAÇÃO do lançamento, via rateio[] do contaazul_payable_create / contaazul_receivable_create; o Conta Azul não deixa alterar depois). Campo fora da lista é RECUSADO com erro em vez de ser enviado, porque a API responde 200 e incrementa a versão descartando o campo em silêncio. Para registrar pagamento/baixa use contaazul_settle_installment e para estornar use contaazul_delete_settlement. Bulk support: accepts ids for batched execution.
contaazul_update_settlementAtualiza uma baixa (PATCH). `id` é o UUID da baixa. `data` é o JSON com os campos a alterar (data_pagamento, composicao_valor, conta_financeira em UUID string, metodo_pagamento com o mesmo enum de contaazul_settle_installment, observacao). O campo `versao` é buscado automaticamente. Bulk support: accepts ids for batched execution.
marketplaceThe 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.
report_bugReport a bug, missing feature, or send feedback. Include the conversation array with recent messages for reproduction.
show_versionread-onlyShow the current MCP platform and adapter versions.
toolkit_inforead-onlyReturns the current toolkit state: installed MCPs, their connection status, the accounts connected to each one, and how many catalog tools each exposes.

Schemas: list_tools.

Similar MCP servers

More from io.github.douglac

Official server.json
{
  "name": "io.github.douglac/contaazul-mcp",
  "title": "Conta Azul MCP",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://api.mcp.ai/contaazul",
      "type": "streamable-http"
    }
  ],
  "version": "0.1.0",
  "repository": {
    "url": "https://github.com/douglac/contaazul-mcp",
    "source": "github"
  },
  "description": "Conta Azul ERP MCP — sales, customers, finance and NF-e via OAuth 2.0. Read + write, 35 tools."
}