LINE Official Account

resmi

AI Ajanını LINE Official Account'a bağlamak için LINE Messaging API'sini entegre eder.

LINE Official Account MCP ile neler yapabilirsiniz?

  • Metin mesajları gönder — push_text_message ile belirli bir kullanıcıya düz metin mesajı gönderin veya broadcast_text_message ile tüm takipçilere yayınlayın.
  • Zengin esnek mesajlar gönder — push_flex_message veya broadcast_flex_message kullanarak tek bir kullanıcıya yüksek düzeyde özelleştirilebilir balon veya karusel mesajları iletin veya bunları yayınlayın.
  • Zengin menüleri yönet — create_rich_menu, get_rich_menu_list ve ilgili araçlarla postback, URI ve kamera gibi eylemler içeren zengin menüler oluşturun, listeleyin, varsayılan olarak ayarlayın, varsayılanı iptal edin veya silin.
  • Kullanıcı ve grup bilgilerini al — get_profile ile bir kullanıcının profil ayrıntılarını (ad, resim, durum mesajı) getirin veya get_group_summary ile kimlik ve simge dahil grup sohbeti özetini alın.
  • Mesaj kotasını izle — get_message_quota kullanarak LINE Resmi Hesabınızın aylık mesaj limitini ve mevcut kullanımını kontrol edin.
  • Takipçi kimliklerini al — get_follower_ids ile hesabınızı arkadaş olarak ekleyen kullanıcıların kimliklerini, isteğe bağlı devam jetonu ve limit ile sayfalı bir liste halinde alın.

Dokümantasyon

Japonca README burada

LINE Bot MCP Sunucusu

npmjs

LINE Messaging API'yi entegre eden ve bir AI Ajanını LINE Resmi Hesabına bağlayan Model Context Protocol (MCP) sunucu uygulaması.

[!NOT] Bu depo önizleme sürümü olarak sunulmaktadır. Deneysel amaçlarla sunuyoruz ancak tam işlevsellik veya kapsamlı destek içermeyebileceğini lütfen unutmayın.

Araçlar

  1. push_text_message

    • LINE üzerinden bir kullanıcıya basit bir metin mesajı gönderir.
    • Girdiler:
      • userId (string?): Mesajı alacak kullanıcı kimliği. Varsayılan olarak DESTINATION_USER_ID kullanılır. userId veya DESTINATION_USER_ID değerlerinden biri ayarlanmalıdır.
      • message.text (string): Kullanıcıya gönderilecek düz metin içeriği.
  2. push_flex_message

    • LINE üzerinden bir kullanıcıya son derece özelleştirilebilir bir esnek mesaj gönderir.
    • Girdiler:
      • userId (string?): Mesajı alacak kullanıcı kimliği. Varsayılan olarak DESTINATION_USER_ID kullanılır. userId veya DESTINATION_USER_ID değerlerinden biri ayarlanmalıdır.
      • message.altText (string): Esnek mesaj görüntülenemediğinde gösterilen alternatif metin.
      • message.contents (any): Esnek mesajın içeriği. Mesajın düzenini ve bileşenlerini tanımlayan bir JSON nesnesidir.
      • message.contents.type (enum): Konteyner türü. Tek konteyner için 'bubble', birden fazla kaydırılabilir balon için 'carousel'.
  3. broadcast_text_message

    • LINE Resmi Hesabınızı takip eden tüm kullanıcılara LINE üzerinden basit bir metin mesajı yayınlar.
    • Girdiler:
      • message.text (string): Kullanıcılara gönderilecek düz metin içeriği.
  4. broadcast_flex_message

    • LINE Resmi Hesabınızı ekleyen tüm kullanıcılara LINE üzerinden son derece özelleştirilebilir bir esnek mesaj yayınlar.
    • Girdiler:
      • message.altText (string): Esnek mesaj görüntülenemediğinde gösterilen alternatif metin.
      • message.contents (any): Esnek mesajın içeriği. Mesajın düzenini ve bileşenlerini tanımlayan bir JSON nesnesidir.
      • message.contents.type (enum): Konteyner türü. Tek konteyner için 'bubble', birden fazla kaydırılabilir balon için 'carousel'.
  5. get_profile

    • Görünen ad, profil resmi URL'si, durum mesajı ve dil dahil olmak üzere bir LINE kullanıcısının ayrıntılı profil bilgilerini alır.
    • Girdiler:
      • userId (string?): Profilini almak istediğiniz kullanıcının kimliği. Varsayılan olarak DESTINATION_USER_ID kullanılır.
  6. get_message_quota

    • LINE Resmi Hesabının mesaj kotasını ve tüketimini alır. Bu, aylık mesaj limitini ve mevcut kullanımı gösterir.
    • Girdiler:
      • Yok
  7. get_rich_menu_list

    • LINE Resmi Hesabınızla ilişkili zengin menülerin listesini alır.
    • Girdiler:
      • Yok
  8. delete_rich_menu

    • LINE Resmi Hesabınızdan bir zengin menüyü siler.
    • Girdiler:
      • richMenuId (string): Silinecek zengin menünün kimliği.
  9. set_rich_menu_default

    • Bir zengin menüyü varsayılan zengin menü olarak ayarlar.
    • Girdiler:
      • richMenuId (string): Varsayılan olarak ayarlanacak zengin menünün kimliği.
  10. cancel_rich_menu_default

    • Varsayılan zengin menüyü iptal eder.
    • Girdiler:
      • Yok
  11. create_rich_menu

    • Verilen eylemlere göre bir zengin menü oluşturur. Bir görsel oluşturur ve yükler. Varsayılan olarak ayarlar.
    • Girdiler:
      • chatBarText (string): Sohbet çubuğunda görüntülenen metin, aynı zamanda zengin menü adı olarak da kullanılır.
      • actions (array): Zengin menünün eylemleri. En az 1, en fazla 6 eylem belirtebilirsiniz. Her eylem aşağıdaki türlerden biri olabilir:
        • postback: Bir postback eylemi göndermek için
        • message: Bir metin mesajı göndermek için
        • uri: Bir URL açmak için
        • datetimepicker: Bir tarih/saat seçici açmak için
        • camera: Kamerayı açmak için
        • cameraRoll: Kamera rulosunu açmak için
        • location: Geçerli konumu göndermek için
        • richmenuswitch: Başka bir zengin menüye geçmek için
        • clipboard: Metni panoya kopyalamak için
  12. get_follower_ids

    • LINE Resmi Hesabını arkadaş olarak ekleyen kullanıcıların kullanıcı kimliklerinin bir listesini alır. Bu, mesaj göndermek için kullanıcı kimliklerini manuel olarak hazırlamadan elde etmenizi sağlar.
    • Girdiler:
      • start (string?): Sonraki kullanıcı kimliği dizisini almak için devam belirteci. Önceki bir yanıtın next özelliğinde döndürülür.
      • limit (number?): Tek bir istekte alınacak maksimum kullanıcı kimliği sayısı.
  13. get_group_summary

    • Grup kimliğini kullanarak grup kimliği, grup adı ve grup simgesi URL'si dahil grup sohbet özetini alır.
    • Girdiler:
      • groupId (string): Hedef grup sohbetinin grup kimliği.

Kurulum (npx kullanarak)

Gereksinimler:

  • Node.js v22 veya sonrası

Adım 1: LINE Resmi Hesabı Oluşturun

Bu MCP sunucusu bir LINE Resmi Hesabı kullanır. Hesabınız yoksa, bu talimatları izleyerek oluşturun.

Bir LINE Resmi Hesabınız varsa, bu talimatları izleyerek LINE Resmi Hesabınız için Messaging API'yi etkinleştirin.

Adım 2: AI Ajanını Yapılandırın

Claude Desktop veya Cline gibi bir AI Ajanı için aşağıdaki yapılandırmayı ekleyin.

Ortam değişkenlerini veya bağımsız değişkenleri aşağıdaki gibi ayarlayın:

  • CHANNEL_ACCESS_TOKEN: (zorunlu) Kanal Erişim Belirteci. Bunu bu talimatları izleyerek doğrulayabilirsiniz.
  • DESTINATION_USER_ID: (isteğe bağlı) Alıcının varsayılan kullanıcı kimliği. Aracın girdisi userId içermiyorsa, DESTINATION_USER_ID gereklidir. Bunu bu talimatları izleyerek doğrulayabilirsiniz.
{
  "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"
      }
    }
  }
}

Kurulum (Docker kullanarak)

Adım 1: LINE Resmi Hesabı Oluşturun

Bu MCP sunucusu bir LINE Resmi Hesabı kullanır. Hesabınız yoksa, bu talimatları izleyerek oluşturun.

Bir LINE Resmi Hesabınız varsa, bu talimatları izleyerek LINE Resmi Hesabınız için Messaging API'yi etkinleştirin.

Adım 2: line-bot-mcp-server görüntüsünü oluşturun

Bu depoyu klonlayın:

git clone git@github.com:line/line-bot-mcp-server.git

Docker görüntüsünü oluşturun:

docker build -t line/line-bot-mcp-server .

Adım 3: AI Ajanını Yapılandırın

Claude Desktop veya Cline gibi bir AI Ajanı için aşağıdaki yapılandırmayı ekleyin.

Ortam değişkenlerini veya bağımsız değişkenleri aşağıdaki gibi ayarlayın:

  • mcpServers.args: (zorunlu) line-bot-mcp-server yolunu belirtir.
  • CHANNEL_ACCESS_TOKEN: (zorunlu) Kanal Erişim Belirteci. Bunu bu talimatları izleyerek doğrulayabilirsiniz.
  • DESTINATION_USER_ID: (isteğe bağlı) Alıcının varsayılan kullanıcı kimliği. Aracın girdisi userId içermiyorsa, DESTINATION_USER_ID gereklidir. Bunu bu talimatları izleyerek doğrulayabilirsiniz.
{
  "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 ile Yerel Geliştirme

Sunucuyu yerel olarak test etmek ve hata ayıklamak için MCP Inspector'ı kullanabilirsiniz.

Ön Koşullar

  1. Depoyu klonlayın:
git clone git@github.com:line/line-bot-mcp-server.git
cd line-bot-mcp-server
  1. Bağımlılıkları yükleyin:
npm install
  1. Projeyi derleyin:
npm run build

Inspector'ı Çalıştırın

Projeyi derledikten sonra MCP Inspector'ı başlatabilirsiniz:

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

Bu, LINE Bot MCP Sunucusu araçlarıyla etkileşim kurabileceğiniz ve işlevlerini test edebileceğiniz MCP Inspector arayüzünü başlatacaktır.

Sürümleme

Bu proje anlamsal sürümlemeye uyar

http://semver.org/ bölümüne bakın

Katkıda Bulunma

Katkıda bulunmadan önce lütfen CONTRIBUTING bölümünü kontrol edin.