LINE Bot消息服务

基于LINE Messaging API的AI代理连接服务,实现文本消息、富媒体消息推送及用户管理功能。

  • by charles-future
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 charles-future/line-bot-mcp-server

使用说明

日语版README在这里

LINE Bot MCP服务器

模型上下文协议(MCP) 集成LINE Messaging API以将AI代理连接到LINE官方帐户的服务器实现。

[!注意] 此存储库是作为预览版本提供的。虽然我们提供它用于实验目的,但请注意,它可能不包括完整的功能或全面的支持。

工具

  1. push_text_message

    • 通过LINE向用户推送一条简单的短信。
    • 输入:
      • userId (string?):接收消息的用户ID。默认为DESTINATION_USER_ID userId 或 DESTINATION_USER_ID 必须设置。
      • message.text (string):发送给用户的纯文本内容。
  2. push_flex消息

    • 通过LINE向用户推送高度可定制的flex消息。
    • 输入:
      • userId (string?):接收消息的用户ID。默认为DESTINATION_USER_ID userId 或 DESTINATION_USER_ID 必须设置。
      • message.altText (string):无法显示柔性消息时显示的替代文本。
      • message.contents (any):flex消息的内容。这是一个JSON对象,定义了消息的布局和组件。
      • message.contents.type (enum):容器的类型。“气泡”代表单个容器,“旋转木马”代表多个可滑动的气泡。
  3. 广播_文本_消息

    • 通过LINE向所有关注过您的LINE官方帐户的用户广播一条简单的短信。
    • 输入:
      • message.text (string):发送给用户的纯文本内容。
  4. broadcast_flex_message

    • 通过LINE向所有添加了LINE官方帐户的用户广播高度可定制的灵活消息。
    • 输入:
      • message.altText (string):无法显示柔性消息时显示的替代文本。
      • message.contents (any):flex消息的内容。这是一个JSON对象,定义了消息的布局和组件。
      • message.contents.type (enum):容器的类型。“气泡”代表单个容器,“旋转木马”代表多个可滑动的气泡。
  5. get_profile

    • 获取LINE用户的详细个人资料信息,包括显示名称、个人资料图片URL、状态消息和语言。
    • 输入:
      • userId (string?):要检索其配置文件的用户的ID。默认为DESTINATION_USER_ID。
  6. get_message_quota

    • 获取LINE官方帐户的消息配额和消费量。这显示了每月的消息限制和当前使用情况。
    • 输入:
      • 无
  7. get_rich_menu_list

    • 获取与您的LINE官方帐户关联的丰富菜单列表。
    • 输入:
      • 无
  8. delete_rich_menu

    • 从您的LINE官方帐户中删除丰富的菜单。
    • 输入:
      • richMenuId (string):要删除的富菜单的ID。
  9. set_rich_menu_default

    • 将丰富菜单设置为默认丰富菜单。
    • 输入:
      • richMenuId (string):要设置为默认值的丰富菜单的ID。
  10. cancel_rich_menu_default

    • 取消默认的丰富菜单。
    • 输入:
      • 无
  11. create_rich_menu

    • 根据给定的操作创建一个丰富的菜单。生成并上传图像。设置为默认值。
    • 输入:
      • chatBarText (string):聊天栏中显示的文本,也用作丰富的菜单名称。
      • actions (array):丰富菜单的操作。您可以指定最少1到最多6个操作。每个动作可以是以下类型之一:
        • postback:用于发送回发操作
        • message:用于发送短信
        • uri:用于打开URL
        • datetimepicker:用于打开日期/时间选择器
        • camera:用于打开相机
        • cameraRoll:用于打开相机胶卷
        • location:用于发送当前位置
        • richmenuswitch:切换到另一个丰富的菜单
        • clipboard:用于将文本复制到剪贴板
  12. get_followpower_ids

    • 获取已将LINE官方帐户添加为好友的用户的用户ID列表。这允许您获取用于发送消息的用户ID,而无需手动准备。
    • 输入:
      • start (string?):用于获取下一个用户ID数组的连续令牌。返回在 next 先前响应的属性。
      • limit (number?):在单个请求中检索的最大用户ID数。

安装(使用npx)

要求:

  • Node.js v20或更高版本

第一步:创建LINE官方账号

此MCP服务器使用LINE官方帐户。如果您没有,请按照以下步骤创建 本说明书.

如果您有LINE官方账户,请通过以下方式为您的LINE官方账户启用消息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": {
        "CHANNEL_ACCESS_TOKEN" : "FILL_HERE",
        "DESTINATION_USER_ID" : "FILL_HERE"
      }
    }
  }
}

安装(使用Docker)

第一步:创建LINE官方账号

此MCP服务器使用LINE官方帐户。如果您没有,请按照以下步骤创建 本说明书.

如果您有LINE官方账户,请通过以下方式为您的LINE官方账户启用消息API 本说明书.

步骤2:构建line bot mcp服务器映像

克隆此存储库:

git clone git@github.com: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"
      }
    }
  }
}

地方发展与督察

您可以使用MCP检查器在本地测试和调试服务器。

先决条件

  1. 克隆存储库:
git clone git@github.com:line/line-bot-mcp-server.git
cd line-bot-mcp-server
  1. 安装依赖项:
npm install
  1. 构建项目:
npm run build

运行检查器

构建项目后,您可以启动MCP检查器:

npx @modelcontextprotocol/inspector node dist/index.js \
  -e CHANNEL_ACCESS_TOKEN="YOUR_CHANNEL_ACCESS_TOKEN" \
  -e DESTINATION_USER_ID="YOUR_DESTINATION_USER_ID"

这将启动MCP检查器界面,您可以在其中与LINE Bot MCP服务器工具交互并测试其功能。

版本控制

此项目尊重语义版本控制

看http://semver.org/

贡献

请检查 贡献 在做出贡献之前。