newegg-shell-shocker
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseNewegg Shell Shocker
Newegg Shell Shocker
Query Newegg Shell Shocker daily and next-day flash deal products.
查询Newegg Shell Shocker每日及次日的闪购产品。
Agent execution rules (read first)
Agent执行规则(请先阅读)
- Do not call for this task. The data source (one public JSON-RPC call, no auth) and the output format (Markdown tables below) are fully specified — this is not
ask_clarification,missing_info, orambiguous_requirement.approach_choice - Immediately after loading this skill, use the tool to run curl. Do not ask the user how to fetch data or which output format they prefer.
bash - Required header on every request: all calls to must carry
apis.newegg.com/ex-mcp/...in addition tox-skill: newegg-shell-shocker. It identifies the calling skill to the endpoint — include it even when you assemble a request by hand rather than copying the example below.Content-Type - Run exactly:
bash
curl -sS -X POST "https://apis.newegg.com/ex-mcp/endpoint/website-www-tool" \
-H "Content-Type: application/json" \
-H "x-skill: newegg-shell-shocker" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getapi_home_v2_shellshocker_page","arguments":{"CountryCode":"USA","CompanyCode":1003}}}'- Unwrap the response before reading it (see Response Structure), then build the tables in Response Format. If curl fails (non-zero exit), the envelope carries ,
erroris true, or the body is not valid JSON, report the error in your reply — still without asking the user to choose a fetch method.result.isError
- 请勿为此任务调用。数据源(一个公开的JSON-RPC调用,无需认证)和输出格式(下方的Markdown表格)已完全指定——这不属于
ask_clarification、missing_info或ambiguous_requirement情况。approach_choice - 加载此技能后立即使用**工具**运行curl命令。请勿询问用户如何获取数据或偏好哪种输出格式。
bash - 每个请求必须包含的请求头:所有对的调用,除了
apis.newegg.com/ex-mcp/...外,还必须携带Content-Type。它用于向端点标识调用的技能——即使你手动组装请求而非复制下方示例,也需包含此头。x-skill: newegg-shell-shocker - 严格运行以下命令:
bash
curl -sS -X POST "https://apis.newegg.com/ex-mcp/endpoint/website-www-tool" \
-H "Content-Type: application/json" \
-H "x-skill: newegg-shell-shocker" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getapi_home_v2_shellshocker_page","arguments":{"CountryCode":"USA","CompanyCode":1003}}}'- 读取响应前先解析外层结构(参见响应结构),然后按照响应格式构建表格。如果curl执行失败(非零退出码)、响应包包含、
error为true或响应体不是有效的JSON,需在回复中报告错误——但仍请勿询问用户选择获取数据的方式。result.isError
Trigger Scenarios
触发场景
- User asks "What's on Shell Shocker"
- User asks "Today's flash deals" / "Newegg flash deals"
- User searches for Shell Shocker prices of specific products
- User requests to view Newegg limited-time special list
- 用户询问“What's on Shell Shocker”(Shell Shocker有什么商品)
- 用户询问“Today's flash deals”(今日闪购)/“Newegg flash deals”(Newegg闪购)
- 用户搜索特定产品的Shell Shocker价格
- 用户请求查看Newegg限时特惠列表
API
API信息
- Method: POST (JSON-RPC )
tools/call - Endpoint:
https://apis.newegg.com/ex-mcp/endpoint/website-www-tool - Tool name:
getapi_home_v2_shellshocker_page - Arguments: (
CountryCode) andUSA(CompanyCode) are both required;1003is optionalpriceTypes - Auth: none — no API key, no MCP client registration, no handshake
- 请求方法:POST(JSON-RPC )
tools/call - 端点:
https://apis.newegg.com/ex-mcp/endpoint/website-www-tool - 工具名称:
getapi_home_v2_shellshocker_page - 参数:(值为
CountryCode)和USA(值为CompanyCode)为必填项;1003为可选参数priceTypes - 认证:无需认证——不需要API密钥、MCP客户端注册或握手
Response Structure
响应结构
Unwrap first. The payload sits at as a JSON string, and decoding it
can yield another JSON string before you reach the object. Keep decoding until you have a dict with
— do not assume a single is enough. carries the
same object when present and is the shortcut.
result.content[0].textTodayItemsjson.loadsresult.structuredContentAfter unwrapping, the root object contains:
- (array) - Today's flash deal items
TodayItems - (array) - Tomorrow's flash deal items
TomorrowItems
Each item element contains an object, from which to extract:
ItemBase| Field | Path | Description |
|---|---|---|
| Item Number | | e.g., |
| Item Title | | Full item name |
| Original Price | | Original price (USD) |
| Flash Deal Price | | Final price (USD) |
| Image Filename | | e.g., |
| Promotion Info | | e.g., free gifts, additional discounts, etc. |
Image URL Construction:
https://c1.neweggimages.com/ProductImageCompressAll/{ImageName}例如:
https://c1.neweggimages.com/ProductImageCompressAll/32-508-055-V01.jpgProduct Link Construction:
https://www.newegg.com/p/{Item}例如:
https://www.newegg.com/p/32-508-055先解析外层结构。有效载荷位于,是一个JSON字符串,解码后可能仍是JSON字符串,需持续解码直到得到包含的字典——不要假设一次就能完成。(若存在)包含相同的对象,是快捷获取方式。
result.content[0].textTodayItemsjson.loadsresult.structuredContent解析外层结构后,根对象包含:
- (数组)- 今日闪购商品
TodayItems - (数组)- 次日闪购商品
TomorrowItems
每个商品元素包含对象,需从中提取以下字段:
ItemBase| 字段 | 路径 | 描述 |
|---|---|---|
| 商品编号 | | 示例: |
| 商品标题 | | 完整商品名称 |
| 原价 | | 原价(美元) |
| 闪购价 | | 最终价格(美元) |
| 图片文件名 | | 示例: |
| 促销信息 | | 示例:赠品、额外折扣等 |
图片URL构建规则:
https://c1.neweggimages.com/ProductImageCompressAll/{ImageName}例如:
https://c1.neweggimages.com/ProductImageCompressAll/32-508-055-V01.jpg商品链接构建规则:
https://www.newegg.com/p/{Item}例如:
https://www.newegg.com/p/32-508-055Execution Flow
执行流程
- Call the API with using the curl command in Agent execution rules (no other tool for the HTTP request).
bash - Parse JSON, iterate through and
TodayItemsTomorrowItems - Skip rows where is
ItemBase(usually Combo rows)null - Extract fields and format the response per Response Format
- 使用**工具调用API,执行Agent执行规则**中的curl命令(HTTP请求不得使用其他工具)。
bash - 解析JSON,遍历和
TodayItemsTomorrowItems - 跳过为
ItemBase的行(通常是组合商品行)null - 提取字段并按照响应格式格式化响应内容
Response Format
响应格式
Return a clear product table containing:
undefined返回清晰的商品表格,格式如下:
undefinedToday's Flash Deals (TodayItems)
今日闪购(TodayItems)
| Item Number | Product Name | Original Price | Flash Deal Price | Image |
|---|---|---|---|---|
| 32-508-055 | adidas $50 Gift Card | $50 | $50 | Image |
| ... | ... | ... | ... | ... |
| 商品编号 | 商品名称 | 原价 | 闪购价 | 图片 |
|---|---|---|---|---|
| 32-508-055 | adidas $50 Gift Card | $50 | $50 | 图片 |
| ... | ... | ... | ... | ... |
Tomorrow's Flash Deals (TomorrowItems)
次日闪购(TomorrowItems)
| Item Number | Product Name | Original Price | Flash Deal Price | Image |
|---|---|---|---|---|
| ... | ... | ... | ... | ... |
**If promotion information exists**, display below the product name:🎁 Promotion: Free $15 Adidas eGift Card w/ purchase
undefined| 商品编号 | 商品名称 | 原价 | 闪购价 | 图片 |
|---|---|---|---|---|
| ... | ... | ... | ... | ... |
**若存在促销信息**,在商品名称下方展示:🎁 促销信息:购买即赠15美元Adidas电子礼品卡
undefinedEdge Cases
边缘情况处理
- Empty Data: If or
TodayItemsis empty or doesn't exist, clearly inform the userTomorrowItems - Combo Rows: Skip rows that only have unless the user specifically requests combo details
ComboBase - HTTP Errors: Report status code and error message
- Invalid JSON: Briefly report parsing failure
- 数据为空:如果或
TodayItems为空或不存在,需明确告知用户TomorrowItems - 组合商品行:跳过仅包含的行,除非用户明确请求组合商品详情
ComboBase - HTTP错误:报告状态码和错误信息
- 无效JSON:简要报告解析失败
Example Request
请求示例
bash
curl -sS -X POST "https://apis.newegg.com/ex-mcp/endpoint/website-www-tool" \
-H "Content-Type: application/json" \
-H "x-skill: newegg-shell-shocker" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getapi_home_v2_shellshocker_page","arguments":{"CountryCode":"USA","CompanyCode":1003}}}'( keeps output clean but still surfaces curl errors.) On Windows use explicitly —
plain in PowerShell is the alias and does not understand .
-sScurl.execurlInvoke-WebRequest-dPiping through to unwrap and keep the output small:
jqbash
curl -sS -X POST "https://apis.newegg.com/ex-mcp/endpoint/website-www-tool" \
-H "Content-Type: application/json" \
-H "x-skill: newegg-shell-shocker" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getapi_home_v2_shellshocker_page","arguments":{"CountryCode":"USA","CompanyCode":1003}}}' \
| jq -r '.result.content[0].text' | jq -r 'if type=="string" then fromjson else . end' \
| jq '{today: [.TodayItems[]?.ItemBase | select(.) | {Item, Title: .Description.Title}], tomorrow: (.TomorrowItems|length)}'select(.)ItemBasenull{"Item":null,"Title":null}bash
curl -sS -X POST "https://apis.newegg.com/ex-mcp/endpoint/website-www-tool" \
-H "Content-Type: application/json" \
-H "x-skill: newegg-shell-shocker" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getapi_home_v2_shellshocker_page","arguments":{"CountryCode":"USA","CompanyCode":1003}}}'(参数可保持输出整洁,但仍会显示curl错误。)在Windows系统中需明确使用——PowerShell中的是的别名,不支持参数。
-sScurl.execurlInvoke-WebRequest-d通过管道结合工具解析外层结构并精简输出:
jqbash
curl -sS -X POST "https://apis.newegg.com/ex-mcp/endpoint/website-www-tool" \
-H "Content-Type: application/json" \
-H "x-skill: newegg-shell-shocker" \
-H "Accept: application/json, text/event-stream" \
-d '{"jsonrpc":"2.0","id":1,"method":"tools/call","params":{"name":"getapi_home_v2_shellshocker_page","arguments":{"CountryCode":"USA","CompanyCode":1003}}}' \
| jq -r '.result.content[0].text' | jq -r 'if type=="string" then fromjson else . end' \
| jq '{today: [.TodayItems[]?.ItemBase | select(.) | {Item, Title: .Description.Title}], tomorrow: (.TomorrowItems|length)}'select(.)ItemBasenull{"Item":null,"Title":null}Notes
注意事项
- This endpoint requires no authentication
- Returned data is in English; product names can be translated if needed
- Prices are in USD
- Image URLs support multiple sizes; default to path
ProductImageCompressAll
- 此端点无需认证
- 返回数据为英文;若需要可翻译商品名称
- 价格单位为美元
- 图片URL支持多种尺寸;默认使用路径
ProductImageCompressAll