crypto-sentiment-mcp
crypto-sentiment-mcp
crypto-sentiment-mcp는 CryptoPanic 플랫폼을 통해 최신 암호화폐 뉴스를 AI 에이전트에게 제공하는 MCP 서버입니다. 이 서버는 다양한 소스에서 암호화폐 관련 뉴스, 분석 및 동영상 콘텐츠를 수집하여 Claude와 같은 AI 모델이 암호화폐 시장 동향을 이해하고 분석할 수 있도록 지원합니다.
특징
- 최신 뉴스 제공: 암호화폐 관련 최신 뉴스 기사 검색 및 제공
- 감성 분석: Santiment의 데이터를 활용한 암호화폐별 감성 분석
- 소셜 볼륨 트래킹: 소셜 미디어에서의 암호화폐 언급 횟수 모니터링
- 페이지네이션 지원: 여러 페이지에 걸친 뉴스 콘텐츠 검색 가능
- 트렌딩 워드 추적: 암호화폐 논의에서 인기 있는 용어 식별
- 콘텐츠 유형 필터링: 뉴스, 분석, 비디오 등 다양한 유형의 콘텐츠 필터링
- 암호화폐별 필터링: 특정 암호화폐 관련 뉴스만 검색 가능
API
도구
뉴스 검색
- get_crypto_news: 암호화폐 뉴스 검색
-
입력:
currencies(문자열, 선택적): 검색할 암호화폐 (예: "BTC,ETH")kind(문자열, 선택적): 콘텐츠 유형 (예: "news", "media", "analysis")public(불리언, 선택적): 공개 뉴스 여부page(정수, 선택적): 페이지 번호
-
출력: 검색 조건에 맞는 뉴스 기사 목록
감성 분석
- get_sentiment_balance: 특정 암호화폐의 감성 균형 조회
-
입력:
asset(문자열): 암호화폐 기호 (예: "bitcoin", "ethereum")days(정수, 선택적): 분석 기간 (기본값: 7)
-
출력: 긍정적 vs 부정적 감성의 균형값 (-100에서 100 사이)
-
detect_sentiment_shift: 감성 변화 감지
-
입력:
asset(문자열): 암호화폐 기호days(정수, 선택적): 비교 기간 (기본값: 7)threshold(숫자, 선택적): 변화 감지 임계값 (기본값: 20)
-
출력: 감지된 감성 변화 정보
소셜 미디어 분석
- get_social_volume: 소셜 미디어 언급 횟수 조회
-
입력:
asset(문자열): 암호화폐 기호days(정수, 선택적): 분석 기간 (기본값: 7)
-
출력: 지정된 기간 동안의 소셜 미디어 언급 횟수
-
detect_volume_spike: 소셜 볼륨 급증/급감 감지
-
입력:
asset(문자열): 암호화폐 기호threshold(숫자, 선택적): 급변 감지 임계값 (기본값: 50)days(정수, 선택적): 비교 기간 (기본값: 7)
-
출력: 소셜 볼륨 변화 감지 결과
트렌드 분석
- get_trending_words: 트렌딩 키워드 조회
-
입력:
size(정수, 선택적): 반환할 키워드 수 (기본값: 10)days(정수, 선택적): 분석 기간 (기본값: 3)
-
출력: 인기 있는 키워드 목록 및 점수
사용 방법
설치
# 저장소 클론
git clone https://github.com/kukapay/crypto-sentiment-mcp.git
cd crypto-sentiment-mcp
# 의존성 설치
pip install -r requirements.txt
구성
Claude Desktop에서 이 서버를 사용하려면 다음과 같이 설정 파일에 추가합니다:
{
"mcpServers": {
"crypto-sentiment-mcp": {
"command": "uv",
"args": [
"--directory",
"path/to/crypto-sentiment-mcp",
"run",
"main.py"
],
"env": {
"SANTIMENT_API_KEY": "your_api_key_here",
"CRYPTOPANIC_API_KEY": "your_api_key_here"
}
}
}
}
API 키 설정
- CryptoPanic API 키는 CryptoPanic 웹사이트에서 계정을 만들어 얻을 수 있습니다.
- Santiment API 키는 Santiment 웹사이트에서 계정을 생성하여 얻을 수 있습니다.
사용 예시
// 비트코인, 이더리움 관련 최신 뉴스 검색
const news = await get_crypto_news({
currencies: "BTC,ETH",
kind: "news",
page: 1
});
console.log(`최신 암호화폐 뉴스: ${news}`);
// 비트코인의 감성 균형 조회
const sentiment = await get_sentiment_balance({
asset: "bitcoin",
days: 7
});
console.log(`비트코인 감성 균형: ${sentiment}`);
// 소셜 미디어에서 이더리움 언급 횟수 조회
const socialVolume = await get_social_volume({
asset: "ethereum",
days: 5
});
console.log(`이더리움 소셜 볼륨: ${socialVolume}`);
// 최근 트렌딩 키워드 조회
const trendingWords = await get_trending_words({
size: 5,
days: 3
});
console.log(`트렌딩 키워드: ${trendingWords}`);
한계 및 고려 사항
- API 의존성: CryptoPanic 및 Santiment API에 의존하므로 외부 서비스 중단 시 영향을 받을 수 있습니다.
- API 키 필수: 서버 사용을 위해 유효한 API 키가 필요합니다.
- 속도 제한: 외부 API의 속도 제한에 따라 요청 속도가 제한될 수 있습니다.
- 데이터 정확성: 감성 분석은 사용된 데이터 소스와 알고리즘에 따라 달라질 수 있습니다.
- 언어 제한: 주로 영어 콘텐츠만 지원하며, 다른 언어의 뉴스는 제한적으로 제공될 수 있습니다.
연결된 구성 요소
- CoinMarketCap - 암호화폐 시장 데이터 및 가격 정보
- crypto-feargreed-mcp - 암호화폐 공포 및 탐욕 지수 데이터
- crypto-indicators-mcp - 다양한 암호화폐 기술 분석 지표
- crypto-news-mcp - 다른 소스에서 제공되는 암호화폐 뉴스