Skip to main content
Glama

Crypto Trading MCP

by vkdnjznd
factory.py1.56 kB
from abc import ABC, abstractmethod from crypto_trading_mcp.exchanges.base import CryptoExchange from crypto_trading_mcp.exchanges.upbit import Upbit from crypto_trading_mcp.exchanges.gateio import GateIO from crypto_trading_mcp.http_handler import HTTPRequester from crypto_trading_mcp.exchanges.upbit import UpbitRequester from crypto_trading_mcp.exchanges.gateio import GateIOAuth from crypto_trading_mcp.exchanges.binance import Binance, BinanceAuth class ExchangeFactory(ABC): @abstractmethod def create_requester(self) -> HTTPRequester: pass @abstractmethod def create_exchange(self) -> CryptoExchange: pass class UpbitFactory(ExchangeFactory): def create_requester(self) -> HTTPRequester: return UpbitRequester() def create_exchange(self) -> CryptoExchange: return Upbit(self.create_requester()) class GateIOFactory(ExchangeFactory): def create_requester(self) -> HTTPRequester: return HTTPRequester(GateIOAuth()) def create_exchange(self) -> CryptoExchange: return GateIO(self.create_requester()) class BinanceFactory(ExchangeFactory): def create_requester(self) -> HTTPRequester: return HTTPRequester(BinanceAuth()) def create_exchange(self) -> CryptoExchange: return Binance(self.create_requester()) factories: dict[str, ExchangeFactory] = { "upbit": UpbitFactory, "gateio": GateIOFactory, "binance": BinanceFactory, } def get_factory(exchange_name: str) -> ExchangeFactory: return factories[exchange_name]()

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/vkdnjznd/crypto-trading-mcp'

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