MCP 서버로 AI 도구 연동하기
mAsh API는 MCP(Model Context Protocol) 서버를 제공합니다. MCP를 통해 Claude Code, Cursor 등 AI 코딩 도구에서 mAsh 데이터를 직접 조회하고 분석할 수 있습니다.
MCP란?
MCP(Model Context Protocol)는 Anthropic에서 개발한 AI 도구 통합 프로토콜입니다. AI 어시스턴트가 외부 데이터 소스에 안전하게 접근할 수 있도록 표준화된 인터페이스를 제공합니다.
주요 장점
- AI 네이티브: AI 도구가 자연어로 데이터를 조회하고 분석
- 보안: 기존 mAsh 인증 체계(API Key/JWT) 재사용
- 멀티테넌시: 사용자별 접근 권한 자동 적용
제공 Tools
| Tool | 설명 |
|---|---|
list_boards | 접근 가능한 보드 목록 조회 |
list_dashboards | 보드의 대시보드 목록 조회 |
get_dashboard | 대시보드 상세 정보 조회 (위젯 목록 포함) |
list_widgets | 대시보드의 위젯 목록 조회 |
search_widgets | 위젯 검색 (이름, 즐겨찾기 필터) |
get_widget_data | 위젯 데이터 조회 (기간 지정) |
설정 방법
사전 준비: API Key 발급
관리자 계정에서 mAsh 대시보드의 환경 설정 > 개인 설정 화면에서 API Key를 발급받을 수 있습니다. 자세한 방법은 API 인증 가이드를 참고하세요.
권장: API Key는 만료되지 않으므로 JWT 토큰보다 API Key 사용을 권장합니다. JWT 토큰은 5분 후 만료됩니다.
참고: API Key 발급은 관리자 권한이 필요합니다. 권한이 없는 경우 조직 관리자에게 문의하세요.
1. 환경변수 설정
API Key를 환경변수로 설정합니다.
# .env 파일에 추가
MASH_API_KEY=abcd1234.xxxxxxxxxxxxxxxxxxxxxxxxxxxx
# 또는 쉘 프로필(~/.zshrc, ~/.bashrc)에 추가
export MASH_API_KEY="abcd1234.xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
2. .mcp.json 파일 생성
프로젝트 루트에 .mcp.json 파일을 생성합니다.
{
"mcpServers": {
"mash-api": {
"type": "http",
"url": "https://api.mash-board.io/mcp/",
"headers": {
"X-MASH-API-KEY": "${MASH_API_KEY}"
}
}
}
}
환경변수
MASH_API_KEY가 설정되어 있으면 자동으로 치환됩니다.
3. AI 도구 재시작
설정 파일 생성 후 AI 도구를 재시작하면 MCP 서버가 자동으로 연결됩니다.
지원 도구
- Claude Code: 첫 연결 시 서버 승인 팝업이 표시될 수 있습니다.
- Cursor: 동일한
.mcp.json설정을 사용합니다.
사용 예시
MCP 서버가 설정되면 AI 도구에서 자연어로 mAsh 데이터를 조회할 수 있습니다.
기본 사용법
보드 목록 조회
"내가 접근할 수 있는 보드 목록을 보여줘"
AI가 list_boards tool을 호출하여 접근 가능한 보드 목록을 반환합니다.
대시보드 목록 조회
"첫 번째 보드의 대시보드 목록을 보여줘"
AI가 list_boards로 보드 UID를 확인한 후 list_dashboards를 호출합니다.
위젯 데이터 분석
"일일 리포트 대시보드의 방문자 수 위젯 데이터를 이번 달 조회해서 분석해줘"
AI가 순차적으로 보드 → 대시보드 → 위젯을 찾아 get_widget_data로 데이터를 조회합니다.
위젯 검색
"'방문' 관련 위젯을 찾아줘"
AI가 search_widgets tool을 호출하여 이름에 "방문"이 포함된 위젯을 검색합니다.
실전 유스케이스
유스케이스 1: 주간 데이터 리포트 생성
프롬프트 예시:
"OO스토어 저번주 데이터 리포트 만들어줘"
AI가 수행하는 작업:
list_boards→ "OO스토어" 보드 UID 확인list_dashboards→ 해당 보드의 대시보드 목록 조회list_widgets→ 대시보드 내 위젯 목록 파악get_widget_data→ 주요 위젯들의 저번주 데이터 조회
결과물 예시:
AI가 자동으로 다음과 같은 리포트를 마크다운으로 생성합니다:
# OO스토어 강남점 주간 리포트
**기간**: 2025-02-17 ~ 2025-02-23
## 핵심 지표
| 지표 | 수치 |
|------|------|
| 총 방문객 | 5,419명 |
| 실질 방문객 | 4,889명 (90.2%) |
| 상담 전환율 | 15.9% |
## 인기 구역 TOP 3
1. 2층 신상품존 - 644명
2. 2층 체험존 - 600명
3. 1층 메인홀 - 553명
유스케이스 2: 구역별 체류 시간 분석
프롬프트 예시:
"우리 매장에서 고객이 가장 오래 머무는 구역 TOP 5 알려줘"
AI가 수행하는 작업:
list_boards→ 매장 보드 확인search_widgets→ "체류" 또는 "머무" 키워드로 위젯 검색get_widget_data→ 구역별 체류 시간 데이터 조회- 데이터 정렬 및 분석
결과물 예시:
## 체류 시간 TOP 5 구역
| 순위 | 구역 | 평균 체류시간 | 60초+ 체류 고객 |
|------|------|--------------|----------------|
| 1 | 2층 상담존 | 15분 12초 | 883명 |
| 2 | 2층 신상품존 | 4분 53초 | 762명 |
| 3 | 1층 메인홀 | 3분 31초 | 556명 |
| 4 | 2층 라운지 | 8분 50초 | 456명 |
| 5 | 2층 체험존 | 3분 40초 | 352명 |
**인사이트**: 상담존 구역에서 체류 시간이 가장 길며,
신상품 및 체험 구역이 방문객 수와 체류 시간 모두 높습니다.