接口说明
通过 MCP API 你可以查询归类实例、税号编码、统一搜索结果和编码详情。下方提供快速开始与接口级说明。
标准 MCP 端点(推荐)
- 端点地址:
POST https://www.hsciq.com/mcp/rpc,遵循标准 Model Context Protocol(Streamable HTTP,Stateless,JSON-RPC 2.0)。 - 鉴权方式与 REST 端点相同:
X-API-Key请求头,或Authorization: Bearer <key>。 - 共提供 15 个工具:其中 9 个(search_instance / search_code / search_unified / get_code_detail / create_guilei_form / get_guilei_form / list_my_guilei_forms / add_guilei_dialog_message / list_guilei_categories)与 REST 端点完全相同,参数与返回结构一致;另有 3 个海关公告工具(search_gonggao / get_gonggao_detail / get_gonggao_by_code)与 3 个船公司公告工具(list_ocean_carriers / search_ocean_carrier_notice / get_ocean_carrier_notice_detail)仅标准 MCP 端点提供。
- 错误语义差异:REST 端点超限/失败返回 HTTP 429/400;标准 MCP 端点按协议返回 HTTP 200,结果中
isError=true,错误文本以错误码开头(如daily_quota_exceeded: 每日调用次数已达上限(150次))。 - 下方 REST 端点继续可用;新接入建议使用标准 MCP 端点。
客户端配置示例(Claude Code / Cursor 等 mcp.json)
{
"mcpServers": {
"hsciq": {
"type": "http",
"url": "https://www.hsciq.com/mcp/rpc",
"headers": { "X-API-Key": "your_api_key" }
}
}
}
curl 调用示例(Stateless 模式无需握手,逐条独立 POST)
curl -X POST "https://www.hsciq.com/mcp/rpc" ^
-H "Content-Type: application/json" ^
-H "Accept: application/json, text/event-stream" ^
-H "X-API-Key: your_api_key" ^
-d "{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"tools/list\",\"params\":{}}"
curl -X POST "https://www.hsciq.com/mcp/rpc" ^
-H "Content-Type: application/json" ^
-H "Accept: application/json, text/event-stream" ^
-H "X-API-Key: your_api_key" ^
-d "{\"jsonrpc\":\"2.0\",\"id\":2,\"method\":\"tools/call\",\"params\":{\"name\":\"search_code\",\"arguments\":{\"keywords\":\"自行车\",\"country\":\"CN\"}}}"
接入说明
- 本站提供两种接入方式:标准 MCP 端点
POST /mcp/rpc(推荐),以及旧版 REST 端点(已废弃,仅兼容存量调用,见页面底部)。 - 基础地址按站点域名拼接,所有请求使用 HTTPS。
- 地址完整性示例:
https://www.hsciq.com/mcp/rpc(正确),不要写成https://www.hsciq.com/MCP/mcp/rpc。 - 标准 MCP 端点共提供 15 个工具,其中 9 个与 REST 端点完全相同(见下方"工具说明"),3 个海关公告工具与 3 个船公司公告工具仅标准 MCP 端点提供。
- 分页类工具统一返回
pageIndex/pageSize/totalPageCount/totalItemCount/isPreviousPage/isNextPage/items。
鉴权方式
X-API-Key: your_api_key
ClawHub 技能安装
- 技能页面:
https://clawhub.ai/toucao/skills/hsciq-mcp
方式 1:命令行安装
openclaw skills install @toucao/hsciq-mcp
方式 2:网页安装
访问技能页点击 Install。
本地 CLI(stdio)安装
- 适用场景:AI 客户端仅支持 stdio 本地进程接入时,使用本 CLI 作为本地桥接(内部仍走上方
/mcp/rpc端点,认证与配额完全一致)。客户端支持 HTTP 直连时建议直接使用标准端点。 - 下载地址、配置示例与安装说明已迁移至独立页面:CLI 下载。
search_instance 参数与返回值说明
keywords 为商品名称关键词,如"自行车"、"塑料软管"、"手机壳"等具体商品名,不要使用描述性长句或短语。items 类型:
MCPInstanceItem[](轻量模型,检索分词与排序打分等内部字段不下发)请求参数
| 参数 | 类型 | 说明 |
|---|---|---|
keywords | string | 商品名称关键词 |
country | string | 国家代码:CN / JP / US / EU / VN / MY / BR / MX / ID / CA(默认 CN) |
pageIndex | int | 页码,从 1 开始(默认 1) |
pageSize | int | 每页条数(默认 10,最大 200) |
filterFailureCode | bool | 是否过滤无效编码(默认 true) |
chapter | string? | 章号(可选,限定到具体章) |
分页外层与 items 字段
| 字段 | 类型 | 说明 |
|---|---|---|
pageIndex | int | 当前页 |
pageSize | int | 每页条数 |
totalPageCount | int | 总页数 |
totalItemCount | int | 总条数 |
isPreviousPage | bool | 是否有上一页 |
isNextPage | bool | 是否有下一页 |
items[].instanceName | string | 实例名(纯文本) |
items[].instanceEnName | string? | 实例英文名 |
items[].count | int | 关联编码数 |
items[].codes | array | 关联 HS 编码列表(原类目树扁平化去重,最多 10 个) |
items[].codes[].code | string | HS 编码 |
items[].codes[].name | string | 编码名称 |
search_code 返回参数字段说明
items 类型:
MCPCodeSearchItem[](轻量模型,10 国统一结构;完整税率表与协定税率请用 get_code_detail 获取)请求参数
| 参数 | 类型 | 说明 |
|---|---|---|
keywords | string | 检索关键词 |
country | string | 国家代码:CN / JP / US / EU / VN / MY / BR / MX / ID / CA(默认 CN) |
pageIndex | int | 页码,从 1 开始(默认 1) |
pageSize | int | 每页条数(默认 10,最大 200) |
filterFailureCode | bool | 是否过滤无效编码(默认 true) |
analyzer | string? | 分词器(可选,仅 CN 生效) |
分页外层字段
| 字段 | 类型 | 说明 |
|---|---|---|
pageIndex | int | 当前页 |
pageSize | int | 每页条数 |
totalPageCount | int | 总页数 |
totalItemCount | int | 总条数 |
isPreviousPage | bool | 是否有上一页 |
isNextPage | bool | 是否有下一页 |
items | array | 结果列表,具体项类型取决于 country |
items 字段(10 国通用)
| 字段 | 类型 | 说明 |
|---|---|---|
code | string | 海关编码 |
name | string | 商品名称 |
unit1 | string? | 法定第一计量单位 |
unit2 | string? | 法定第二计量单位 |
categoryName | string? | 部类名称 |
twoCode | string? | 章(2位编码) |
twoCodeName | string? | 章名称 |
fourCode | string? | 品目(4位编码) |
fourCodeName | string? | 品目名称 |
sixCode | string? | 子目(6位编码) |
sixCodeName | string? | 子目名称 |
taxes | object? | 关键税率字典(键按国别,见下表;无税率的键不出现) |
status | int | 状态:1=有效 2=删除 3=停用 |
createTime | datetime | 编码创建时间 |
updateTime | datetime | 编码更新时间 |
taxes 键说明(按 country)
| country | 键 | 说明 |
|---|---|---|
| CN | preferentialImport | 最惠国税率 |
vat | 增值税率 | |
exportTaxRebates | 出口退税税率 | |
consumption | 消费税率 | |
| US | generalRateOfDuty | 一般税率 |
specialRateOfDuty | 特别税率 | |
column2RateOfDuty | 第二栏税率 | |
| JP | general | 基本税率 |
temporary | 暂定税率 | |
wto | WTO 协定税率 | |
gsp | 特惠税率 | |
| EU | preferentialImport | 最惠国进口税率(第三国协定税率) |
provisionalImport | 进口暂定税率(自主暂停) | |
export | 出口税率 | |
| VN | preferentialImport | 优惠进口税率(MFN) |
importedOrdinary | 普通进口税率 | |
export | 出口税率 | |
vat | 增值税率 | |
consumption | 特别消费税率 | |
| MY | preferentialImport | 进口税率(MFN) |
export | 出口税率 | |
sst | SST 销售税 | |
excise | EXCISE 消费税 | |
| BR / MX / ID / CA | search_code 不下发轻量税率摘要(数据存于纵表,需经 get_code_detail 加载) | |
search_unified 返回参数字段说明
items 类型:
MCPCiqItem[] / MCPHazardousItem[] / MCPPortItem[](轻量模型,检索分词等内部字段不下发)分页外层字段
| 字段 | 类型 | 说明 |
|---|---|---|
pageIndex | int | 当前页 |
pageSize | int | 每页条数 |
totalPageCount | int | 总页数 |
totalItemCount | int | 总条数 |
isPreviousPage | bool | 是否有上一页 |
isNextPage | bool | 是否有下一页 |
items | array | 结果列表,具体项类型取决于 unifiedType |
当 unifiedType=ciq(MCPCiqItem)
| 字段 | 类型 | 说明 |
|---|---|---|
code | string | CIQ 代码 |
name | string | CIQ 名称 |
number | string? | 监管条件编号 |
当 unifiedType=hazardous(MCPHazardousItem)
| 字段 | 类型 | 说明 |
|---|---|---|
name | string | 危化品名称 |
alias | string? | 别名 |
cas | string? | CAS 号 |
hsCode | string? | 对应 HS 编码 |
remarks | string? | 备注 |
当 unifiedType=port(MCPPortItem)
| 字段 | 类型 | 说明 |
|---|---|---|
code | string | 港口代码(纯文本) |
cName | string? | 港口中文名(纯文本) |
eName | string? | 港口英文名(纯文本) |
countryName | string? | 所属国家名 |
shippingLineName | string? | 航线名 |
get_code_detail 参数与返回字段说明
请求参数
| 参数 | 类型 | 说明 |
|---|---|---|
code | string | 海关编码,需为完整申报编码(纯数字):CN 10 位、JP 9 位、US/EU/CA 10 位、BR/MX/ID 8 位、VN 7~8 位、MY 8~10 位;可带点分隔符(如 8471.30.0000),服务端自动去除。位数不足或超长会返回错误并在错误消息中提示处理方式;不确定完整编码时请先用 search_code 按商品名称检索 |
country | string | 国家代码:CN / JP / US / EU / VN / MY / BR / MX / ID / CA(默认 CN) |
返回对象类型:
MCPCodeDetailResult(非分页)顶层字段
| 字段 | 类型 | 说明 |
|---|---|---|
Country | string | 国家:CN / JP / US / EU / VN / MY / BR / MX / ID / CA |
Code | string | 海关编码 |
Name | string | 编码名称 |
Status | int | 状态值 |
UpdateTime | datetime? | 更新时间 |
Unit1 | string? | 法定第一计量单位 |
Unit2 | string? | 法定第二计量单位 |
UnitOfMeasure | string? | 计量单位描述 |
Remark | string? | 备注 |
Taxes | Dictionary<string,string> | 税率键值映射 |
Extensions | object | 分国家扩展对象 |
Taxes 常见键
| 国家 | 键名示例 | 说明 |
|---|---|---|
| CN | mfnImportRate、generalImportRate、vatRate、exportTaxRebateRate、specialGoodsMark | 中国税率键 |
| JP | general、temporary、wto、rcepChina | 日本税率键 |
| US | generalRateOfDuty、specialRateOfDuty、column2RateOfDuty | 美国税率键 |
| EU | preferentialImport、provisionalImport、export、importedOrdinary、vat、consumption | 欧盟编码级税率键 |
| VN | preferentialImport、importedOrdinary、export、vat、consumption | 越南税率键 |
| MY | preferentialImport、export、sst、excise | 马来西亚税率键 |
| BR / MX / ID / CA | 无顶层 Taxes 键,税费数据存于 Extensions.{Br|Mx|Id|Ca}.AdditionalTaxes(ID/CA 另有 AgreementRates) | |
Extensions.Cn
| 字段 | 类型 | 说明 |
|---|---|---|
Reporting | array | 申报要素列表(MCPCodeItem) |
Regulatory | Dictionary<string,string> | 监管条件映射 |
Inspect | Dictionary<string,string> | 检验检疫映射 |
RegulatoryCodes | array | 禁限管制识别码列表(MCPRegulatoryCodeItem) |
Ciqs | array | CIQ列表(MCPCodeItem) |
HSMap | array | 税号注释映射(MCPCodeItem) |
ExportRebateCodes | array | 出口退税码列表(MCPExportRebateCodeItem) |
Ct | Dictionary<string,string> | 协定税率映射 |
Rcep | Dictionary<string,string> | RCEP税率映射 |
Extensions.Jp
| 字段 | 类型 | 说明 |
|---|---|---|
AgreementRates | Dictionary<string,string> | 日本协定税率映射 |
Extensions.Us
| 字段 | 类型 | 说明 |
|---|---|---|
QuotaQuantity | string? | 配额数量 |
AdditionalDuties | string? | 附加税说明 |
Extensions.Eu
| 字段 | 类型 | 说明 |
|---|---|---|
AgreementRates | Dictionary<string,string> | 协定税率映射(键为国家/地区中文名,如 瑞士/日本/加拿大/智利 等) |
GspRates | Dictionary<string,string> | GSP 受惠国税率映射 |
GspPlusRates | Dictionary<string,string> | GSP+ 受惠国税率映射 |
EbaRates | Dictionary<string,string> | EBA(最不发达国家)税率映射 |
VatRates | Dictionary<string,string> | 27 个欧盟成员国 VAT 税率映射(键为国家中文名) |
ExciseCategory | string? | 消费税类别(无/酒精/烟草/能源) |
VatCategory | string? | 增值税商品类别(食品/药品/书籍/其他) |
Law | string? | 法律依据 |
StartDate | datetime? | 措施开始日期 |
EndDate | datetime? | 措施结束日期 |
AntiDumpings | array | 反倾销反补贴措施列表(MCPCodeItem,Key=国家|措施类型,Value=税率/法律依据/起止日期) |
TariffQuotas | array | 关税配额列表(MCPCodeItem,Key=配额号|国家) |
ExportMeasures | array | 出口措施列表(MCPCodeItem,Key=目的地|措施类型) |
Extensions.Vn
| 字段 | 类型 | 说明 |
|---|---|---|
AgreementRates | Dictionary<string,string> | 协定税率映射(键含 中国/日本(AJCEP/VJEPA)/韩国(AKFTA/VKFTA)/CPTPP 各成员 等) |
RcepRates | Dictionary<string,string> | RCEP 协定税率映射(14 个成员) |
VatRates | Dictionary<string,string> | VAT 及 VAT 减免说明 |
FtaRates | array | FTA 逐年税率(MCPFtaRateItem:Agreement=协议代码,Country=期间标签,Rate=税率) |
ExportTaxes | array | 出口税率(MCPFtaRateItem:普通/CPTPP/EVFTA/UKVFTA 等) |
ExciseDuties | array | 特别消费税(MCPCodeItem) |
VatNote | string? | VAT 减免提示(PL1/PL2 不减免理由) |
EnvironmentTax | string? | 环保税提示 |
Policy | string? | 商品政策(检验检疫/许可证/反倾销等监管要求) |
EnName | string? | 英文商品描述 |
MappedHS | string? | 对应标准 HS 编码(仅 98 章 SEN 编码行) |
Extensions.My
| 字段 | 类型 | 说明 |
|---|---|---|
Trq | string? | TRQ 关税配额(如 In: 20% Out: 50%) |
Sst | string? | SST 销售税 |
Excise | string? | EXCISE 消费税 |
Cess1 / Cess2 / Cess3 | string? | CESS 附加税 1-3 |
ImportPermit | string? | 进口许可 |
ExportPermit | string? | 出口许可 |
FtaRates | array | 16 张 FTA 协定税率聚合(MCPFtaRateItem:Agreement=ACFTA/RCEP/CPTPP 等,Country=国家/地区,Rate=当年税率) |
FtaNotes | array | FTA 说明备注(MCPFtaRateItem,Rate 字段为说明文字) |
Extensions.Br / Extensions.Mx
| 字段 | 类型 | 说明 |
|---|---|---|
AdditionalTaxes | array | 附加税费列表(MCPAdditionalTaxItem:TaxType 税种 / Rate 税率 / Period 期间 / Remark 备注)。BR 含 II 进口税率(TEC) 与 II 进口税率(实际适用) 两档 |
Extensions.Id / Extensions.Ca
| 字段 | 类型 | 说明 |
|---|---|---|
AdditionalTaxes | array | 附加税费列表(MCPAdditionalTaxItem) |
AgreementRates | array | 协定税率列表(MCPAgreementRateItem:Agreement 协定代码 / Country 国家/地区 / Rate 税率 / Period 期间 / Remark 备注)。CA 含 UST/UKT/CPTPT/CPUKT/CEUT/GPT/LDCT/CCCT 等协定代码 |
明细对象
| 对象 | 字段 | 说明 |
|---|---|---|
MCPCodeItem | Key | 键值(代码/序号) |
MCPCodeItem | Value | 显示文本 |
MCPCodeItem | IsRequired | 是否必填 |
MCPRegulatoryCodeItem | Code | 禁限管制识别码 |
MCPRegulatoryCodeItem | Name | 管制名称 |
MCPRegulatoryCodeItem | Mofcomcode | 商务部代码 |
MCPRegulatoryCodeItem | Iemark | 进出口标记 |
MCPRegulatoryCodeItem | Reportingcategorycode | 申报类别代码 |
MCPRegulatoryCodeItem | ReportingElements | 申报要素列表(MCPReportingElementItem) |
MCPReportingElementItem | Elementname | 要素名称 |
MCPReportingElementItem | Elementorder | 排序 |
MCPExportRebateCodeItem | Id | 退税扩展码 |
MCPExportRebateCodeItem | Name | 退税名称 |
MCPExportRebateCodeItem | Rate | 退税率 |
create_guilei_form 参数与返回值说明
创建 HS 归类咨询单,AI 可直接提交产品信息和图片(base64 编码)。每人每天有独立配额限制。
请求示例(标准 MCP 端点)
curl -X POST "https://www.hsciq.com/mcp/rpc" ^
-H "Content-Type: application/json" ^
-H "Accept: application/json, text/event-stream" ^
-H "X-API-Key: your_api_key" ^
-d "{
""jsonrpc"": ""2.0"",
""id"": 1,
""method"": ""tools/call"",
""params"": {
""name"": ""create_guilei_form"",
""arguments"": {
""productNameCn"": ""智能手机壳"",
""productNameEn"": ""Smartphone Case"",
""uses"": ""手机保护套"",
""ingredients"": ""硅胶"",
""brand"": ""某品牌"",
""model"": ""X1"",
""images"": [
{
""fileName"": ""front.jpg"",
""data"": ""base64编码的图片数据""
}
]
}
}
}"
输入参数
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
productNameCn | string | 是 | 产品中文名称 |
productNameEn | string? | 否 | 产品英文名称 |
categoryId | int? | 否 | 行业分类 ID,通过 list_guilei_categories 获取可用列表 |
uses | string? | 否 | 产品用途 |
ingredients | string? | 否 | 产品成分/材质 |
cas | string? | 否 | CAS 号 |
brand | string? | 否 | 品牌 |
model | string? | 否 | 型号 |
otherProductInfo | string? | 否 | 其他产品信息 |
qq | string? | 否 | QQ 联系方式 |
weixin | string? | 否 | 微信联系方式 |
processingMethod | string? | 否 | 加工方法 |
dimensions | string? | 否 | 尺寸 |
applicableGender | string? | 否 | 适用性别 |
workingPrinciple | string? | 否 | 工作原理 |
function | string? | 否 | 功能 |
weavingProcess | string? | 否 | 织造工艺 |
material | string? | 否 | 材质 |
gramWeight | string? | 否 | 克重 |
width | string? | 否 | 宽度 |
endTime | string? | 否 | 截止时间(ISO 8601 格式) |
isPaid | bool? | 否 | 是否付费咨询 |
images | array? | 是 | 图片列表(至少1张),每项含 fileName(文件名)和 data(base64 数据) |
图片限制:至少 1 张,最多 3 张,每张 ≤ 1MB,支持 JPG / PNG / GIF / WebP 格式(通过文件头魔数校验,不依赖扩展名)。
成功返回示例
以下为工具返回的数据部分:标准 MCP 端点位于
result.structuredContent,旧版 REST 端点位于 data。{
"formId": "a1b2c3d4-...",
"url": "https://www.hsciq.com/GuiLei/a1b2c3d4-...",
"status": "已创建",
"imageCount": 1,
"imageUrls": [ "https://www.hsciq.com/uploads/guilei/..." ]
}
返回字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
formId | string | 创建的归类咨询单 GUID |
url | string | 咨询单的完整访问链接 |
status | string | 创建状态:已创建 |
imageCount | int | 成功上传的图片数量 |
imageUrls | string[] | 图片的公开访问 URL 列表 |
get_guilei_form 参数与返回值说明
获取归类咨询单详情,包含所有字段的讨论对话、归类结论等信息。AI 可借此获知专家在哪个字段上提出了问题。
请求示例(标准 MCP 端点)
curl -X POST "https://www.hsciq.com/mcp/rpc" ^
-H "Content-Type: application/json" ^
-H "Accept: application/json, text/event-stream" ^
-H "X-API-Key: your_api_key" ^
-d "{
""jsonrpc"": ""2.0"",
""id"": 1,
""method"": ""tools/call"",
""params"": {
""name"": ""get_guilei_form"",
""arguments"": {
""formId"": ""a1b2c3d4-...""
}
}
}"
输入参数
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
formId | string | 是 | 归类咨询单 GUID |
返回值说明
返回
GuiLeiFormDetail 对象,包含以下顶层字段:| 字段 | 类型 | 说明 |
|---|---|---|
form | object | 归类单基本信息,核心字段见下表 |
acl | array | 访问控制列表 |
dialogs | array | 字段讨论对话列表,每项含 fieldKey(字段名)、messages(消息列表) |
shares | array | 分享链接列表 |
finalization | object? | 归类结论(含 confirmedCode 和 classificationReason) |
finalizationHistory | array | 归类结论修改历史 |
Dialogs 消息结构
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | 对话 ID |
fieldKey | string | 关联的字段名(如 ProductNameCn、Ingredients) |
messages[].senderId | string | 消息发送者 ID |
messages[].content | string | 消息内容 |
messages[].createTime | datetime | 消息时间 |
messages[].messageType | int? | 消息类型 |
form 核心字段
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | 表单 GUID |
status | int | 状态:0=已关闭,1=进行中 |
productNameCn | string? | 产品中文名称 |
productNameEn | string? | 产品英文名称 |
categoryId | int? | 行业分类 ID |
categoryName | string? | 行业分类名称 |
uses | string? | 用途 |
ingredients | string? | 成分/材质 |
cas | string? | CAS 号 |
brand | string? | 品牌 |
model | string? | 型号 |
isPaid | bool | 是否付费咨询 |
isFinalized | bool | 是否已出归类结论 |
confirmedCode | string? | 最终确认的 HS 编码 |
isUnclassifiable | bool | 是否无法归类 |
source | string? | 来源(mcp 表示通过 API 创建) |
createTime | datetime | 创建时间 |
updateTime | datetime | 更新时间 |
list_my_guilei_forms 参数与返回值说明
分页列出当前 API Key 所属用户的所有归类咨询单。
请求示例(标准 MCP 端点)
curl -X POST "https://www.hsciq.com/mcp/rpc" ^
-H "Content-Type: application/json" ^
-H "Accept: application/json, text/event-stream" ^
-H "X-API-Key: your_api_key" ^
-d "{
""jsonrpc"": ""2.0"",
""id"": 1,
""method"": ""tools/call"",
""params"": {
""name"": ""list_my_guilei_forms"",
""arguments"": {
""pageIndex"": 1,
""pageSize"": 10
}
}
}"
输入参数
| 字段 | 类型 | 必填 | 默认 | 说明 |
|---|---|---|---|---|
pageIndex | int? | 否 | 1 | 页码 |
pageSize | int? | 否 | 10 | 每页条数,最大 100 |
成功返回示例
以下为工具返回的数据部分:标准 MCP 端点位于
result.structuredContent,旧版 REST 端点位于 data。{
"items": [
{
"id": "a1b2c3d4-...",
"productNameCn": "智能手机壳",
"status": 1,
"isFinalized": false,
"createTime": "2026-05-08T10:30:00"
}
],
"pageIndex": 1,
"pageSize": 10,
"totalItemCount": 3,
"totalPageCount": 1
}
返回字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
items | array | 表单列表,每项为 GuiLeiForm 对象 |
pageIndex | int | 当前页码 |
pageSize | int | 每页条数 |
totalItemCount | int | 总条数 |
totalPageCount | int | 总页数 |
items 中每个对象的字段参见上方 get_guilei_form 的「form 核心字段」表。
add_guilei_dialog_message 参数与返回值说明
在归类咨询单的某个字段上创建新对话,或回复已有的对话。AI 可用此工具代表用户回复专家的提问。
请求示例(创建新对话,标准 MCP 端点)
curl -X POST "https://www.hsciq.com/mcp/rpc" ^
-H "Content-Type: application/json" ^
-H "Accept: application/json, text/event-stream" ^
-H "X-API-Key: your_api_key" ^
-d "{
""jsonrpc"": ""2.0"",
""id"": 1,
""method"": ""tools/call"",
""params"": {
""name"": ""add_guilei_dialog_message"",
""arguments"": {
""formId"": ""a1b2c3d4-..."",
""fieldKey"": ""Ingredients"",
""content"": ""主要成分是聚乙烯,不含阻燃剂""
}
}
}"
请求示例(回复已有对话,仅示 arguments 部分)
"arguments": {
"formId": "a1b2c3d4-...",
"fieldKey": "Ingredients",
"content": "已确认,确实不含阻燃剂",
"dialogId": "d5e6f7a8-..."
}
输入参数
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
formId | string | 是 | 归类咨询单 GUID |
fieldKey | string | 是 | 字段名(如 ProductNameCn、Uses、Ingredients、Cas、Brand、Model、OtherProductInfo 等) |
content | string | 是 | 消息内容 |
dialogId | string? | 否 | 如提供则回复已有对话;否则创建新对话 |
messageType | int? | 否 | 消息类型,透传至后台 |
成功返回示例
以下为工具返回的数据部分:标准 MCP 端点位于
result.structuredContent,旧版 REST 端点位于 data。{
"dialogId": "d5e6f7a8-...",
"messageId": "b9c0d1e2-...",
"action": "reply"
}
返回字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
dialogId | string | 对话 ID |
messageId | string | 消息 ID |
action | string | 操作类型:created(新建对话)或 reply(回复已有对话) |
list_guilei_categories 参数与返回值说明
获取可用的行业分类列表,用于创建归类咨询单时选择
categoryId。请求示例(标准 MCP 端点)
curl -X POST "https://www.hsciq.com/mcp/rpc" ^
-H "Content-Type: application/json" ^
-H "Accept: application/json, text/event-stream" ^
-H "X-API-Key: your_api_key" ^
-d "{
""jsonrpc"": ""2.0"",
""id"": 1,
""method"": ""tools/call"",
""params"": {
""name"": ""list_guilei_categories"",
""arguments"": {}
}
}"
无需输入参数。
成功返回示例
以下为工具返回的数据部分:标准 MCP 端点位于
result.structuredContent,旧版 REST 端点位于 data。[
{ "id": 1, "name": "活动物;动物产品" },
{ "id": 2, "name": "植物产品" },
{ "id": 3, "name": "动、植物油脂" }
]
返回字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
id | int | 行业分类 ID,用于 create_guilei_form 的 categoryId 参数 |
name | string | 行业分类名称 |
search_gonggao 参数与返回值说明 仅标准 MCP 端点
检索海关公告(标题/文号/正文模糊匹配),
keywords 为空时返回按发布时间倒序的最新公告列表。可按发布日期范围过滤。海关公告为公开数据。请求参数
| 参数 | 类型 | 说明 |
|---|---|---|
country | string | 必填,国家代码:CN(US/JP 已预留未接入,海关公告目前仅 CN 有数据;US/JP 返回 country_not_supported) |
keywords | string? | 检索关键词,匹配标题/文号/正文;留空返回最新公告列表 |
pageIndex | int | 页码,从 1 开始(默认 1) |
pageSize | int | 每页条数(默认 10,最大 50) |
publishFrom | string? | 发布日期起(yyyy-MM-dd,含当日) |
publishTo | string? | 发布日期止(yyyy-MM-dd,含当日) |
分页外层字段
| 字段 | 类型 | 说明 |
|---|---|---|
pageIndex | int | 当前页 |
pageSize | int | 每页条数 |
totalPageCount | int | 总页数 |
totalItemCount | int | 总条数 |
items | array | 公告列表(注:公告工具组不返回 isPreviousPage/isNextPage) |
items 字段(公告对象;get_gonggao_detail / get_gonggao_by_code 中的 gonggao 字段结构相同)
| 字段 | 类型 | 说明 |
|---|---|---|
id | int | 公告 ID(作为 get_gonggao_detail 的 gonggaoId 参数) |
title | string | 公告标题 |
content | string | 公告正文(HTML;检索命中时可能为内容片段) |
from | string | 来源 |
documentNumber | string? | 文号 |
regulationsType | string? | 法规类型 |
publishTime | datetime? | 发布时间 |
effectiveTime | datetime? | 生效时间 |
potence | string? | 效力 |
documentIssuingAgency | string? | 发文机关 |
sourceUrl | string? | 原文链接(海关总署法规库) |
createTime | datetime | 入库创建时间 |
updateTime | datetime | 入库更新时间 |
get_gonggao_detail 参数与返回值说明 仅标准 MCP 端点
按 ID 查询海关公告详情,包含正文及 3 组关联编码(created 新建 / updated 修改 / deleted 删除)。
请求参数
| 参数 | 类型 | 说明 |
|---|---|---|
gonggaoId | int | 必填,公告 ID(search_gonggao 返回的 id) |
country | string | 必填,国家代码:CN(US/JP 已预留未接入,目前仅 CN 有数据) |
返回对象(非分页)。公告不存在或已下线时返回
not_found。顶层字段
| 字段 | 类型 | 说明 |
|---|---|---|
gonggao | object | 公告对象(字段同 search_gonggao 的 items 项) |
codeGroups | object | 关联编码 3 组(见下表) |
codeGroups 字段
| 字段 | 类型 | 说明 |
|---|---|---|
created | string[] | 新建编码(升序) |
updated | string[] | 修改编码 |
deleted | string[] | 删除编码 |
totalCount | int | 三组编码总数 |
get_gonggao_by_code 参数与返回值说明 仅标准 MCP 端点
按 HS 编码反查相关海关公告:返回关联该编码的公告列表,每项附
changeType(该编码在公告中的变更类型)。请求参数
| 参数 | 类型 | 说明 |
|---|---|---|
code | string | 必填,CN 10 位纯数字海关编码,可带点分隔符(如 8471.30.0000),服务端自动去除 |
country | string | 必填,国家代码:CN(US/JP 已预留未接入,目前仅 CN 有数据) |
pageIndex | int | 页码,从 1 开始(默认 1) |
pageSize | int | 每页条数(默认 10,最大 50) |
分页外层字段
| 字段 | 类型 | 说明 |
|---|---|---|
pageIndex | int | 当前页 |
pageSize | int | 每页条数 |
totalPageCount | int | 总页数 |
totalItemCount | int | 总条数 |
items | array | 结果列表(见下表) |
items 字段
| 字段 | 类型 | 说明 |
|---|---|---|
gonggao | object | 公告对象(字段同 search_gonggao 的 items 项) |
changeType | string | 该编码在该公告中的变更类型:create 新建 / update 修改 / delete 删除 |
list_ocean_carriers 参数与返回值说明 仅标准 MCP 端点
查询启用中的船公司清单(SCAC 代码/名称),返回的
code 可作为 search_ocean_carrier_notice 的 carrierCode 筛选参数。无请求参数。返回字段(数组,非分页)
| 字段 | 类型 | 说明 |
|---|---|---|
code | string? | 船公司缩写/SCAC 代码(如 MSC、MSK;无代码为 null) |
name | string | 船公司名称 |
search_ocean_carrier_notice 参数与返回值说明 仅标准 MCP 端点
检索船公司公告(仅匹配标题),
keywords 为空时返回按发布时间倒序的最新公告列表。仅返回最近 30 天内发布的公告(滚动窗口,服务端强制),公告为公开数据,一律返回原文。请求参数
| 参数 | 类型 | 说明 |
|---|---|---|
keywords | string? | 检索关键词,仅匹配公告标题;留空返回最新公告列表 |
carrierCode | string? | 船公司 SCAC 代码(如 MSC/MSK,不区分大小写;取值见 list_ocean_carriers 返回的 code),不存在时返回 invalid_params |
pageIndex | int | 页码,从 1 开始(默认 1) |
pageSize | int | 每页条数(默认 10,最大 50) |
分页外层字段
| 字段 | 类型 | 说明 |
|---|---|---|
pageIndex | int | 当前页 |
pageSize | int | 每页条数 |
totalPageCount | int | 总页数 |
totalItemCount | int | 总条数 |
items | array | 公告列表(注:公告工具组不返回 isPreviousPage/isNextPage) |
items 字段(公告对象;get_ocean_carrier_notice_detail 中的 notice 字段结构相同)
| 字段 | 类型 | 说明 |
|---|---|---|
id | string (guid) | 公告 ID(作为 get_ocean_carrier_notice_detail 的 noticeId 参数) |
carrierCode | string? | 船公司 SCAC 代码 |
carrierName | string? | 船公司名称 |
title | string | 公告标题(原文) |
content | string | 公告正文(HTML,原文) |
originalLanguage | string | 原文语言(zh-CN / en / ja / pt-BR / ru) |
publishTime | datetime | 发布时间 |
sourceUrl | string? | 原文链接 |
createTime | datetime | 入库创建时间 |
updateTime | datetime | 入库更新时间 |
get_ocean_carrier_notice_detail 参数与返回值说明 仅标准 MCP 端点
按 ID 查询船公司公告详情(含正文原文)。仅支持最近 30 天内发布的公告,公告不存在、已下线或超出范围时返回
not_found。请求参数
| 参数 | 类型 | 说明 |
|---|---|---|
noticeId | string (guid) | 必填,公告 ID(search_ocean_carrier_notice 返回的 id) |
顶层字段(非分页)
| 字段 | 类型 | 说明 |
|---|---|---|
notice | object | 公告对象(字段同 search_ocean_carrier_notice 的 items 项) |
错误码说明
401 类错误两个端点相同(HTTP 401)。400/429/500 类在旧版 REST 端点按下表 HTTP 状态码返回;在标准 MCP 端点按协议返回 HTTP 200,结果中
isError=true,错误文本以错误码开头(如 daily_quota_exceeded: 每日调用次数已达上限(150次))。| HTTP | error | 含义 |
|---|---|---|
| 401 | missing_api_key | 未提供 API key |
| 401 | invalid_api_key | API key 无效 |
| 401 | api_key_expired | API key 已过期 |
| 401 | api_key_revoked | API key 已撤销 |
| 400 | invalid_params | 参数不合法(如 productNameCn 为空、图片格式不支持等) |
| 400 | forbidden_keyword | 关键词触发拦截 |
| 400 | unknown_tool | 工具名称不支持 |
| 404 | not_found | 资源不存在或已下线(如公告 ID 不存在) |
| 400 | country_not_supported | 该国家暂未接入此数据(如海关公告目前仅 CN) |
| 429 | daily_quota_exceeded | 每日总调用次数已达上限 |
| 429 | daily_guilei_quota_exceeded | 每日创建归类咨询次数已达上限(默认5次) |
| 500 | internal_error | 服务器内部错误 |
以下 REST 接口已废弃,仅为兼容存量调用保留,不再更新;新接入请使用标准 MCP 端点
POST /mcp/rpc(见顶部"标准 MCP 端点(推荐)")。
GET /mcp 已废弃
返回服务元信息和工具入口地址。REST 接口统一返回 JSON,成功结构为
{ "ok": true, "toolName": "...", "data": ... }。{
"name": "HSCIQ2 MCP",
"version": "1.0",
"standardMCPEndpoint": "/mcp/rpc",
"toolsEndpoint": "/mcp/tools/list",
"callEndpoint": "/mcp/tools/call"
}
POST /mcp/tools/list 已废弃
返回可用工具与输入参数定义。
curl -X POST "https://www.hsciq.com/mcp/tools/list" ^
-H "Content-Type: application/json" ^
-H "X-API-Key: your_api_key"
{
"version": "1.0",
"tools": [
{ "name": "search_instance" },
{ "name": "search_code" },
{ "name": "search_unified" },
{ "name": "get_code_detail" },
{ "name": "create_guilei_form" },
{ "name": "get_guilei_form" },
{ "name": "list_my_guilei_forms" },
{ "name": "add_guilei_dialog_message" },
{ "name": "list_guilei_categories" }
]
}
POST /mcp/tools/call(search_instance / search_code / search_unified) 已废弃
前三个工具都通过该入口调用,返回统一分页结构。
curl -X POST "https://www.hsciq.com/mcp/tools/call" ^
-H "Content-Type: application/json" ^
-H "X-API-Key: your_api_key" ^
-d "{
""toolName"": ""search_code"",
""arguments"": {
""keywords"": ""塑料软管"",
""country"": ""CN"",
""pageIndex"": 1,
""pageSize"": 10,
""filterFailureCode"": true
}
}"
- 分页外层字段:
pageIndex、pageSize、totalPageCount、totalItemCount、isPreviousPage、isNextPage、items。 items类型:search_instance → MCPInstanceItem[],search_code → MCPCodeSearchItem[],search_unified → MCPCiqItem[]/MCPHazardousItem[]/MCPPortItem[]。
POST /mcp/tools/call(get_code_detail) 已废弃
按国家+编码返回非分页详情对象。
{
"toolName": "get_code_detail",
"arguments": {
"country": "CN",
"code": "3926909090"
}
}
详细返回字段见上方
get_code_detail 工具章节。