Undeclared Tool Scope
- Category
- MCP Least Privilege
- Confidence
- 70% confidence
- Finding
Without declared permissions the skill's intent is opaque and cannot be validated.
- Content
Security audit
Security checks for vulnerabilities and agentic risk
This skill is a straightforward ClawEC API helper that sends user-supplied Ozon product IDs to ClawEC to retrieve keyword metrics.
Install only if you are comfortable sending Ozon product IDs, keyword filters, and an authenticated ClawEC API request to ClawEC. Store CLAWEC_API_KEY as a secret environment variable, avoid sharing logs that include commands or headers, and review ClawEC's handling of business data before using it with sensitive product research.
Without declared permissions the skill's intent is opaque and cannot be validated.
The skill instructs sending product IDs and an API bearer token to an external third-party service, which is a real data transmission boundary. While expected for an API-integration skill, it still creates confidentiality and supply-chain risk because user-supplied business data and credentials leave the local environment and are exposed to the vendor's handling, logging, and retention practices.
curl -s -X POST "https://www.clawec.com/api/aigc/ec/ozon/data/product/traffic-keywords" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $CLAWEC_API_KEY" \
-d '{"itemIds":"123456789","keywordType":"ALL","pageNo":1,"pageSize":15,"sortField":"SEARCH_INDEX","sortDirection":"DESC"}'
This markdown file contains user-facing natural-language content only in Chinese, including headings, field descriptions, and parsing guidance. Under the stated policy, forcing a specific language without user opt-in can be a locale-policy violation unless the constraint is clearly documented and justified.
The usage string is presented only in Chinese, which imposes a specific language on users without opt-in. The policy requires language or locale constraints to be optional or clearly justified, and no such choice or justification appears in the file.
The environment-variable error message is hardcoded in Chinese only, which is a natural-language locale restriction without user choice. No documented regional or compliance reason is provided for this constraint.
The script emits validation failures in Chinese only for empty and oversized item ID input. This is a language policy issue because the file enforces a specific language without opt-in or stated justification.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
print(json.dumps(body, ensure_ascii=False))
' "$ITEM_IDS" "$KEYWORD_TYPE" "$PAGE_NO" "$PAGE_SIZE" "$SORT_FIELD" "$SORT_DIRECTION" "$KEYWORD")
curl -s -X POST "https://www.clawec.com/api/aigc/ec/ozon/data/product/traffic-keywords" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $API_KEY" \
-d "$PAYLOAD"
This shell script performs an HTTP POST to an external API using a bearer token from an environment variable, but there is no confirmation prompt, print/log message, or comment/docstring disclosing that data will be transmitted off-host. For code files, outbound network transmission of user/system data should have some visible user disclosure unless clearly surfaced elsewhere.
The instructions state '输出中文流量词解读与选词建议' and '默认中文报告', which impose a specific language/locale behavior in the skill's natural-language guidance. The policy allows language constraints only when the user is given a choice or the constraint is clearly justified as region-specific, which is not stated here.
The script reads a bearer token from the sensitive environment variable CLAWEC_API_KEY and uses it for authentication, but there is no explanatory comment or user-facing notice about credential use or handling. The existing error text only tells the user to set the variable and does not function as a warning about sensitive credential access.