Sheetwise Label Maker

Print address labels from a list or a spreadsheet without opening Word.

我该使用它吗

质量与安全性

A
描述质量
100%
模式完整度
90%
命名质量
100%
投毒风险
100%
权限匹配度
100%
协议合规性
100%

基于对工具定义和协议合规性的自动分析。

上下文开销

~4,506token 数(工具定义)
~15.6 KB典型响应大小
对注意力有显著影响(占 128k 上下文窗口的 3.52%)

这是每次将服务器的工具加载到模型上下文窗口时所消耗的大致 token 数。数值越高,可用于其他任务的注意力就越少。

安装

一键安装

将以下内容添加到你的 `claude_desktop_config.json` 文件中:

{
  "mcpServers": {
    "avery-labels": {
      "url": "https://avery-labels.zovo.one/mcp"
    }
  }
}

远程端点

https://avery-labels.zovo.one/mcpstreamable-http

它能做什么

工具清单

工具(3)

🟢 只读🟡 写入🔴 删除⚪ 未知
🟢generate_label_sheet(labels, file, sheet, has_header, columns, ...)

Use this when the user wants to print address labels, mailing labels, return address labels, shipping labels, name badges or name tags, place cards, or file folder labels from a list or a spreadsheet ("avery 5160 template", "print address labels from excel", "mailing labels from excel", "make return address labels", "print christmas card addresses on labels", "start printing at label 7 on a used sheet"). Builds a vector PDF on US Letter that lines up with the chosen label sheet (5160/8160 30 per sheet, 5161, 5162, 5163, 5164, 5168, 5126, 5167, 5195, 5366, 5395, 5390, 22805, 5302 place cards), with USPS address lines, font shrink-to-fit, a start position for partly used sheets, copies per label, return-address fill mode, an optional alignment test page and outlines. Accepts typed labels or an uploaded CSV/XLSX file. Returns a preview, the PDF and a cleaned CSV. Does not buy postage, print USPS shipping labels with postage, make barcodes, or design nutrition labels.

输入模式

{
  "type": "object",
  "properties": {
    "labels": {
      "description": "The typed or pasted list, one item per label. Either address objects, e.g. [{\"name\":\"Jane Smith\",\"address1\":\"123 Main St\",\"address2\":\"Apt 4B\",\"city\":\"Springfield\",\"state\":\"IL\",\"zip\":\"62704\"}], or plain text labels with lines separated by \\n, e.g. [\"Jane Smith\\n123 Main St\\nSpringfield, IL 62704\"]. For name badges use {\"name\":\"Ana Lopez\",\"title\":\"Engineer\",\"company\":\"Acme\"}.",
      "maxItems": 10000,
      "type": "array",
      "items": {
        "anyOf": [
          {
            "type": "string",
            "maxLength": 600
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "description": "Recipient or person name, e.g. Jane Smith or The Garcia Family.",
                "type": "string",
                "maxLength": 200
              },
              "company": {
                "description": "Company or organization line, e.g. Acme Corp.",
                "type": "string",
                "maxLength": 200
              },
              "title": {
                "description": "Job title or second line for badges, e.g. Product Manager.",
                "type": "string",
                "maxLength": 200
              },
              "address1": {
                "description": "Street address, e.g. 123 Main St. A whole one-line address like \"123 Main St, Springfield, IL 62704\" is split automatically.",
                "type": "string",
                "maxLength": 200
              },
              "address2": {
                "description": "Apartment, suite or unit, e.g. Apt 4B.",
                "type": "string",
                "maxLength": 200
              },
              "city": {
                "description": "City, e.g. Springfield.",
                "type": "string",
                "maxLength": 100
              },
              "state": {
                "description": "State, e.g. IL or Illinois (converted to the USPS two-letter code).",
                "type": "string",
                "maxLength": 60
              },
              "zip": {
                "description": "ZIP code, e.g. 62704 or 62704-1234.",
                "type": "string",
                "maxLength": 20
              },
              "country": {
                "description": "Country for international mail, e.g. Canada. Leave empty for US addresses.",
                "type": "string",
                "maxLength": 60
              },
              "table": {
                "description": "Table number or name for place cards, e.g. 4.",
                "type": "string",
                "maxLength": 60
              }
            }
          }
        ]
      }
    },
    "file": {
      "type": "object",
      "properties": {
        "download_url": {
          "type": "string",
          "description": "Temporary download link for the file, supplied by ChatGPT."
        },
        "file_id": {
          "type": "string",
          "description": "ChatGPT file id, e.g. file_abc123."
        },
        "mime_type": {
          "description": "Media type if known, e.g. application/pdf.",
          "type": "string"
        },
        "file_name": {
          "description": "Original file name if known, e.g. statement.pdf.",
          "type": "string"
        }
      },
      "required": [
        "download_url",
        "file_id"
      ],
      "description": "Optional uploaded mailing list: a CSV, TSV or Excel .xlsx file with one row per label, e.g. contacts.csv or Christmas list.xlsx. Name, address, city, state and ZIP columns are detected from the headings (Google Contacts, Outlook, Etsy and Shopify exports work)."
    },
    "sheet": {
      "description": "Excel sheet name to read, e.g. Guests. Default: the first sheet with data.",
      "type": "string",
      "maxLength": 60
    },
    "has_header": {
      "description": "Whether the file's first row is column headings. Default: detected (headings like Name, Address, ZIP or a first row without numbers).",
      "type": "boolean"
    },
    "columns": {
      "description": "Optional column mapping when the headings are unusual: heading text or column letter per field, e.g. {\"name\":\"Guest\",\"address1\":\"Mailing Street\",\"zip\":\"F\"}.",
      "type": "object",
      "properties": {
        "name": {
          "description": "Column heading or letter for name, e.g. \"Full Name\" or \"A\".",
          "type": "string",
          "maxLength": 80
        },
        "first_name": {
          "description": "Column heading or letter for first_name, e.g. \"first name\".",
          "type": "string",
          "maxLength": 80
        },
        "last_name": {
          "description": "Column heading or letter for last_name, e.g. \"last name\".",
          "type": "string",
          "maxLength": 80
        },
        "company": {
          "description": "Column heading or letter for company, e.g. \"company\".",
          "type": "string",
          "maxLength": 80
        },
        "title": {
          "description": "Column heading or letter for title, e.g. \"title\".",
          "type": "string",
          "maxLength": 80
        },
        "address1": {
          "description": "Column heading or letter for address1, e.g. \"address1\".",
          "type": "string",
          "maxLength": 80
        },
        "address2": {
          "description": "Column heading or letter for address2, e.g. \"address2\".",
          "type": "string",
          "maxLength": 80
        },
        "city": {
          "description": "Column heading or letter for city, e.g. \"city\".",
          "type": "string",
          "maxLength": 80
        },
        "state": {
          "description": "Column heading or letter for state, e.g. \"state\".",
          "type": "string",
          "maxLength": 80
        },
        "zip": {
          "description": "Column heading or letter for zip, e.g. \"Postal Code\" or \"F\".",
          "type": "string",
          "maxLength": 80
        },
        "country": {
          "description": "Column heading or letter for country, e.g. \"country\".",
          "type": "string",
          "maxLength": 80
        },
        "table": {
          "description": "Column heading or letter for table, e.g. \"table\".",
          "type": "string",
          "maxLength": 80
        }
      }
    },
    "kind": {
      "description": "What the labels are for: address (mailing labels, default), return_address, shipping, name_badge, place_card, file_folder or general text. Sets the default sheet and text style.",
      "type": "string",
      "maxLength": 40,
      "enum": [
        "address",
        "return_address",
        "shipping",
        "name_badge",
        "place_card",
        "file_folder",
        "general"
      ]
    },
    "uppercase": {
      "description": "USPS style: all capitals without periods or commas (e.g. SPRINGFIELD IL 62704). Default false.",
      "type": "boolean"
    },
    "include_country": {
      "description": "Also print USA on US addresses that have a country. Default false (non-US countries always print).",
      "type": "boolean"
    },
    "remove_duplicates": {
      "description": "Print identical labels only once. Default false (duplicates are counted and reported).",
      "type": "boolean"
    },
    "sort": {
      "description": "Order of the labels: none (list order, default), zip, name or last_name.",
      "type": "string",
      "maxLength": 40,
      "enum": [
        "none",
        "zip",
        "name",
        "last_name"
      ]
    },
    "template": {
      "description": "Label sheet product number, e.g. 5160 (also 8160, 18160, 5260...), 5163 or 5395. Supported layouts: 5160, 5161, 5162, 5163, 5164, 5168, 5126, 5167, 5195, 5366, 5395, 5390, 22805, 5302. Default by kind: address 5160, return_address 5167, shipping 5163, name_badge 5395, place_card 5302, file_folder 5366.",
      "type": "string",
      "maxLength": 40
    },
    "start_at": {
      "description": "Label position to start on for a partly used sheet, counted left to right then top to bottom, e.g. 7 skips the first 6 labels. Default 1.",
      "type": "integer",
      "minimum": 1,
      "maximum": 80
    },
    "copies": {
      "description": "Copies of each label, e.g. 2. Default 1.",
      "type": "integer",
      "minimum": 1,
      "maximum": 500
    },
    "fill_sheet": {
      "description": "Repeat a single label (a return address) to fill the whole sheet. Default true for kind return_address with one label.",
      "type": "boolean"
    },
    "sheets": {
      "description": "With fill_sheet: how many full sheets to fill, e.g. 3. Default 1.",
      "type": "integer",
      "minimum": 1,
      "maximum": 50
    },
    "alignment_test": {
      "description": "Add a test page first with each label outlined and numbered, to print on plain paper and hold against a label sheet. With no list, the PDF is only the test page. Default false.",
      "type": "boolean"
    },
    "outline": {
      "description": "Draw a thin grey outline around each label (for printing on plain paper). Default false.",
      "type": "boolean"
    },
    "align": {
      "description": "Text alignment: left (default for addresses) or center (default for badges, place cards and square labels).",
      "type": "string",
      "maxLength": 40,
      "enum": [
        "left",
        "center"
      ]
    },
    "bold_first_line": {
      "description": "Print the first line (the name) in bold. Default false for addresses; badges and place cards print the name in bold.",
      "type": "boolean"
    },
    "max_font_size": {
      "description": "Largest font size in points; long lines shrink below it to fit, e.g. 12. Default depends on the sheet (11 for 5160).",
      "type": "number",
      "minimum": 6,
      "maximum": 48
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string"
    },
    "template": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "records": {
      "type": "number"
    },
    "labels_total": {
      "type": "number"
    },
    "label_sheets": {
      "type": "number"
    },
    "pdf_pages": {
      "type": "number"
    },
    "start_at": {
      "type": "number"
    },
    "copies": {
      "type": "number"
    },
    "fill_sheet": {
      "type": "boolean"
    },
    "alignment_test_page": {
      "type": "boolean"
    },
    "outline": {
      "type": "boolean"
    },
    "font": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {}
    },
    "source": {
      "type": "string"
    },
    "file_name": {
      "type": [
        "string",
        "null"
      ]
    },
    "columns_used": {
      "anyOf": [
        {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": "string"
          }
        },
        {
          "type": "null"
        }
      ]
    },
    "issues_count": {
      "type": "number"
    },
    "issues": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "duplicates": {
      "type": "number"
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "preview": {
      "type": "array",
      "items": {
        "type": "array",
        "items": {
          "type": "string"
        }
      }
    },
    "downloads": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "required": [
    "kind",
    "template",
    "records",
    "labels_total",
    "label_sheets",
    "pdf_pages",
    "start_at",
    "copies",
    "fill_sheet",
    "alignment_test_page",
    "outline",
    "font",
    "source",
    "file_name",
    "columns_used",
    "issues_count",
    "issues",
    "duplicates",
    "notes",
    "preview",
    "downloads"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢find_label_template(query, per_sheet, kind)

Use this when the user asks which label sheet to use or what the measurements of a sheet are ("avery 5160 size", "avery 5160 label size", "30 labels per sheet template", "1 x 2-5/8 labels", "name badge label size", "which labels for return address"). Searches the supported US Letter label sheets by product number, label size, labels per sheet or use, and returns the layout: label size, columns and rows, top/side margins, pitch and products with the same layout. Does not print labels (use generate_label_sheet) and does not cover A4 sheets or label-maker tape.

输入模式

{
  "type": "object",
  "properties": {
    "query": {
      "description": "Product number, size or use, e.g. 8160, \"1 x 2-5/8\", \"30 per sheet\", \"name badge\" or \"return address\".",
      "type": "string",
      "maxLength": 80
    },
    "per_sheet": {
      "description": "Labels per sheet, e.g. 30.",
      "type": "integer",
      "minimum": 1,
      "maximum": 100
    },
    "kind": {
      "description": "Use: address, return_address, shipping, name_badge, place_card, file_folder or general.",
      "type": "string",
      "maxLength": 40,
      "enum": [
        "address",
        "return_address",
        "shipping",
        "name_badge",
        "place_card",
        "file_folder",
        "general"
      ]
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "matches": {
      "type": "array",
      "items": {
        "type": "object",
        "propertyNames": {
          "type": "string"
        },
        "additionalProperties": {}
      }
    },
    "count": {
      "type": "number"
    },
    "query": {
      "type": "string"
    }
  },
  "required": [
    "matches",
    "count",
    "query"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢check_mailing_list(labels, file, sheet, has_header, columns, ...)

Use this when the user wants to check or clean a mailing list or contact list before printing labels ("turn my contact list into mailing labels", "address labels from excel spreadsheet", "clean up my address list"): reads an uploaded CSV/XLSX file or a typed list, shows which columns were used for name, street, city, state and ZIP, formats each address the USPS way, and reports missing streets, cities, states, ZIP codes, unknown state codes and duplicates, with a cleaned CSV download. Does not verify that an address exists, does not look up ZIP+4, and does not print the labels (use generate_label_sheet).

输入模式

{
  "type": "object",
  "properties": {
    "labels": {
      "description": "The typed or pasted list, one item per label. Either address objects, e.g. [{\"name\":\"Jane Smith\",\"address1\":\"123 Main St\",\"address2\":\"Apt 4B\",\"city\":\"Springfield\",\"state\":\"IL\",\"zip\":\"62704\"}], or plain text labels with lines separated by \\n, e.g. [\"Jane Smith\\n123 Main St\\nSpringfield, IL 62704\"]. For name badges use {\"name\":\"Ana Lopez\",\"title\":\"Engineer\",\"company\":\"Acme\"}.",
      "maxItems": 10000,
      "type": "array",
      "items": {
        "anyOf": [
          {
            "type": "string",
            "maxLength": 600
          },
          {
            "type": "object",
            "properties": {
              "name": {
                "description": "Recipient or person name, e.g. Jane Smith or The Garcia Family.",
                "type": "string",
                "maxLength": 200
              },
              "company": {
                "description": "Company or organization line, e.g. Acme Corp.",
                "type": "string",
                "maxLength": 200
              },
              "title": {
                "description": "Job title or second line for badges, e.g. Product Manager.",
                "type": "string",
                "maxLength": 200
              },
              "address1": {
                "description": "Street address, e.g. 123 Main St. A whole one-line address like \"123 Main St, Springfield, IL 62704\" is split automatically.",
                "type": "string",
                "maxLength": 200
              },
              "address2": {
                "description": "Apartment, suite or unit, e.g. Apt 4B.",
                "type": "string",
                "maxLength": 200
              },
              "city": {
                "description": "City, e.g. Springfield.",
                "type": "string",
                "maxLength": 100
              },
              "state": {
                "description": "State, e.g. IL or Illinois (converted to the USPS two-letter code).",
                "type": "string",
                "maxLength": 60
              },
              "zip": {
                "description": "ZIP code, e.g. 62704 or 62704-1234.",
                "type": "string",
                "maxLength": 20
              },
              "country": {
                "description": "Country for international mail, e.g. Canada. Leave empty for US addresses.",
                "type": "string",
                "maxLength": 60
              },
              "table": {
                "description": "Table number or name for place cards, e.g. 4.",
                "type": "string",
                "maxLength": 60
              }
            }
          }
        ]
      }
    },
    "file": {
      "type": "object",
      "properties": {
        "download_url": {
          "type": "string",
          "description": "Temporary download link for the file, supplied by ChatGPT."
        },
        "file_id": {
          "type": "string",
          "description": "ChatGPT file id, e.g. file_abc123."
        },
        "mime_type": {
          "description": "Media type if known, e.g. application/pdf.",
          "type": "string"
        },
        "file_name": {
          "description": "Original file name if known, e.g. statement.pdf.",
          "type": "string"
        }
      },
      "required": [
        "download_url",
        "file_id"
      ],
      "description": "Optional uploaded mailing list: a CSV, TSV or Excel .xlsx file with one row per label, e.g. contacts.csv or Christmas list.xlsx. Name, address, city, state and ZIP columns are detected from the headings (Google Contacts, Outlook, Etsy and Shopify exports work)."
    },
    "sheet": {
      "description": "Excel sheet name to read, e.g. Guests. Default: the first sheet with data.",
      "type": "string",
      "maxLength": 60
    },
    "has_header": {
      "description": "Whether the file's first row is column headings. Default: detected (headings like Name, Address, ZIP or a first row without numbers).",
      "type": "boolean"
    },
    "columns": {
      "description": "Optional column mapping when the headings are unusual: heading text or column letter per field, e.g. {\"name\":\"Guest\",\"address1\":\"Mailing Street\",\"zip\":\"F\"}.",
      "type": "object",
      "properties": {
        "name": {
          "description": "Column heading or letter for name, e.g. \"Full Name\" or \"A\".",
          "type": "string",
          "maxLength": 80
        },
        "first_name": {
          "description": "Column heading or letter for first_name, e.g. \"first name\".",
          "type": "string",
          "maxLength": 80
        },
        "last_name": {
          "description": "Column heading or letter for last_name, e.g. \"last name\".",
          "type": "string",
          "maxLength": 80
        },
        "company": {
          "description": "Column heading or letter for company, e.g. \"company\".",
          "type": "string",
          "maxLength": 80
        },
        "title": {
          "description": "Column heading or letter for title, e.g. \"title\".",
          "type": "string",
          "maxLength": 80
        },
        "address1": {
          "description": "Column heading or letter for address1, e.g. \"address1\".",
          "type": "string",
          "maxLength": 80
        },
        "address2": {
          "description": "Column heading or letter for address2, e.g. \"address2\".",
          "type": "string",
          "maxLength": 80
        },
        "city": {
          "description": "Column heading or letter for city, e.g. \"city\".",
          "type": "string",
          "maxLength": 80
        },
        "state": {
          "description": "Column heading or letter for state, e.g. \"state\".",
          "type": "string",
          "maxLength": 80
        },
        "zip": {
          "description": "Column heading or letter for zip, e.g. \"Postal Code\" or \"F\".",
          "type": "string",
          "maxLength": 80
        },
        "country": {
          "description": "Column heading or letter for country, e.g. \"country\".",
          "type": "string",
          "maxLength": 80
        },
        "table": {
          "description": "Column heading or letter for table, e.g. \"table\".",
          "type": "string",
          "maxLength": 80
        }
      }
    },
    "kind": {
      "description": "What the labels are for: address (mailing labels, default), return_address, shipping, name_badge, place_card, file_folder or general text. Sets the default sheet and text style.",
      "type": "string",
      "maxLength": 40,
      "enum": [
        "address",
        "return_address",
        "shipping",
        "name_badge",
        "place_card",
        "file_folder",
        "general"
      ]
    },
    "uppercase": {
      "description": "USPS style: all capitals without periods or commas (e.g. SPRINGFIELD IL 62704). Default false.",
      "type": "boolean"
    },
    "include_country": {
      "description": "Also print USA on US addresses that have a country. Default false (non-US countries always print).",
      "type": "boolean"
    },
    "remove_duplicates": {
      "description": "Print identical labels only once. Default false (duplicates are counted and reported).",
      "type": "boolean"
    },
    "sort": {
      "description": "Order of the labels: none (list order, default), zip, name or last_name.",
      "type": "string",
      "maxLength": 40,
      "enum": [
        "none",
        "zip",
        "name",
        "last_name"
      ]
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}

输出模式

{
  "type": "object",
  "properties": {
    "records": {
      "type": "number"
    },
    "source": {
      "type": "string"
    },
    "file_name": {
      "type": [
        "string",
        "null"
      ]
    },
    "columns_used": {
      "anyOf": [
        {
          "type": "object",
          "propertyNames": {
            "type": "string"
          },
          "additionalProperties": {
            "type": "string"
          }
        },
        {
          "type": "null"
        }
      ]
    },
    "ok_count": {
      "type": "number"
    },
    "issues_count": {
      "type": "number"
    },
    "issues": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "problem_counts": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "number"
      }
    },
    "duplicates": {
      "type": "number"
    },
    "notes": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "preview": {
      "type": "array",
      "items": {
        "type": "array",
        "items": {
          "type": "string"
        }
      }
    },
    "downloads": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    }
  },
  "required": [
    "records",
    "source",
    "file_name",
    "columns_used",
    "ok_count",
    "issues_count",
    "issues",
    "problem_counts",
    "duplicates",
    "notes",
    "preview",
    "downloads"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

社区

评价此服务器

证据

最近观测

已验证未记录版本3 个工具