Memobird Printer
Use the Memobird MCP tools to print content to a 咕咕机 thermal printer. For full tool parameter details, see references/tools.md.
Prerequisites
The MCP server requires env vars:
- •
MEMOBIRD_AK(required) — Access Key from open.memobird.cn - •
MEMOBIRD_DEVICE_ID(optional) — default device ID - •
MEMOBIRD_USER_ID(optional) — default user ID frombind_user
If MEMOBIRD_DEVICE_ID and MEMOBIRD_USER_ID are set, they serve as defaults and do not need to be passed per call.
First-Time Setup
If no userID is available, bind the user first:
- •Call
bind_userwith the physical device'smemobirdIDand auseridentifyingstring - •Save the returned
useridfor all subsequent print calls
Printing Workflow
Choose the appropriate print tool based on content type:
| Content | Tool | Notes |
|---|---|---|
| Plain text | print_text | Supports Chinese (auto GBK encoding) |
| HTML snippet | print_from_html | Use inline CSS, absolute image URLs only |
| Web page | print_from_url | Static/SSR pages only, not JS-heavy SPAs |
| Image (JPG/PNG) | convert_image → print_image | Convert first, then print the result |
After any print call, optionally call get_print_status with the returned printcontentid to verify delivery (printflag=1 = success).
Key Constraints
- •Thermal printer paper width is narrow (~384px for images). Keep content concise.
- •
print_imageonly accepts monochrome bitmap Base64. Always callconvert_imagefirst for JPG/PNG sources. - •
print_from_htmlrequires inline CSS — external stylesheets will not load. - •
print_from_urldoes not render JavaScript — only use with static or server-rendered pages. - •All print tools accept optional
memobirdIDanduserIDthat override env-var defaults.
Example Interactions
User: "帮我用咕咕机打印今天的天气预报"
→ Fetch weather info, then call print_text with the summary.
User: "把这张图片打印到咕咕鸡上"
→ Call convert_image with the Base64 image, then call print_image with the result.
User: "帮我把这个网页打印出来" (provides URL)
→ Call print_from_url with the given URL.
User: "打印一个好看的小卡片"
→ Compose HTML with inline CSS, call print_from_html. Keep width <=384px.