Voltar as noticias
Construindo um Servidor MCP de Taxa de Câmbio usando FastMCP e AllRatesToday
MCP ProtocolAltaEN

Construindo um Servidor MCP de Taxa de Câmbio usando FastMCP e AllRatesToday

Dev.to - MCP·26 de abril de 2026

MCP, ou Protocolo de Contexto de Modelo, é um protocolo criado pela Anthropic (os criadores do Claude) para agilizar e padronizar o acesso de LLM (modelo de linguagem grande) a ferramentas e recursos externos.

FastMCP é um framework em Python que permite implementar MCP em suas aplicações Python.

Neste artigo, vou guiá-lo na criação de um servidor MCP de Taxa de Câmbio que você pode usar em seu agente de codificação, Claude Desktop, ou em qualquer outro ambiente compatível com MCP para obter taxas de câmbio atuais.

Qual é realmente o objetivo do MCP?

LLMs, como ChatGPT, Gemini e modelos Claude, são treinados em vastos conjuntos de dados até uma data específica, conhecida como data de corte do conhecimento.

Isso é aceitável quando você pergunta sobre qualquer coisa histórica, mas no momento em que você pergunta algo atual — "qual é a taxa do USD para EUR agora?" — eles vão adivinhar com base em dados de treinamento desatualizados ou, pior, alucinar um número que parece plausível, mas está completamente errado. Para um LLM, "0.92" e "1.07" são strings que parecem igualmente válidas; o modelo não tem um mecanismo embutido para saber qual delas é verdadeira hoje.

Além disso, por padrão, os LLMs não podem agir no mundo real. Eles são apenas preditores de próximo token e não podem realizar tarefas como pesquisar, buscar dados ao vivo ou fazer chamadas de API na internet de forma independente.

O MCP resolve esses problemas permitindo o acesso a informações atualizadas enquanto permite que eles realizem tarefas externas que de outra forma não seriam capazes.

Então, vamos construir um e servir aos nossos agentes algumas taxas de câmbio em tempo real.

Vamos construir nosso Servidor MCP de Taxa de Câmbio!

Para obter taxas de câmbio atuais, usaremos a API AllRatesToday. No momento da redação, a AllRatesToday suporta mais de 150 moedas, fornece taxas de mercado ao vivo e tem um plano gratuito generoso (300 solicitações por mês) que é mais do que suficiente para desenvolvimento.

O plano: criar uma conta na AllRatesToday para uma chave de API, configurar um ambiente virtual em Python, escrever o código do servidor MCP e executá-lo no Claude Desktop.

Passo 1 — Obtenha sua chave de API

Acesse allratestoday.com/register, inscreva-se (leva cerca de trinta segundos) e copie a chave da API do seu painel. Guarde-a em um lugar seguro — vamos adicioná-la a um .env em breve.

Passo 2 — Crie a pasta do projeto e o ambiente virtual

Usaremos uv — é mais rápido que o pip e gerencia ambientes de forma limpa.

mkdir /caminho/para/seu/allrates-mcp
cd allrates-mcp
uv init
# Este comando cria o seguinte:
# ├── .git/
# ├── .gitignore
# ├── .python-version
# ├── README.md
# ├── main.py
# └── pyproject.toml

uv venv  # Isso cria o ambiente virtual

# Para ativar o ambiente virtual em sistemas operacionais baseados em UNIX:
source .venv/bin/activate

# Para Windows:
.\venv\Scripts\activate.bat
code .  # Isso abre nossa pasta do projeto no VSCode

# Se você usa Cursor:
cursor .

# Para aqueles que vivem no limite:
vim .
uv add fastmcp dotenv httpx

Isso é fastmcp para o framework MCP, dotenv para ler a chave da API de um .env, e httpx para o cliente HTTP assíncrono.

Passo 3 — Escreva o servidor MCP

Abra main.py e cole o seguinte:

import httpx
import os
from dotenv import load_dotenv
from fastmcp import FastMCP

load_dotenv()

mcp = FastMCP(name="Servidor MCP de Taxa de Câmbio AllRatesToday")

ALLRATES_API_KEY = os.getenv("ALLRATES_API_KEY")
if not ALLRATES_API_KEY:
    raise EnvironmentError("ALLRATES_API_KEY não está definida nas variáveis de ambiente.")

API_BASE = "https://allratestoday.com/api"


@mcp.tool
async def convert_currency(amount: float, base_curr: str, target_curr: str) -> str:
    """Converte um valor de uma moeda para outra usando as taxas de câmbio atuais."""

    try:
        async with httpx.AsyncClient() as client:
            response = await client.get(
                f"{API_BASE}/rate",
                params={
                    "source": base_curr.upper(),
                    "target": target_curr.upper(),
                }
            )
            return response.text
Contexto Triplo Up

O MCP é crucial para empresas que utilizam LLMs, pois permite acesso a dados atualizados e execução de tarefas externas. Isso melhora a precisão das informações e a funcionalidade dos agentes de IA, beneficiando negócios que dependem de dados financeiros em tempo real.

Noticias relacionadas

Gostou do conteudo?

Receba toda semana as principais novidades sobre WebMCP.