Zovo Currency MCP Server
Converta moedas e gerencie taxas de câmbio em documentos locais e planilhas. Servidor MCP offline-first, camada gratuita, sem cadastro.
Documentação
mcp-currency
Pergunte ao seu assistente quanto algo vale em outra moeda e obtenha uma resposta real com data. Ele lê as taxas de referência diárias de câmbio do euro do Banco Central Europeu, a mesma série publicada que bancos, autoridades fiscais e contadores usam, converte valores entre qualquer uma das moedas que o BCE cotiza e mostra como um par se moveu ao longo do tempo. Não há chave de API, conta ou limite de taxa, porque o BCE publica o arquivo abertamente. Ambos os arquivos são armazenados em cache na sua própria máquina, então, após o primeiro download, cada resposta é instantânea e o servidor continua funcionando em um avião. Cada resposta informa qual data de taxa usou, porque as taxas do BCE são publicadas uma vez por dia e um domingo carrega a taxa de sexta-feira.
Construído por theluckystrike.
No Registro Oficial de MCP (io.github.theluckystrike/currency-converter-ecb-rates-daily-keyless).
Listado no Índice de Produtos de IA — endpoint remoto ao vivo em mcp.zovo.one/s/currency, nível gratuito, sem cadastro.

Instalação em 60 segundos
A publicação no npm para @theluckystrike/mcp-currency está pendente. Até lá, o pacote de um clique .mcpb ou um clone + build
é o caminho funcional, ambos verificados abaixo.
Um clique (.mcpb): baixe currency.mcpb da versão mais recente e clique duas vezes nele no Claude Desktop:
https://github.com/theluckystrike/mcp-servers/releases/latest
(claude_desktop_config.json):
{
"mcpServers": {
"currency": {
"command": "npx",
"args": ["-y", "@theluckystrike/mcp-currency"]
}
}
}
Claude Code:
claude mcp add currency -- npx -y @theluckystrike/mcp-currency
(.cursor/mcp.json):
{
"mcpServers": {
"currency": {
"command": "npx",
"args": ["-y", "@theluckystrike/mcp-currency"]
}
}
}
O formulário npx acima começa a funcionar no momento em que o pacote é publicado. Até lá, use o pacote .mcpb acima, ou
compile a partir do código-fonte com exatamente estes três comandos:
git clone https://github.com/theluckystrike/mcp-servers.git && cd mcp-servers
npm install
npm run build -w packages/mcp-license -w servers/currency
Em seguida, aponte o command do seu cliente para node com um argumento: o caminho absoluto para servers/currency/dist/index.js.
Para executar no modo Pro, defina MCP_LICENSE_KEY no mesmo bloco de configuração, ou chame license_activate uma vez com sua chave.
Ferramentas
| Ferramenta | O que faz |
|---|---|
rates_latest | As taxas de referência mais recentes do BCE, reexpressas em relação a qualquer base. quotes opcional para restringir a lista. |
convert | Converte um valor entre duas moedas, hoje ou em uma data passada. Informa a taxa, a data da taxa e o arredondamento. |
convert_many | Um valor em várias moedas de uma vez, todas com a mesma data de taxa. |
fx_rates_for | Retorna o objeto fx_rates que o expense_to_invoice do rastreador de despesas aceita, além da data da taxa. |
rate_history | Um par ao longo de um período, com mínimo, máximo, média e a variação no período. |
rate_on | A taxa em uma data, com fallback para a última taxa publicada nessa data ou antes, informando isso. Ambas as direções são retornadas (rate e inverse_rate) e published_direction nomeia de que forma o próprio BCE cotiza o par, para que o recíproco nunca seja repassado como o valor publicado. |
currencies_list | Todas as moedas que o BCE cotiza, com sua taxa em euro e seu número de casas decimais. |
cache_status | O que está em cache, há quanto tempo, quando será atualizado e onde está armazenado. |
license_status / license_activate | Verifica ou ativa uma chave Pro. Verificado offline. |
O recurso fx://latest expõe as taxas em cache como JSON. O prompt convert_invoice_lines percorre toda a
cadeia rastreador-de-despesas -> moeda -> fatura em uma única etapa.
Gratuito vs Pro
| Gratuito | Pro ($19 pagamento único) | |
|---|---|---|
Taxas mais recentes, convert, convert_many, fx_rates_for | Sim, ilimitado | Sim, ilimitado |
| Moedas | Todas as 30+ que o BCE cotiza | Todas as 30+ que o BCE cotiza |
| Histórico de taxas | Até 90 dias por chamada, com retorno de 90 dias; um período maior é encurtado e respondido, com o limite nomeado | Períodos ilimitados, de volta a 1999-01-04 |
rate_on | Últimos 90 dias | Qualquer data desde 1999-01-04 |
| Cache offline | Sim | Sim |
Um período de histórico recusado retorna o motivo e a chamada exata mais restrita a fazer; ele nunca trunca silenciosamente uma tabela e nunca retorna um erro de transporte.
Obtenha o Pro: https://mcp.zovo.one/buy/currency (ou $39 pelo pacote completo: https://mcp.zovo.one/buy/bundle)
Integra-se com
- expense-tracker,
expense_to_invoiceaceitatarget_currencymais um objetofx_ratese converte um conjunto de despesas em várias moedas em uma única moeda de fatura, mas não buscará nem inventará uma taxa.fx_rates_for {target, currencies}aqui retorna exatamente esse objeto. "Rebill Nova in USD" então funciona de ponta a ponta sem que o usuário digite uma única taxa de câmbio. - invoice, uma fatura carrega uma moeda. Converta primeiro, emita depois e coloque o
invoice_noteretornado ("Convertido às taxas de referência do BCE de 2026-09-02") no documento para que o cliente possa verificar.
expense_to_invoice {project, from, to} -> which currencies are actually present
fx_rates_for {target: "USD", currencies: [...]} -> {"EUR": 1.0812, "GBP": 1.2717}, rate date
expense_to_invoice {..., target_currency: "USD", fx_rates: {...}} -> one currency, every line annotated
invoice_create {currency: "USD", items: [...]} -> the document
Como as taxas funcionam
- Fonte: as taxas de referência de câmbio do euro do BCE,
eurofxref-daily.xmleeurofxref-hist.xml. - Publicadas por volta das 16:00 CET em dias úteis do TARGET. Não há taxa para fim de semana, 1º de janeiro, Sexta-feira Santa, Segunda-feira de Páscoa, 1º de maio ou 25 e 26 de dezembro.
- Pedir uma data sem taxa retorna a última taxa publicada nessa data ou antes, a convenção que todo banco usa, e a resposta informa em qual data ela caiu e por quê. Uma data dentro do intervalo em cache sem taxa é um fim de semana ou um feriado do TARGET e é nomeada como tal; uma data após o dia mais recente no cache é relatada como ainda não publicada, com a data mais recente do cache e se esta chamada foi ao BCE para procurá-la.
- O BCE cotiza tudo em relação ao euro, então uma taxa USD/PLN é uma taxa cruzada: a razão é formada e
multiplicada com precisão total, e o único arredondamento no caminho é o último, para as unidades menores da moeda
alvo. A resposta carrega ambos os números:
rate_exacté o multiplicador,rateé a mesma taxa arredondada para 6 casas decimais para leitura. Recalcular manualmente a partir doratecom 6 casas decimais pode diferir em uma ou duas unidades menores; é bem diferente para pares cuja taxa está longe de 1 (1.000.000 VND é KWD 11,667, não KWD 12,000). - Os resultados são arredondados para as unidades menores ISO 4217 da própria moeda alvo: JPY retorna inteiro, BHD com três casas.
- Estas são taxas de referência para contabilidade e relatórios. Não são taxas de negociação; a taxa do seu banco será diferente.
Privacidade
Todos os dados permanecem locais. A única solicitação de rede que este servidor faz é para www.ecb.europa.eu pelos dois arquivos públicos de
taxas, e somente quando a cópia local tem mais de 6 horas (diária) ou 24 horas (histórico). Nada sobre seus valores,
suas moedas ou sua máquina é enviado a lugar algum. O cache fica em
${XDG_DATA_HOME:-~/.local/share}/mcp-servers/currency/; exclua esse diretório para redefinir o servidor. Defina
ECB_BASE_URL para apontar para seu próprio espelho se o acesso de saída estiver restrito.
Licenciado sob MIT. Suporte: support@zovo.one. Construído por theluckystrike.
Use estes documentos como um servidor MCP
Qualquer cliente MCP (Claude, Cursor, Windsurf, VS Code) pode ler a documentação deste repositório diretamente via GitMCP — sem instalação:
- URL de documentos MCP: https://gitmcp.io/theluckystrike/mcp-currency