링크된 문서
Calculator
Calculator
Calculator MCP 서버는 LLM이 정확한 수치 계산을 수행할 수 있도록 지원하는 서버입니다. LLM은 복잡한 수학적 계산, 방정식 풀이, 단위 변환 등에서 종종 오류를 발생시킬 수 있습니다. 이 서버는 고정밀 계산 엔진을 활용하여 정확한 수학적 결과를 제공함으로써 LLM의 한계를 보완합니다. 특히 금융, 공학, 과학 분야 등 정확한 계산이 중요한 영역에서 유용합니다.
특징
- 높은 정확도: 고정밀 수치 계산 지원
- 다양한 연산 지원: 기본 산술연산부터 복잡한 수학 함수까지 광범위한 연산 지원
- 단위 변환: 다양한 측정 단위 간 변환 기능
- 통계 분석: 데이터 세트에 대한 기본적인 통계 분석 제공
- 금융 계산: 이자율, 대출, 투자 수익 등의 금융 계산 기능
- 방정식 풀이: 선형 및 비선형 방정식, 연립방정식 해결
- 행렬 연산: 행렬 덧셈, 곱셈, 역행렬, 행렬식 등의 연산
- 그래프 계산: 함수 그래프의 특징점, 도함수, 적분 등 계산
- 지수 및 로그 계산: 큰 수의 정확한 지수 및 로그 계산
- 삼각 함수: 정확한 삼각 함수 계산 및 변환
API
도구
기본 연산
- calculate: 수학 표현식 계산
- 입력: 계산할 수학 표현식 문자열
-
출력: 계산 결과
-
solve_equation: 방정식 풀기
- 입력: 방정식 문자열, 변수
-
출력: 해결된 변수 값
-
factorize: 숫자 또는 다항식 인수분해
- 입력: 인수분해할 숫자 또는 다항식
- 출력: 인수분해 결과
고급 수학
- integrate: 함수 적분
- 입력: 함수 표현식, 변수, 하한, 상한(정적분의 경우)
-
출력: 적분 결과
-
differentiate: 함수 미분
- 입력: 함수 표현식, 변수, 차수(선택적)
-
출력: 미분 결과
-
limit: 함수의 극한값 계산
- 입력: 함수 표현식, 변수, 접근값
- 출력: 극한값
통계 및 데이터 분석
- statistics: 데이터 세트에 대한 기본 통계 계산
- 입력: 데이터 배열
-
출력: 평균, 중앙값, 최대값, 최소값, 표준편차 등
-
regression: 데이터에 대한 회귀 분석
- 입력: x값 배열, y값 배열, 회귀 유형
- 출력: 회귀 모델 파라미터
단위 변환
- convert_units: 단위 간 변환
- 입력: 값, 원본 단위, 대상 단위
- 출력: 변환된 값
금융 계산
- compound_interest: 복리 이자 계산
- 입력: 원금, 이자율, 기간, 복리 빈도
-
출력: 최종 금액
-
loan_payment: 대출 상환액 계산
- 입력: 대출 금액, 이자율, 기간, 상환 빈도
- 출력: 정기 상환액
사용 방법
설치
# npm을 통한 설치
npm install -g calculator-mcp
# 또는 Python 기반 구현
pip install mcp-calculator
구성
Claude Desktop에서 이 서버를 사용하려면 다음과 같이 설정합니다:
{
"mcpServers": {
"calculator": {
"command": "npx",
"args": ["calculator-mcp"],
"env": {
"PRECISION": "20", // 기본 정밀도 설정
"MODE": "symbolic" // 기본 계산 모드
}
}
}
}
필요 조건
- Node.js v14 이상 또는 Python 3.7 이상
- 일부 고급 기능에는 다음과 같은 라이브러리가 필요할 수 있습니다:
- Math.js
- Sympy (Python 구현의 경우)
- NumPy (통계 계산용)
사용 예시
// 수식 계산
const result = await calculate("(3 + 4) * 2^10 / 12");
console.log(`계산 결과: ${result}`); // 약 583.33...
// 방정식 풀이
const solution = await solve_equation("2x^2 + 3x - 5 = 0", "x");
console.log(`해: ${solution}`); // x = 1, x = -2.5
// 단위 변환
const converted = await convert_units(100, "kg", "lb");
console.log(`100kg = ${converted}lb`); // 약 220.46lb
// 미분
const derivative = await differentiate("x^3 + 2x^2 - 5x + 3", "x");
console.log(`미분 결과: ${derivative}`); // 3x^2 + 4x - 5
// 통계 계산
const stats = await statistics([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
console.log(`평균: ${stats.mean}`); // 5.5
console.log(`표준편차: ${stats.stdDev}`); // 약 2.87
// 금융 계산
const payment = await loan_payment(1000, 0.05, 1, 12);
console.log(`월 상환액: ${payment}`); // 약 85.61
연결된 구성 요소
- Excel - 스프레드시트 데이터에 대한 계산 및 통계 분석
- Python MCP Server - 복잡한 수학 계산을 위한 SciPy 및 NumPy 통합
- Everything Search - 수학 관련 문서 및 리소스 검색