Skip to main content
Glama

Dot MCP - Send Notifications to Your Dot E-ink Device

NPM Version MIT licensed

English | 中文


English

Introduction

Dot MCP is a Model Context Protocol (MCP) server that enables AI assistants to send notifications to your Dot e-ink display device. When AI completes tasks, encounters issues, or needs your attention, it can proactively notify you through your Dot device.

Related MCP server: Notifications MCP Server

Features

  • Send text notifications to Dot e-ink device

  • Support for title, message, signature, icon, and link

  • Immediate refresh or scheduled display

  • Proactive notifications from AI assistants

Requirements

Installation

Install in Cursor

Go to: Settings -> Cursor Settings -> MCP -> Add new global MCP server

Add the following configuration to your ~/.cursor/mcp.json:

{
  "mcpServers": {
    "dot": {
      "command": "npx",
      "args": [
        "-y",
        "mindreset-dot-mcp",
        "--api-key",
        "YOUR_API_KEY",
        "--device-id",
        "YOUR_DEVICE_ID"
      ]
    }
  }
}

Install in Claude Code

Run this command:

claude mcp add dot -- npx -y mindreset-dot-mcp --api-key YOUR_API_KEY --device-id YOUR_DEVICE_ID

Install in VS Code

Add this to your VS Code MCP config file. See VS Code MCP docs for more info.

{
  "mcp": {
    "servers": {
      "dot": {
        "type": "stdio",
        "command": "npx",
        "args": [
          "-y",
          "mindreset-dot-mcp",
          "--api-key",
          "YOUR_API_KEY",
          "--device-id",
          "YOUR_DEVICE_ID"
        ]
      }
    }
  }
}

Install in Windsurf

Add this to your Windsurf MCP config file. See Windsurf MCP docs for more info.

{
  "mcpServers": {
    "dot": {
      "command": "npx",
      "args": [
        "-y",
        "mindreset-dot-mcp",
        "--api-key",
        "YOUR_API_KEY",
        "--device-id",
        "YOUR_DEVICE_ID"
      ]
    }
  }
}

Install in Cline

Open Cline MCP settings and add the following configuration:

{
  "mcpServers": {
    "dot": {
      "command": "npx",
      "args": [
        "-y",
        "mindreset-dot-mcp",
        "--api-key",
        "YOUR_API_KEY",
        "--device-id",
        "YOUR_DEVICE_ID"
      ]
    }
  }
}

Install in Claude Desktop

Open Claude Desktop developer settings and edit your claude_desktop_config.json:

{
  "mcpServers": {
    "dot": {
      "command": "npx",
      "args": [
        "-y",
        "mindreset-dot-mcp",
        "--api-key",
        "YOUR_API_KEY",
        "--device-id",
        "YOUR_DEVICE_ID"
      ]
    }
  }
}

Using Environment Variables

You can also use environment variables instead of CLI arguments:

{
  "mcpServers": {
    "dot": {
      "command": "npx",
      "args": ["-y", "mindreset-dot-mcp"],
      "env": {
        "DOT_API_KEY": "YOUR_API_KEY",
        "DOT_DEVICE_ID": "YOUR_DEVICE_ID"
      }
    }
  }
}

Available Tool

send_text

Send text content to your Dot e-ink device.

Parameters:

Parameter

Type

Required

Description

title

string

No

Text title displayed on the screen (max 10 Chinese characters)

message

string

No

Text content displayed on the screen (max 40 Chinese characters)

signature

string

No

Text signature displayed on the screen

icon

string

No

Base64 encoded PNG icon data (40x40px), displayed in the bottom left

link

string

No

HTTP/HTTPS link or Scheme URL for tap-to-open functionality

refreshNow

boolean

No

Whether to display content immediately (default: true)

Development

# Install dependencies
pnpm install

# Build
pnpm run build

# Run tests
pnpm run test

License

MIT


中文

简介

Dot MCP 是一个 Model Context Protocol (MCP) 服务器,可以让 AI 助手向你的 Dot 墨水屏设备发送通知。当 AI 完成任务、遇到问题或需要你的注意时,它可以主动通过你的 Dot 设备通知你。

功能特性

  • 向 Dot 墨水屏设备发送文本通知

  • 支持标题、消息、签名、图标和链接

  • 即时刷新或定时显示

  • AI 助手主动通知

系统要求

安装配置

在 Cursor 中安装

进入: Settings -> Cursor Settings -> MCP -> Add new global MCP server

~/.cursor/mcp.json 中添加以下配置:

{
  "mcpServers": {
    "dot": {
      "command": "npx",
      "args": [
        "-y",
        "mindreset-dot-mcp",
        "--api-key",
        "你的API密钥",
        "--device-id",
        "你的设备ID"
      ]
    }
  }
}

在 Claude Code 中安装

运行以下命令:

claude mcp add dot -- npx -y mindreset-dot-mcp --api-key 你的API密钥 --device-id 你的设备ID

在 VS Code 中安装

将以下配置添加到 VS Code MCP 配置文件中。详见 VS Code MCP 文档

{
  "mcp": {
    "servers": {
      "dot": {
        "type": "stdio",
        "command": "npx",
        "args": [
          "-y",
          "mindreset-dot-mcp",
          "--api-key",
          "你的API密钥",
          "--device-id",
          "你的设备ID"
        ]
      }
    }
  }
}

在 Windsurf 中安装

将以下配置添加到 Windsurf MCP 配置文件中。详见 Windsurf MCP 文档

{
  "mcpServers": {
    "dot": {
      "command": "npx",
      "args": [
        "-y",
        "mindreset-dot-mcp",
        "--api-key",
        "你的API密钥",
        "--device-id",
        "你的设备ID"
      ]
    }
  }
}

在 Cline 中安装

打开 Cline MCP 设置并添加以下配置:

{
  "mcpServers": {
    "dot": {
      "command": "npx",
      "args": [
        "-y",
        "mindreset-dot-mcp",
        "--api-key",
        "你的API密钥",
        "--device-id",
        "你的设备ID"
      ]
    }
  }
}

在 Claude Desktop 中安装

打开 Claude Desktop 开发者设置并编辑 claude_desktop_config.json

{
  "mcpServers": {
    "dot": {
      "command": "npx",
      "args": [
        "-y",
        "mindreset-dot-mcp",
        "--api-key",
        "你的API密钥",
        "--device-id",
        "你的设备ID"
      ]
    }
  }
}

使用环境变量

你也可以使用环境变量代替命令行参数:

{
  "mcpServers": {
    "dot": {
      "command": "npx",
      "args": ["-y", "mindreset-dot-mcp"],
      "env": {
        "DOT_API_KEY": "你的API密钥",
        "DOT_DEVICE_ID": "你的设备ID"
      }
    }
  }
}

可用工具

send_text

向 Dot 墨水屏设备发送文本内容。

参数:

参数

类型

必填

描述

title

string

屏幕上显示的标题(最多 10 个中文字符显示长度)

message

string

屏幕上显示的内容(最多 40 个中文字符显示长度)

signature

string

屏幕上显示的签名

icon

string

Base64 编码的 PNG 图标(40x40 像素),显示在左下角

link

string

HTTP/HTTPS 链接或 Scheme URL,点击可打开

refreshNow

boolean

是否立即显示内容(默认:true)

开发

# 安装依赖
pnpm install

# 构建
pnpm run build

# 运行测试
pnpm run test

许可证

MIT

Available Tools

1 tool
send_textSend Text to Dot DeviceA

Send text content to a Dot device (an e-ink display device). The text will be displayed on the e-ink screen.

You should PROACTIVELY call this tool to notify the user when:

  • You have completed a task (e.g., finished writing code, fixed a bug, completed a refactor)

  • You encounter an important issue that needs user attention

  • You want to remind the user about something important

  • A long-running task has finished

IMPORTANT: When you PROACTIVELY send a notification (not requested by user), you MUST include your name/identity in the signature field.

NOTE: If the request fails, retry once as it may be a temporary API issue.

Example: After completing a coding task, call this tool with title "Task Completed", message "I've finished implementing the feature you requested. Please review the changes.", and signature with your name (if proactively notifying) to notify the user on their Dot device.

ParametersJSON Schema
NameRequiredDescriptionDefault
titleNoText title displayed on the screen (max 10 Chinese characters display length)
messageNoText content displayed on the screen (max 40 Chinese characters display length)
signatureNoText signature displayed on the screen
iconNoBase64 encoded PNG icon data (40x40px), displayed in the bottom left corner
linkNoHTTP/HTTPS link or Scheme URL for tap-to-open functionality
refreshNowNoWhether to display content immediately (default: true)

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It effectively describes key behaviors: the tool sends notifications to a device, requires a signature for proactive use, and includes a retry strategy on failure ('retry once as it may be a temporary API issue'). However, it lacks details on permissions, rate limits, or error handling beyond retries, leaving some gaps.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured with clear sections (purpose, proactive usage rules, important note, example), and each sentence adds value without redundancy. It is slightly verbose due to the detailed example and repetition of 'proactively', but overall efficient and front-loaded with key information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's moderate complexity (6 parameters, no output schema, no annotations), the description provides strong contextual completeness. It covers purpose, usage guidelines, and behavioral aspects like retry logic, compensating well for the lack of annotations. However, it could improve by detailing response formats or error cases more explicitly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 6 parameters thoroughly. The description adds minimal parameter semantics beyond the schema, such as implying 'signature' is for identity in proactive cases via the usage guidelines, but does not explain parameter interactions or provide additional syntax details. This meets the baseline for high schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the specific action ('Send text content') and target resource ('to a Dot device'), with elaboration on the device type ('an e-ink display device') and outcome ('The text will be displayed on the e-ink screen'). It distinguishes this tool's purpose effectively, even without sibling tools for comparison.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit, detailed guidance on when to use this tool proactively (e.g., 'when you have completed a task', 'encounter an important issue', 'remind the user', 'long-running task finished'), including a mandatory requirement for proactive notifications ('MUST include your name/identity in the signature field'). It also offers an example scenario, making usage context very clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool updatev1.0.0
    • First observedsend_text

TDQS

A4.1/5.0
Disambiguation5/5

With only one tool, there is no possibility of confusion or overlap between tools. The single tool 'send_text' has a clear and distinct purpose of sending text to a Dot device, leaving no room for misselection by an agent.

Naming Consistency5/5

Since there is only one tool, naming consistency is inherently perfect. The tool name 'send_text' follows a clear verb_noun pattern, and there are no other tools to create inconsistency or mixed conventions.

Tool Count2/5

A single tool is too few for a server's purpose, as it limits functionality to basic notifications without supporting other potential operations like device management or status checks. This feels thin and incomplete for a device interaction domain.

Completeness2/5

The tool surface is severely incomplete for interacting with an e-ink display device. While 'send_text' covers notification sending, there are obvious gaps such as retrieving device status, managing display settings, or handling other device-specific operations, which could lead to agent failures in broader tasks.

Maintenance

ActivityInactive
ResponsivenessSyncing

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables AI assistants to send push notifications through the kweenkl service. Allows users to receive contextual notifications from their AI when tasks are complete or important events occur.
    1
    17
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to send native macOS notifications for task completion alerts and reminders. Supports interactive features like custom system sounds, action buttons, and user replies directly from the notification center.
    201
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables AI assistants to send push notifications and interactive alerts to iPhone and Mac devices via the BotBell app. It allows AI to receive user replies and manage notification bots for tasks like alerts, reminders, and remote approvals.
    2
    19
    1
    MIT
  • A
    license
    B
    quality
    D
    maintenance
    Enables AI assistants to send Windows toast notifications and dialog boxes, allowing them to actively notify users and request confirmations through native Windows UI.
    2
    1
    ISC

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/Lakphy/mindreset-dot-mcp'

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