LINE Official Account MCP Server
공식LINE Messaging API를 통합하여 AI 에이전트를 LINE Official Account에 연결합니다.
문서
LINE Bot MCP Server
LINE Messaging API를 통합하여 AI 에이전트를 LINE Official Account에 연결하는 Model Context Protocol (MCP) 서버 구현체입니다.

[!NOTE] 이 저장소는 미리보기 버전으로 제공됩니다. 실험적인 목적으로 제공되지만, 완전한 기능이나 포괄적인 지원이 포함되지 않을 수 있습니다.
도구
-
push_text_message
- LINE을 통해 사용자에게 간단한 텍스트 메시지를 보냅니다.
- 입력:
userId(문자열?): 메시지를 받을 사용자 ID. 기본값은 DESTINATION_USER_ID입니다.userId또는DESTINATION_USER_ID중 하나를 반드시 설정해야 합니다.message.text(문자열): 사용자에게 보낼 일반 텍스트 내용입니다.
-
push_flex_message
- LINE을 통해 사용자에게 높은 수준으로 커스터마이즈 가능한 플렉스 메시지를 보냅니다.
- 입력:
userId(문자열?): 메시지를 받을 사용자 ID. 기본값은 DESTINATION_USER_ID입니다.userId또는DESTINATION_USER_ID중 하나를 반드시 설정해야 합니다.message.altText(문자열): 플렉스 메시지를 표시할 수 없을 때 표시되는 대체 텍스트입니다.message.contents(any): 플렉스 메시지의 내용입니다. 메시지의 레이아웃과 구성 요소를 정의하는 JSON 객체입니다.message.contents.type(enum): 컨테이너의 유형입니다. 단일 컨테이너는 'bubble', 여러 개의 스와이프 가능한 버블은 'carousel'입니다.
-
broadcast_text_message
- LINE Official Account를 팔로우한 모든 사용자에게 LINE을 통해 간단한 텍스트 메시지를 브로드캐스트합니다.
- 입력:
message.text(문자열): 사용자에게 보낼 일반 텍스트 내용입니다.
-
broadcast_flex_message
- LINE Official Account를 추가한 모든 사용자에게 LINE을 통해 높은 수준으로 커스터마이즈 가능한 플렉스 메시지를 브로드캐스트합니다.
- 입력:
message.altText(문자열): 플렉스 메시지를 표시할 수 없을 때 표시되는 대체 텍스트입니다.message.contents(any): 플렉스 메시지의 내용입니다. 메시지의 레이아웃과 구성 요소를 정의하는 JSON 객체입니다.message.contents.type(enum): 컨테이너의 유형입니다. 단일 컨테이너는 'bubble', 여러 개의 스와이프 가능한 버블은 'carousel'입니다.
-
get_profile
- 표시 이름, 프로필 사진 URL, 상태 메시지, 언어 등 LINE 사용자의 상세 프로필 정보를 가져옵니다.
- 입력:
userId(문자열?): 프로필을 조회할 사용자의 ID입니다. 기본값은 DESTINATION_USER_ID입니다.
-
get_message_quota
- LINE Official Account의 메시지 할당량 및 소비량을 가져옵니다. 월간 메시지 한도와 현재 사용량을 보여줍니다.
- 입력:
- 없음
-
get_rich_menu_list
- LINE Official Account에 연결된 리치 메뉴 목록을 가져옵니다.
- 입력:
- 없음
-
delete_rich_menu
- LINE Official Account에서 리치 메뉴를 삭제합니다.
- 입력:
richMenuId(문자열): 삭제할 리치 메뉴의 ID입니다.
-
set_rich_menu_default
- 리치 메뉴를 기본 리치 메뉴로 설정합니다.
- 입력:
richMenuId(문자열): 기본값으로 설정할 리치 메뉴의 ID입니다.
-
cancel_rich_menu_default
- 기본 리치 메뉴를 해제합니다.
- 입력:
- 없음
-
create_rich_menu
- 주어진 액션을 기반으로 리치 메뉴를 생성합니다. 이미지를 생성 및 업로드하고 기본값으로 설정합니다.
- 입력:
chatBarText(문자열): 채팅 바에 표시되는 텍스트이며, 리치 메뉴 이름으로도 사용됩니다.actions(array): 리치 메뉴의 액션입니다. 최소 1개에서 최대 6개까지 지정할 수 있습니다. 각 액션은 다음 유형 중 하나일 수 있습니다:postback: 포스트백 액션 전송용message: 텍스트 메시지 전송용uri: URL 열기용datetimepicker: 날짜/시간 선택기 열기용camera: 카메라 열기용cameraRoll: 카메라 롤 열기용location: 현재 위치 전송용richmenuswitch: 다른 리치 메뉴로 전환용clipboard: 클립보드에 텍스트 복사용
-
get_follower_ids
- LINE Official Account를 친구로 추가한 사용자의 사용자 ID 목록을 가져옵니다. 이를 통해 수동으로 준비하지 않고도 메시지를 보낼 사용자 ID를 얻을 수 있습니다.
- 입력:
start(문자열?): 다음 사용자 ID 배열을 가져오기 위한 연속 토큰입니다. 이전 응답의next속성에서 반환됩니다.limit(숫자?): 단일 요청에서 검색할 최대 사용자 ID 수입니다.
설치 (npx 사용)
요구 사항:
- Node.js v22 이상
1단계: LINE Official Account 생성
이 MCP 서버는 LINE Official Account를 활용합니다. 계정이 없다면 이 안내를 따라 생성해 주세요.
LINE Official Account가 있다면 이 안내를 따라 LINE Official Account에 Messaging API를 활성화해 주세요.
2단계: AI 에이전트 구성
Claude Desktop 또는 Cline과 같은 AI 에이전트에 다음 구성을 추가해 주세요.
환경 변수 또는 인수를 다음과 같이 설정합니다:
CHANNEL_ACCESS_TOKEN: (필수) 채널 액세스 토큰. 이 안내를 따라 확인할 수 있습니다.DESTINATION_USER_ID: (선택 사항) 수신자의 기본 사용자 ID. 도구의 입력에userId가 포함되지 않은 경우DESTINATION_USER_ID가 필요합니다. 이 안내를 따라 확인할 수 있습니다.
{
"mcpServers": {
"line-bot": {
"command": "npx",
"args": [
"@line/line-bot-mcp-server"
],
"env": {
"NPM_CONFIG_IGNORE_SCRIPTS": "true",
"CHANNEL_ACCESS_TOKEN" : "FILL_HERE",
"DESTINATION_USER_ID" : "FILL_HERE"
}
}
}
}
설치 (Docker 사용)
1단계: LINE Official Account 생성
이 MCP 서버는 LINE Official Account를 활용합니다. 계정이 없다면 이 안내를 따라 생성해 주세요.
LINE Official Account가 있다면 이 안내를 따라 LINE Official Account에 Messaging API를 활성화해 주세요.
2단계: line-bot-mcp-server 이미지 빌드
이 저장소를 클론합니다:
git clone [email protected]:line/line-bot-mcp-server.git
Docker 이미지를 빌드합니다:
docker build -t line/line-bot-mcp-server .
3단계: AI 에이전트 구성
Claude Desktop 또는 Cline과 같은 AI 에이전트에 다음 구성을 추가해 주세요.
환경 변수 또는 인수를 다음과 같이 설정합니다:
mcpServers.args: (필수)line-bot-mcp-server의 경로입니다.CHANNEL_ACCESS_TOKEN: (필수) 채널 액세스 토큰. 이 안내를 따라 확인할 수 있습니다.DESTINATION_USER_ID: (선택 사항) 수신자의 기본 사용자 ID. 도구의 입력에userId가 포함되지 않은 경우DESTINATION_USER_ID가 필요합니다. 이 안내를 따라 확인할 수 있습니다.
{
"mcpServers": {
"line-bot": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"-e",
"CHANNEL_ACCESS_TOKEN",
"-e",
"DESTINATION_USER_ID",
"line/line-bot-mcp-server"
],
"env": {
"CHANNEL_ACCESS_TOKEN" : "FILL_HERE",
"DESTINATION_USER_ID" : "FILL_HERE"
}
}
}
}
Inspector를 사용한 로컬 개발
MCP Inspector를 사용하여 서버를 로컬에서 테스트하고 디버그할 수 있습니다.
사전 요구 사항
- 저장소를 클론합니다:
git clone [email protected]:line/line-bot-mcp-server.git
cd line-bot-mcp-server
- 의존성을 설치합니다:
npm install
- 프로젝트를 빌드합니다:
npm run build
Inspector 실행
프로젝트를 빌드한 후 MCP Inspector를 시작할 수 있습니다:
npx @modelcontextprotocol/inspector node dist/index.js \
-e CHANNEL_ACCESS_TOKEN="YOUR_CHANNEL_ACCESS_TOKEN" \
-e DESTINATION_USER_ID="YOUR_DESTINATION_USER_ID"
이렇게 하면 LINE Bot MCP Server 도구와 상호 작용하고 기능을 테스트할 수 있는 MCP Inspector 인터페이스가 시작됩니다.
버전 관리
이 프로젝트는 시맨틱 버전 관리를 따릅니다.
기여
기여하기 전에 CONTRIBUTING을 확인해 주세요.