CCXT MCP Server

by doggybee
Verified
MIT License
127
4
  • Apple

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides access to market data, trading capabilities, and account information on Binance. Enables retrieving ticker information, order books, candlestick data, and placing market orders with proper API credentials.

  • Enables interaction with Coinbase exchange, allowing users to fetch market data, view order books, check account balances, and execute trades when configured with appropriate API keys.

  • Provides tools for accessing KuCoin exchange data and trading functionality, including market information, ticker data, order books, and trading capabilities when configured with API credentials.

CCXT MCP 서버

MCP(Model Context Protocol)와 CCXT를 사용한 고성능 암호화폐 거래소 통합.

특징

  • 🚀 거래소 지원 : 20개 이상의 암호화폐 거래소와 연결
  • 🔃 시장 유형 : 현물, 선물, 스왑 시장 등을 지원합니다.
  • 🔧 프록시 구성 : 프록시를 통해 거래소에 액세스하기 위한 옵션
  • 📊 빠르고 안정적 : 최적화된 캐싱 및 속도 제한
  • 🌐 MCP 표준 : MCP를 통해 Claude 및 GPT와 같은 LLM과 호환

CCXT MCP 서버 통합 아키텍처

CCXT MCP 서버는 모델 컨텍스트 프로토콜(Model Context Protocol)을 통해 언어 모델을 암호화폐 거래소에 연결합니다. 이 서버는 LLM이 통합 API를 통해 실시간 시장 데이터에 접근하고 여러 거래소에서 거래를 실행할 수 있도록 하는 다리 역할을 합니다.

아키텍처에는 다음이 포함됩니다.

  • 요청을 보내는 LLM 클라이언트(Claude 및 기타 MCP 호환 모델)
  • 통신을 표준화하는 모델 컨텍스트 프로토콜(MCP)
  • 요청을 처리하고 교환 상호 작용을 관리하는 CCXT MCP 서버
  • 교환 API에 대한 통합 액세스를 제공하는 CCXT 라이브러리
  • 여러 암호화폐 거래소에 연결

CCXT MCP 서버 코드 아키텍처

서버는 보다 나은 유지관리와 확장성을 위해 세 가지 주요 모듈로 구성됩니다.

  • Exchange : 교환 인스턴스, 자격 증명 및 심볼 유효성 검사를 관리합니다.
  • 유틸리티 : 캐싱, 속도 제한 및 로깅 기능을 제공합니다.
  • 도구 : 교환 상호 작용을 위한 MCP 도구 및 리소스를 구현합니다.

빠른 시작

Smithery를 통해 설치

Smithery를 통해 Claude Desktop용 mcp-server-ccxt를 자동으로 설치하려면:

지엑스피1

NPM 패키지(권장)

npm에서 CCXT MCP 서버를 설치할 수 있습니다.

# Install globally npm install -g @mcpfun/mcp-server-ccxt # Start the server mcp-server-ccxt

또는 직접 실행하세요:

npx @mcpfun/mcp-server-ccxt

수동 설치

또는 저장소를 복제하고 빌드할 수 있습니다.

# Clone the repository git clone https://github.com/doggybee/mcp-server-ccxt.git cd mcp-server-ccxt # Install dependencies npm install # Build the server npm run build # Start the server npm start

구성

  1. 환경 파일을 만듭니다
    cp .env.example .env
  2. .env 파일을 편집하여 거래소 API 키를 추가하세요.
    # Default exchange (optional) DEFAULT_EXCHANGE=binance # Default market type (optional) DEFAULT_MARKET_TYPE=spot # API credentials (optional) BINANCE_API_KEY=your_api_key BINANCE_SECRET=your_api_secret # Proxy configuration (optional) USE_PROXY=false PROXY_URL=http://username:password@your-proxy-server:port # Legacy format (still supported but recommended to use the integrated URL format above) # PROXY_USERNAME= # PROXY_PASSWORD=

용법

참고 : MCP 통신에 문제가 발생하면 문제 해결 가이드를 참조하여 해결 방법을 확인하세요.

서버 실행

서버를 시작합니다:

# If installed globally via npm mcp-server-ccxt # If installed manually npm start

Claude와 함께 데스크톱 사용

  1. claude_desktop_config.json 에 서버를 추가합니다.

npm을 통해 설치한 경우(전역적으로):

{ "mcpServers": { "ccxt": { "command": "mcp-server-ccxt" } } }

수동으로 설치한 경우:

{ "mcpServers": { "ccxt": { "command": "node", "args": [ "/path/to/mcp-server-ccxt/build/index.js" ] } } }
  1. 데스크톱용 Claude 재시작

다른 프로젝트에서 모듈로 사용

또한 이 패키지를 자신의 Node.js 프로젝트에서 모듈로 사용할 수도 있습니다.

// Import the CCXT MCP Server import '@mcpfun/mcp-server-ccxt'; // The server starts automatically when imported // You can configure it through environment variables

예제 쿼리

MCP 서버에서 사용할 수 있는 몇 가지 쿼리 예는 다음과 같습니다.

  • "바이낸스에서 현재 비트코인 가격은 얼마인가요?"
  • "Coinbase에서 ETH/USDT 주문장을 보여주세요"
  • "Binance에서 최근 24개 캔들에 대한 BTC/USDT의 1시간 OHLCV 데이터를 확인하세요"
  • "다양한 거래소에서 SOL/USDT 가격을 비교해보세요"
  • "바이낸스에서 현재 내 잔액은 얼마입니까?" (API 키 필요)
  • "Kraken에서 0.1 ETH에 대한 시장가 매수 주문을 하세요"(API 키 필요)

사용 가능한 도구

공개 API 도구

  • list-exchanges : 사용 가능한 모든 암호화폐 거래소를 나열합니다.
  • get-ticker : 거래 쌍에 대한 현재 티커 정보를 가져옵니다.
  • batch-get-tickers : 여러 거래 쌍에 대한 티커 정보를 한 번에 가져옵니다.
  • get-orderbook / get-order-book : 거래 쌍에 대한 시장 주문서를 가져옵니다.
  • get-ohlcv : 거래 쌍에 대한 OHLCV 캔들스틱 데이터를 가져옵니다.
  • get-trades : 거래 쌍에 대한 최근 거래 내역 가져오기
  • get-markets : 거래소에 사용 가능한 모든 시장을 가져옵니다.
  • get-exchange-info : 거래소 정보 및 상태 가져오기
  • get-leverage-tiers : 선물 레버리지 계층 가져오기
  • get-funding-rates : 현재 자금 조달 금리를 가져옵니다
  • get-positions : 공석 정보 가져오기
  • get-open-orders : 모든 미결 주문을 가져옵니다.
  • get-order-history : 주문 내역 가져오기

개인 API 도구(API 키 필요)

  • account-balance : 암호화폐 거래소에서 계좌 잔액을 받으세요
  • place-market-order : 거래소에 시장가 주문을 넣습니다.
  • place-limit-order : 거래소에 제한 주문을 넣습니다.
  • cancel-order : 기존 주문 취소
  • cancel-all-orders : 모든 미결 주문 취소
  • set-leverage : 선물 레버리지 설정
  • set-margin-mode : 선물에 대한 마진 모드를 설정합니다.
  • place-futures-market-order : 선물 시장 주문하기
  • place-futures-limit-order : 선물 지정가 주문
  • transfer-funds : 계좌 간 자금 이체(예: 현물에서 선물로)

구성 및 유틸리티 도구

  • cache-stats : CCXT 캐시 통계 가져오기
  • clear-cache : CCXT 캐시를 지웁니다
  • set-log-level : 로깅 레벨 설정
  • get-proxy-config : 프록시 설정 가져오기
  • set-proxy-config : 프록시 설정 구성
  • set-market-type : 기본 시장 유형 설정
  • set-default-exchange : 기본 교환을 변경합니다
  • system-info : 시스템 및 환경 정보를 가져옵니다.

성능 최적화

MCP-CCXT에는 고성능을 보장하기 위한 여러 가지 최적화가 포함되어 있습니다.

  1. LRU 캐싱 시스템 :
    • 다양한 유형의 데이터에 대해 서로 다른 TTL이 적용됩니다.
    • 티커 데이터: 10초
    • 주문서 데이터: 5초
    • 시장 데이터: 1시간
  2. 적응형 속도 제한 :
    • 교환 응답에 따라 요청 속도를 자동으로 조정합니다.
    • 오류에 대한 지수 백오프를 구현합니다.
    • 교환당 동시 요청을 관리합니다
  3. Exchange 연결 관리 :
    • 교환 인스턴스의 효율적인 초기화
    • 적절한 오류 처리 및 재시도

보안 모범 사례

API 키 보안

  1. 전용 API 키 생성 :
    • 다양한 애플리케이션/목적에 맞게 별도의 API 키를 생성하세요.
    • 다른 서비스나 애플리케이션에서 API 키를 재사용하지 마십시오.
  2. API 키 권한 제한 :
    • 필요한 권한만 활성화하세요(예: 시장 데이터에 대한 읽기 전용)
    • 거래 기능만 필요한 경우 출금 권한을 비활성화하세요.
    • 알려진 IP에 대한 액세스를 제한하려면 IP 허용 목록을 사용하세요.
  3. 보안 저장소 :
    • API 키를 버전 제어 시스템에 커밋하지 마십시오.
    • API 키를 환경 변수나 보안 보관소에 저장합니다.
    • .gitignore 통해 git에서 제외된 .env 파일을 사용합니다.

위험 면책 조항

이 소프트웨어는 정보 제공 목적으로만 제공됩니다. 이 소프트웨어를 사용하여 암호화폐 거래소와 상호 작용하는 것은 상당한 위험을 수반합니다.

  • 재정적 위험 : 암호화폐 거래에는 손실 위험이 있습니다.
  • API 보안 : API 키에 적절한 권한 제한이 있는지 확인하세요.
  • 투자 조언 없음 : 이 도구는 투자 조언을 제공하지 않습니다.
  • 보증 없음 : 소프트웨어는 어떠한 종류의 보증 없이 "있는 그대로" 제공됩니다.

특허

이 프로젝트는 MIT 라이선스에 따라 라이선스가 부여되었습니다. 자세한 내용은 LICENSE.txt 파일을 참조하세요.

저작권 및 귀속

이 프로젝트에서는 CCXT 라이브러리( https://github.com/ccxt/ccxt )를 사용합니다.

Copyright (c) 2016-2024 CCXT developers

CCXT는 아래와 같은 MIT 라이선스에 따라 출시됩니다.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

문제, 기능 요청 또는 기여에 대한 내용은 GitHub 저장소를 방문하세요.

ID: zrx6mdpyxy