Skip to main content
Glama

nworks

npm version license npm downloads nworks MCP server

Представлен в awesome-mcp-servers

🇺🇸 English | 🇰🇷 한국어 | 🇯🇵 日本語

Полнофункциональный MCP-сервер для LINE WORKS (NAVER WORKS). CLI + MCP-сервер — 36 инструментов, охватывающих сообщения, календарь, диск, почту, задачи и доски.

nworks позволяет внешним ИИ-агентам (Claude, Cursor) и вашему терминалу управлять LINE WORKS извне — дополняя собственный ИИ LINE WORKS (AiStudio, WORKS AI), а не заменяя его. Неофициальный проект, поддерживается сообществом; не связан с LINE WORKS / NAVER WORKS.

Быстрый старт

npm install -g nworks
nworks login --user
nworks calendar list

Впервые? Вам сначала понадобится приложение Developer Console (Client ID/Secret), зарегистрированный redirect URL и — для бот-сообщений — одобрение администратора. См. руководство по онбордингу и настройке администратора.

Как ИИ-агенты реально используют это

User: Show me today's schedule

Claude → nworks_calendar_list
  → 3 events: Standup (10:00), Lunch meeting (12:00), Code review (15:00)

User: Send a deploy complete message to the team channel

Claude → nworks_message_send
  { "channel": "C001", "text": "v1.2.0 deploy complete" }
  → Message sent

User: Check my unread emails and summarize them

Claude → nworks_mail_list (unread)
  → 3 unread emails
Claude → nworks_mail_read (each)
  → "3 unread: 1) Deploy approval from CTO, 2) Meeting invite for Friday, 3) Weekly report reminder"

Related MCP server: synology-office-mcp

Установка

npx nworks             # Run directly
npm install -g nworks  # Global install

Вход

# User OAuth (calendar, drive, mail, tasks, boards)
nworks login --user --scope "calendar calendar.read file file.read mail mail.read task task.read board board.read user.read"

# Bot messaging (Service Account)
nworks login

# Check auth status
nworks whoami

# Logout
nworks logout

nworks login --user требует только CLIENT_ID + CLIENT_SECRET. Значения, уже заданные через переменные окружения или существующую конфигурацию, не будут запрашиваться повторно.

Developer Console: Чтобы использовать User OAuth, зарегистрируйте http://localhost:9876/callback как Redirect URL в Developer Console.


Интеграция с ИИ-агентами (MCP-сервер)

Работает с Claude Desktop, Cursor и другими MCP-совместимыми клиентами.

Настройка

Сначала войдите:

nworks login --user --scope "calendar calendar.read file file.read mail mail.read task task.read board board.read user.read"

Затем добавьте в ваш MCP-конфиг (~/.config/claude/claude_desktop_config.json):

{
  "mcpServers": {
    "nworks": {
      "command": "nworks",
      "args": ["mcp"]
    }
  }
}

Один вход активирует все 36 инструментов. Дополнительная настройка env не требуется.

Без входа через CLI ИИ-агент может вызвать nworks_setupnworks_login_user для аутентификации через браузер напрямую. Client Secret и путь к Private Key должны быть предварительно настроены через поле env в MCP-конфиге или системные переменные окружения.

MCP-инструменты (32)

Tool

Описание

Auth

Настройка / Авторизация

nworks_setup

Настройка учетных данных API (Client ID и т. д.). Client Secret задается через env

nworks_login_user

Вход через браузер с User OAuth (включая все области доступа)

nworks_logout

Удалить учетные данные и токены

nworks_whoami

Проверить статус авторизации

nworks_doctor

Диагностика подключения (авторизация, токены, работоспособность API)

Сообщения

nworks_message_send

Отправить сообщение пользователю/в канал

Сервисный аккаунт

nworks_message_members

Список участников канала

Сервисный аккаунт

nworks_directory_members

Список участников организации

Сервисный аккаунт

Календарь

nworks_calendar_list

Список событий календаря

User OAuth (calendar.read)

nworks_calendar_create

Создать событие календаря

User OAuth (calendar + calendar.read)

nworks_calendar_update

Обновить событие календаря

User OAuth (calendar + calendar.read)

nworks_calendar_delete

Удалить событие календаря

User OAuth (calendar + calendar.read)

Диск

nworks_drive_list

Список файлов/папок на диске

User OAuth (file.read)

nworks_drive_upload

Загрузить файл на диск

User OAuth (file)

nworks_drive_download

Скачать файл (сохраняется локально, если >5 МБ)

User OAuth (file.read)

nworks_sharedrive_list

Список общих дисков

User OAuth (file.read)

nworks_sharedrive_files

Список файлов/папок в общем диске

User OAuth (file.read)

nworks_sharedrive_download

Скачать файл из общего диска (сохраняется локально, если >5 МБ)

User OAuth (file.read)

Почта

nworks_mail_send

Отправить письмо

User OAuth (mail)

nworks_mail_list

Список почтового ящика

User OAuth (mail.read)

nworks_mail_read

Прочитать детали письма

User OAuth (mail.read)

nworks_mail_download_attachment

Скачать вложение письма (сохраняется локально, если >5 МБ)

User OAuth (mail.read)

Задачи

nworks_task_list

Список задач

User OAuth (task.read)

nworks_task_create

Создать задачу

User OAuth (task + user.read)

nworks_task_update

Обновить/завершить задачу

User OAuth (task + user.read)

nworks_task_delete

Удалить задачу

User OAuth (task + user.read)

Доски

nworks_board_list

Список досок

User OAuth (board.read)

nworks_board_posts

Список записей на доске

User OAuth (board.read)

nworks_board_read

Прочитать детали записи на доске

User OAuth (board.read)

nworks_board_create

Создать запись на доске

User OAuth (board)

Контакты

nworks_contact_list

Список контактов

User OAuth (contact.read)

nworks_contact_get

Получить детали контакта

User OAuth (contact.read)

nworks_contact_create

Создать контакт

User OAuth (contact)

nworks_contact_update

Обновить контакт

User OAuth (contact)

nworks_contact_delete

Удалить контакт

User OAuth (contact)

nworks_contact_list_tags

Список тегов контактов

User OAuth (contact.read)

Пример использования ИИ-агентом

User: Schedule a meeting tomorrow at 2pm and notify the team channel

Claude → nworks_calendar_create
  { "summary": "Meeting", "start": "2026-03-15T14:00:00", "end": "2026-03-15T15:00:00" }
  → Event created

Claude → nworks_message_send
  { "channel": "C001", "text": "Meeting scheduled tomorrow at 14:00" }
  → Message sent

User: Check my unread emails and summarize them

Claude → nworks_mail_list (unread)
  → 3 unread emails
Claude → nworks_mail_read (each)
  → "3 unread: 1) Deploy approval from CTO, 2) Meeting invite for Friday, 3) Weekly report reminder"

Использование CLI

Все команды поддерживают --json для парсинга в pipe/скриптах/агентах. message send, mail send и drive upload поддерживают --dry-run для тестирования без отправки.

Сообщения (Bot API)

# Send text to user
nworks message send --to <userId> --text "Hello"

# Send text to channel
nworks message send --channel <channelId> --text "Announcement"

# Button message
nworks message send --to <userId> --type button --text "PR review request" \
  --actions '[{"type":"message","label":"Approve","postback":"approve"}]'

# List message
nworks message send --to <userId> --type list --text "Today's tasks" \
  --elements '[{"title":"Code review","subtitle":"PR #382"}]'

# List channel members
nworks message members --channel <channelId>

Каталог

nworks directory members   # List organization members

Календарь (User OAuth)

# List today's events
nworks calendar list

# Specify date range
nworks calendar list --from "2026-03-14T00:00:00+09:00" --until "2026-03-14T23:59:59+09:00"

# Create event
nworks calendar create --title "Meeting" --start "2026-03-14T14:00+09:00" --end "2026-03-14T15:00+09:00"

# With location/description
nworks calendar create --title "Lunch" --start "2026-03-14T12:00+09:00" --end "2026-03-14T13:00+09:00" \
  --location "Conference Room" --description "Quarterly review"

# With attendees + notification
nworks calendar create --title "Team meeting" --start "2026-03-14T10:00+09:00" --end "2026-03-14T11:00+09:00" \
  --attendees "user1@example.com,user2@example.com" --notify

# Update event
nworks calendar update --id <eventId> --title "Updated title"

# Delete event
nworks calendar delete --id <eventId>

Диск (User OAuth)

# List files/folders
nworks drive list

# Upload file
nworks drive upload --file ./report.pdf

# Upload to specific folder
nworks drive upload --file ./report.pdf --folder <folderId>

# Download file
nworks drive download --file-id <fileId>

# Specify output path/name
nworks drive download --file-id <fileId> --out ./downloads --name report.pdf

# List shared drives
nworks drive sharedrive-list

# List files in a shared drive (root)
nworks drive sharedrive-files --sharedrive <sharedriveId>

# List files in a shared drive folder
nworks drive sharedrive-files --sharedrive <sharedriveId> --folder <fileId>

# Download a shared drive file
nworks drive sharedrive-download --sharedrive <sharedriveId> --file-id <fileId>

Почта (User OAuth)

# Send mail
nworks mail send --to "user@example.com" --subject "Subject" --body "Body"

# With CC/BCC
nworks mail send --to "user@example.com" --cc "cc@example.com" --subject "Subject" --body "Body"

# List inbox
nworks mail list

# Unread only
nworks mail list --unread

# Read mail detail
nworks mail read --id <mailId>

# Download a mail attachment
nworks mail download-attachment --id <mailId> --attachment-id <attachmentId>

# Specify output path/name
nworks mail download-attachment --id <mailId> --attachment-id <attachmentId> --out ./downloads --name invoice.pdf

Задачи (User OAuth)

# List tasks
nworks task list

# Incomplete only
nworks task list --status TODO

# Create task
nworks task create --title "Code review" --body "Review PR #382"

# With due date
nworks task create --title "Deploy" --due 2026-03-20

# Mark as done
nworks task update --id <taskId> --status done

# Delete task
nworks task delete --id <taskId>

Доски (User OAuth)

# List boards
nworks board list

# List posts
nworks board posts --board <boardId>

# Read post detail
nworks board read --board <boardId> --post <postId>

# Create post
nworks board create --board <boardId> --title "Announcement" --body "Content"

# With notification + disable comments
nworks board create --board <boardId> --title "Notice" --body "Content" --notify --no-comment

Контакты (User OAuth)

# List contacts
nworks contact list

# Filter by tag
nworks contact list --tag <contactTagId>

# Get contact detail
nworks contact get --id <contactId>

# Create contact
nworks contact create --payload '{"contactName":{"lastName":"Kim","firstName":"Chulsoo"},"emails":[{"email":"chulsoo@example.com","primary":true}],"permission":{"accessibleRange":"MEMBER","isCoEditing":false,"accessibleMembers":[{"id":"<yourUserId>","type":"USER"}]}}'

# Update contact
nworks contact update --id <contactId> --payload '{"telephones":[{"type":"CELLPHONE","telephone":"010-1234-5678","primary":true}]}'

# Delete contact
nworks contact delete --id <contactId>

# List contact tags
nworks contact list-tags

contact create требует contactName и permission; permission.accessibleMembers должен содержать хотя бы одного участника (обычно вас самих). Получите свой собственный user ID из nworks whoami.

Уведомление о деплое в CI/CD

# Notify team channel after deployment in GitHub Actions
nworks message send --channel $CHANNEL_ID --text "v${VERSION} deployed"

Скрипт автоматизации команды

# Send daily standup reminder to all members
for userId in $(nworks directory members --json | jq -r '.users[].userId'); do
  nworks message send --to "$userId" --text "Standup at 10:00 today"
done

Области OAuth

Добавьте необходимые области в LINE WORKS Developer Console.

Область

Назначение

Авторизация

Требуется для

bot

Сообщения бота

Сервисный аккаунт

message send

bot.read

Чтение каналов/участников бота

Сервисный аккаунт

message members

calendar

Запись в календарь

Пользовательский OAuth

calendar create/update/delete (требует calendar.read)

calendar.read

Чтение календаря

Пользовательский OAuth

calendar list, также необходимо для записи в календарь

file

Чтение/запись Drive

Пользовательский OAuth

drive list/upload/download

file.read

Только чтение Drive

Пользовательский OAuth

drive list/download

mail

Чтение/запись почты

Пользовательский OAuth

mail send/list/read

mail.read

Только чтение почты

Пользовательский OAuth

mail list/read

task

Чтение/запись задач

Пользовательский OAuth

task create/update/delete (требует user.read)

task.read

Только чтение задач

Пользовательский OAuth

task list

user.read

Чтение информации о пользователе

Сервисный аккаунт / Пользовательский OAuth

directory members, также необходимо для записи задач

board

Чтение/запись досок

Пользовательский OAuth

board list/posts/read/create

board.read

Только чтение досок

Пользовательский OAuth

board list/posts/read

contact

Чтение/запись контактов

Пользовательский OAuth

contact create/update/delete (требует contact.read)

contact.read

Только чтение контактов

Пользовательский OAuth

contact list/get/list-tags

Пресеты проще, чем перечисление областей:

nworks login --user --preset all       # default: full functionality in one login
nworks login --user --preset readonly  # read-only scopes

default — это псевдоним для all. Отправка сообщений использует сервисный аккаунт (бот), поэтому она работает независимо от пресета. Повторный вход никогда не сужает доступ — новые запрошенные области объединяются с существующим токеном, поэтому переключение пресетов только добавляет возможности. Для набора, выбранного вручную, используйте --scope "calendar calendar.read".


Переменные окружения

Установите переменные окружения, чтобы использовать nworks без nworks login (полезно для CI/агентов).

# Required
NWORKS_CLIENT_ID=
NWORKS_CLIENT_SECRET=

# Bot messaging only (not needed for User OAuth)
NWORKS_SERVICE_ACCOUNT=
NWORKS_PRIVATE_KEY_PATH=
NWORKS_BOT_ID=

# Optional
NWORKS_DOMAIN_ID=
NWORKS_SCOPE=              # default: bot bot.read user.read
NWORKS_VERBOSE=1           # debug logging

MCP-сервер с переменными окружения

Конфиденциальные значения (секрет клиента, путь к закрытому ключу) должны быть заданы через поле env конфигурации MCP. Неконфиденциальные значения, такие как идентификатор клиента, могут быть настроены ИИ-агентом через инструмент nworks_setup.

{
  "mcpServers": {
    "nworks": {
      "command": "npx",
      "args": ["-y", "nworks", "mcp"],
      "env": {
        "NWORKS_CLIENT_SECRET": "<Client Secret>",
        "NWORKS_PRIVATE_KEY_PATH": "<Private Key file absolute path (for Service Account)>"
      }
    }
  }
}

Лицензия

Apache-2.0

Install Server
A
license - permissive license
A
quality
B
maintenance

Maintenance

Maintainers
28dResponse time
6dRelease cycle
4Releases (12mo)
Commit activity
Issues opened vs closed

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    AI-powered MCP server for managing LINE Official Accounts. Send broadcasts, push messages, check analytics, manage rich menus — all through natural language via Claude, ChatGPT, or Cursor. 10 tools included: * Account info, friend count, message quota * Broadcast, push message, multicast * Delivery stats, user profiles, follower list * Rich menu management Supports 95M+ LINE users across Jap
    10
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Self-hosted MCP server that exposes Synology Drive, Spreadsheet, MailPlus, and Calendar as structured tools for AI agents, enabling file, spreadsheet, email, and calendar management via natural language.
    39
    12
    9
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    MCP server that integrates the LINE Messaging API to enable AI agents to send messages and manage LINE Official Accounts.
    12
    1,252
    770
    Apache 2.0
  • F
    license
    C
    quality
    C
    maintenance
    MCP server that enables AI agents to control all DingTalk features (messaging, calendar, tasks, approvals, etc.) via natural language using the DingTalk Workspace CLI.
    83

View all related MCP servers

Related MCP Connectors

  • Managed LinkedIn MCP server for AI agents: search, connect, message and enrich on accounts you own.

  • MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.

  • Free public MCP for AI agents — 193 tools, 44 workflows. No API key.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/yjcho9317/nworks'

If you have feedback or need assistance with the MCP directory API, please join our Discord server