Install
openclaw skills install @thcjp/ziptax-tool-freeopenclaw skills install @thcjp/ziptax-tool-freeziptax-tool-free 为个人开发者提供美国销售税率查询能力。它支持按地址、邮编、经纬度查询,返回完整的税率结构(州/县/市/区),并附带基础 CLI 封装,适合个人电商项目、学习税务结构与小规模批量查询。
本工具通过调用 zip-tax.com API 完成查询,需要预先注册并获取 API Key。免费额度为每月 100 次调用。
| 能力 | 说明 |
|---|---|
| 地址查询 | 最精确,返回单一明确结果 |
| 邮编查询 | 返回该 ZIP 内所有税率 |
| 经纬度查询 | 适合移动端或地理定位场景 |
| 税率结构解析 | 州/县/市/区各级税率明细 |
| 服务/运费税性 | 判断服务费与运费是否应税 |
| CLI 封装 | lookup.sh 脚本快速查询 |
| 响应码解析 | metadata.response.code 为 100 表示成功 |
技术实现要点:核心能力基于input_params参数与output_format配置实现,支持创建/查询/修改/删除等操作模式,通过config_options进行运行时配置。 |
用input_params参数进行配置。
输入: 用户提供核心功能执行所需的指令和必要参数。 处理: 解析核心功能执行的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回核心功能执行的响应数据,包含状态码、结果和日志。
input_params参数,支持创建/查询/导出操作用config_options参数进行配置。
输入: 用户提供参数配置与调用所需的指令和必要参数。 处理: 解析参数配置与调用的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回参数配置与调用的响应数据,包含状态码、结果和日志。
config_options参数,支持修改/重置/导入操作用output_format参数进行配置。
输入: 用户提供结果处理与输出所需的指令和必要参数。 处理: 解析结果处理与输出的输入参数,完成核心逻辑,返回结构化响应。 输出: 返回结果处理与输出的响应数据,包含状态码、结果和日志。
output_format参数,支持导出/保存/转换操作
能力覆盖范围:本skill的核心能力覆盖以下场景关键词:面向个人开发者的、销售税查询工具、支持按地址、含基础、销售税查询工具免、费版为个人开发者、提供美国销售税率、查询能力、封装与税率解析、按地址查询销售税、按邮编查询销售税、按经纬度查询销售、Use、when、需要代码生成、编程辅助、调试测试、开发部署时使用、不适用于无明确技、术栈的模糊需求等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持。curl -s "https://api.zip-tax.com/request/v60?address=200+Spectrum+Center+Drive+Irvine+CA+92618" \
-H "X-API-KEY: $ZIPTAX_API_KEY"
返回完整的税率结构,含州、县、市、区各级税率。
curl -s "https://api.zip-tax.com/request/v60?postalcode=92618" \
-H "X-API-KEY: $ZIPTAX_API_KEY"
返回该 ZIP 内所有税率(可能多个,因为一个 ZIP 可能跨越多个税区)。
curl -s "https://api.zip-tax.com/request/v60?lat=33.6525&lng=-117.7479" \
-H "X-API-KEY: $ZIPTAX_API_KEY"
适合移动端或基于地理定位的查询场景。
# Linux / macOS
export ZIPTAX_API_KEY="your-api-key-here"
# ...
# Windows PowerShell
$env:ZIPTAX_API_KEY="your-api-key-here"
# ...
# 永久保存(添加到 ~/.bashrc 或 ~/.zshrc)
echo 'export ZIPTAX_API_KEY="your-api-key-here"' >> ~/.bashrc
# 使用 curl 直接查询
curl -s "https://api.zip-tax.com/request/v60?postalcode=92618" \
-H "X-API-KEY: $ZIPTAX_API_KEY"
# ...
# 或使用 CLI 封装
bash (请参考skill目录中的脚本文件) --postalcode 92618
#!/usr/bin/env bash
# (请参考skill目录中的脚本文件) — 销售税查询 CLI 封装
set -euo pipefail
# ...
if [ -z "$ZIPTAX_API_KEY" ]; then
echo "错误:未设置 ZIPTAX_API_KEY 环境变量"
exit 1
fi
# ...
API_URL="https://api.zip-tax.com/request/v60"
# ...
# 解析参数
while [[ $# -gt 0 ]]; do
case "$1" in
--address)
ADDRESS="$2"; shift 2 ;;
--postalcode)
POSTALCODE="$2"; shift 2 ;;
--lat)
LAT="$2"; shift 2 ;;
--lng)
LNG="$2"; shift 2 ;;
--metrics)
METRICS=1; shift ;;
*)
echo "未知参数: $1"; exit 1 ;;
esac
done
# ...
# 构建查询
QUERY=""
if [ -n "${ADDRESS:-}" ]; then
QUERY="address=$(echo $ADDRESS | sed 's/ /+/g')"
elif [ -n "${POSTALCODE:-}" ]; then
QUERY="postalcode=$POSTALCODE"
elif [ -n "${LAT:-}" ] && [ -n "${LNG:-}" ]; then
QUERY="lat=$LAT&lng=$LNG"
else
echo "用法: lookup.sh --address '地址' | --postalcode 邮编 | --lat 纬度 --lng 经度 | --metrics"
exit 1
fi
# ...
# 查询额度(metrics 不计入额度)
if [ -n "${METRICS:-}" ]; then
curl -s "$API_URL/account/metrics" -H "X-API-KEY: $ZIPTAX_API_KEY"
else
curl -s "$API_URL?$QUERY" -H "X-API-KEY: $ZIPTAX_API_KEY"
fi
// 解析 v60 响应
const response = await fetch(
`https://api.zip-tax.com/request/v60?postalcode=92618`,
{ headers: { 'X-API-KEY': apiKey } }
);
const data = await response.json();
// ...
// 检查响应码(100 = 成功)
if (data.metadata.response.code !== 100) {
throw new Error(`查询失败: ${data.metadata.response.message}`);
}
// ...
// 获取总税率(小数形式,0.0775 = 7.75%)
const totalRate = data.taxSummaries[0].rate;
console.log(`总税率: ${(totalRate * 100).toFixed(2)}%`);
// ...
// 获取各级税率明细
data.baseRates.forEach(rate => {
console.log(`${rate.type}: ${(rate.rate * 100).toFixed(2)}%`);
});
// ...
// 检查服务/运费税性
console.log(`服务应税: ${data.service.taxable}`);
console.log(`运费应税: ${data.shipping.taxable}`);
metadata.response.code 为 100 才是成功,其他码表示错误。/account/metrics 端点不消耗免费额度,可频繁查询。免费额度为每月 100 次调用。通过 /account/metrics 端点查询已用额度,该端点不消耗额度。
地址查询返回单一精确结果(最准);邮编查询返回该 ZIP 内所有税率(可能多个,因为一个 ZIP 可能跨越多个税区)。优先用地址查询。
环境变量是最佳实践。生产环境用密钥管理服务(AWS Secrets Manager / HashiCorp Vault)。永不提交到代码仓库,永不硬编码在前端。
会。美国销售税率可能随州/县/市立法调整。建议定期刷新缓存,关键场景(结账)实时查询。
免费版提供每月 100 次免费查询与基础 CLI;Pro 版扩展批量查询、本地缓存、税务合规报告、企业级 API 集成与优先支持。
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| curl | 系统工具 | 必需 | 系统预装 |
| zip-tax.com API | 外部 API | 必需 | 官网注册并获取 API Key |
| jq(JSON 解析) | 系统工具 | 可选 | 系统包管理器 |
| LLM API | API | 必需 | 由 Agent 内置 LLM 提供 |
ZIPTAX_API_KEY 配置| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| 配置错误 | 参数缺失或格式错误 | 检查依赖说明中的配置要求 |
| 运行时错误 | 运行环境不满足 | 确认运行环境符合依赖说明 |
| 网络错误 | 连接超时或不可达 | 执行ping命令测试网络连通性,检查防火墙和代理设置连接后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令,参考国内替代方案 |
{
"success": true,
"data": {
"result": "销售税查询(免费版)处理结果",
"execution_time": "0.5s",
"metadata": {
"version": "1.0",
"processor": "ziptax"
}
},
"execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
"error": null
}