SOLAPI MCP Server
Enables searching SOLAPI documentation and examples, and sending/managing SMS, LMS, MMS, RCS, and Kakao messages with safety guards.
README
SOLAPI MCP Server
SOLAPI 문서/예제 검색과 실제 메시지 발송·관리를 한 번에 제공하는 MCP(Model Context Protocol) 서버입니다. Claude Desktop, Cursor 등에서 사용할 수 있습니다.
내부적으로 solactl CLI를 호출합니다. solactl 바이너리는 설치 시 자동으로 다운로드됩니다 (실패 시 첫 실행 시 재시도).
빠른 시작
전역 설치 (권장)
| Package Manager | Command |
|---|---|
| npm | npm install -g @solapi/mcp-server |
| yarn | yarn global add @solapi/mcp-server |
| pnpm | pnpm add -g @solapi/mcp-server |
| bun | bun add -g @solapi/mcp-server |
설치 후 자동으로 다음 작업이 수행됩니다.
- solactl 바이너리 자동 다운로드 (플랫폼별 prebuilt)
- Claude Desktop / Cursor 설정 파일에 MCP 서버 등록
설치 후 Claude Desktop이나 Cursor를 재시작하면 사용 가능합니다.
수동 설정
~/.cursor/mcp.json 또는 Claude Desktop의 claude_desktop_config.json:
{
"mcpServers": {
"solapi": {
"command": "npx",
"args": ["--latest", "-y", "@solapi/mcp-server"],
"env": {}
}
}
}
인증 설정
MCP 도구로 직접 SOLAPI 자격 증명을 등록할 수 있습니다.
"내 솔라피 키 등록해줘. apiKey는 NCS..., apiSecret은 ..., 프로필 이름은 prod"
→ MCP가 configure_setup 도구를 호출하여 ~/.solactl/credentials.json에 저장합니다.
여러 프로필을 두고 발송 시마다 profile 인자로 지정할 수 있습니다.
| 도구 | 동작 |
|---|---|
configure_setup |
새 프로필 등록 (또는 기존 프로필 덮어쓰기) |
configure_list |
저장된 프로필 목록 |
configure_show |
프로필 정보 (시크릿은 마스킹) |
configure_use |
활성 프로필 전환 |
configure_delete |
프로필 삭제 |
발송 안전 가드
발송 도구는 기본적으로 비활성화되어 있습니다. 실수로 메시지가 나가는 것을 막기 위함입니다.
활성화 방법
일시적 활성화 (세션 한정)
MCP 대화 중에 활성화:
"발송 활성화해줘" → MCP가 update_mcp_policy({sendEnabled: true}) 호출
MCP 서버 재시작 시 다시 비활성화로 돌아갑니다.
부팅 시부터 활성화
mcp.json의 env에 추가:
"env": {
"SOLAPI_MCP_ENABLE_SEND": "true"
}
환경변수 (Ceiling)
환경변수로 설정한 한계는 MCP 도구로 풀 수 없습니다 (ceiling 역할).
| 환경변수 | 효과 |
|---|---|
SOLAPI_MCP_DISABLE_SEND=true |
Hard lock. MCP 도구로도 발송 활성화 불가. |
SOLAPI_MCP_ENABLE_SEND=true |
부팅 시 발송 활성화로 시작. |
SOLAPI_MCP_MAX_RECIPIENTS=N |
한 번의 발송 호출에서 허용되는 최대 수신자 수. 기본 10. MCP에서 더 낮출 수는 있지만 더 높일 수 없음. |
SOLAPI_MCP_ALLOWED_SENDERS=01012345678,01087654321 |
발신번호 화이트리스트. 비우면 무제한. |
SOLAPI_MCP_SOLACTL_BIN=/path/to/solactl |
자동 다운로드 대신 시스템에 설치된 solactl 사용. |
SOLAPI_MCP_AUTO_UPGRADE=true |
MCP 서버 부팅 시 GitHub Releases에서 latest로 자동 업그레이드. (기본 off — 패키지가 핀한 버전 사용) |
Confirm 플래그 (Two-step send)
모든 발송 도구는 confirmed: boolean 인자를 갖습니다.
confirmed=false(기본) → SOLAPI를 호출하지 않고 미리보기만 반환confirmed=true→ 정책 검증 후 실제 발송
LLM이 사용자 동의 없이 한 번에 발송하는 사고를 막습니다. 카카오 템플릿 변경, 발신번호 삭제 등 변경 도구도 같은 가드를 사용합니다.
동적 정책 조회/변경
| 도구 | 동작 |
|---|---|
get_mcp_policy |
현재 정책 + ceiling 반환 |
update_mcp_policy |
sendEnabled / maxRecipients / allowedSenders 변경 (ceiling 위반 거부, 세션 한정) |
도구 카탈로그
문서/예제 (read-only, 가드 없음)
list_examples— SDK 예제 카탈로그get_example— 예제 풀 소스overview— 개요web_search— 문서 검색
인증
configure_setup,configure_list,configure_show,configure_use,configure_delete
조회 (read-only, 가드 없음)
get_balance— 잔액·포인트list_messages— 발송 내역list_senderids— 발신번호 목록get_quota,list_quota_requests— 발송 한도list_kakao_channels,get_kakao_channel,list_kakao_channel_categorieslist_kakao_channel_groups,get_kakao_channel_grouplist_kakao_templates,get_kakao_template,list_kakao_template_categories,get_kakao_template_sendablelist_kakao_brand_templates,get_kakao_brand_template_sendable
발송 (confirmed=true 필수)
send_sms,send_lms,send_mms,send_rcs,send_ata,send_bms
변경 (confirmed=true 필수)
delete_senderid,update_senderidrequest_quotacreate_kakao_template,update_kakao_template,delete_kakao_templateinspect_kakao_template,cancel_inspect_kakao_template,release_dormant_kakao_templatecreate_kakao_brand_template,update_kakao_brand_template,delete_kakao_brand_template
정책
get_mcp_policy,update_mcp_policy
관리
upgrade_solactl— solactl을 latest 또는 지정 버전으로 업그레이드 (SOLAPI_MCP_AUTO_UPGRADE=true로 부팅마다 자동 수행 가능)
solactl 의존성
내장 SDK 예제 외에 발송·조회 기능은 solactl 바이너리에 의존합니다. 본 패키지는 다음 버전을 자동 다운로드합니다:
- solactl
v0.1.6(Linux/macOS amd64·arm64, Windows amd64·arm64) - 다운로드 위치:
<package>/bin/solactl(또는solactl.exe) - sha256 검증 후 설치
자동 다운로드가 차단된 환경(CI 등)에서는 SOLAPI_MCP_SOLACTL_BIN=/path/to/solactl로 시스템에 설치된 바이너리를 가리키도록 할 수 있습니다.
업그레이드 정책
기본적으로 패키지가 핀한 버전(v0.1.6)을 사용합니다. 신버전을 사용하려면:
- 수시로 (대화 중):
upgrade_solactl도구를 호출. "solactl 업그레이드해줘" 한 마디로 가능. 특정 버전을 지정하려면targetVersion: "0.1.7". - 부팅마다 자동:
SOLAPI_MCP_AUTO_UPGRADE=true환경변수.
기본값을 "수동"으로 둔 이유: 매 호출마다 자동 업그레이드는 GitHub API rate limit 소진과 도구 호출 latency 증가 문제를 일으키며, 핀한 버전은 "패키지가 검증한 조합"을 보장합니다.
Internal SDK version
내장 SDK 버전:
| Lang | Version |
|---|---|
| Node.js | 5.5.2 |
| Kotlin(Java) | 1.0.3 |
| Python | 5.0.2 |
| PHP | 5.0.6 |
| Go | 2.0.0 |
| ASP | 1.0.0 |
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。