Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

jy-wealth-investment-analysis

v1.0.0

专业的银行理财产品分析报告生成工具。使用 mcporter 调用恒生聚源服务获取理财产品数据,按照标准化模板撰写包含产品概览、业绩表现、风险特征、资产配置、市场舆情、投资建议的完整分析报告。当用户需要分析银行理财产品、生成理财报告、评估产品投资价值、查询理财产品业绩、对比多个理财产品时触发。Professiona...

0· 24·0 current·0 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Suspicious
medium confidence
Purpose & Capability
The skill's name/description (bank wealth product analysis using mcporter + 恒生聚源 data) aligns with the runtime instructions to call mcporter endpoints. However, included files (Python PDF conversion scripts) and sample reports introduce capabilities (local Markdown→PDF conversion) that the declared requirements do not cover: the install spec only installs an npm 'mcporter' package and the declared required binaries are node/npm/mcporter, but the code includes Python scripts that require Python and Python packages (weasyprint, markdown) which are not declared.
!
Instruction Scope
SKILL.md instructs the agent to check and configure mcporter and to add MCP service URLs embedding the token in the URL query parameter (mcporter config add ...?token=你的 JY_API_KEY). Embedding tokens in URLs is insecure (can be leaked via command history, logs). The skill also instructs editing OpenClaw agent config to enable mcporter and setting MCPORTER_CONFIG — this touches agent configuration (normal for enabling a required tool) but should be done consciously. The skill references creating cron jobs for periodic updates but gives no safe instructions for doing so. Several report files also contain references to different service names (gildata_datamap-api vs jy-financedata-api), a minor inconsistency.
Install Mechanism
Install spec: single node install of package 'mcporter' via npm. That is an expected way to install an mcporter CLI; however the package's provenance isn't shown here (npm package name only). The skill ships Python scripts and expects Python packages (weasyprint, markdown) but provides no install spec for them. The mismatch (node-only install vs included Python code) is an install/operational incoherence to be aware of.
!
Credentials
The skill declares no required env vars or primary credential, but runtime instructions require a JY_API_KEY (obtained separately) and show adding it directly into mcporter URLs. The skill also instructs adding MCPORTER_CONFIG into OpenClaw config. Asking users to embed an API token in service URLs (query param) is disproportionate and risky compared to common patterns (env var or config file with restricted permissions). No other unrelated credentials are requested.
Persistence & Privilege
The skill does not request 'always: true' and uses normal autonomous invocation defaults. It asks users to enable mcporter in OpenClaw config which modifies agent config to add a tool — that is typical for requiring a local CLI. There is nothing that forces permanent elevated privileges across the platform.
What to consider before installing
This skill largely does what it says (calls mcporter to fetch gildata/Hengsheng聚源 data and formats a report), but several red flags deserve attention before installing: - Missing Python dependency declarations: the repo includes Python scripts (convert_to_pdf*.py) that use weasyprint and markdown, yet the install spec only installs an npm package. If you plan to use PDF conversion, you need Python and the appropriate Python packages; otherwise these scripts could fail or be ignored. Ask the author to declare these dependencies or remove the unused scripts. - Hardcoded absolute file paths: the Python scripts read/write absolute paths under /home/yesf37332/Desktop/..., which may leak a developer username and will likely fail or read unexpected files on your host. Request that paths be relative or configurable and that scripts avoid referencing other users' home directories. - API key handling: the setup instructions show adding the API key as a URL query parameter (...?token=你的 JY_API_KEY). Embedding credentials in URLs is insecure (can be recorded in shell/history/webserver logs). Prefer storing the key in a protected config file or environment variable and avoid passing secrets on the command line. - Verify the 'mcporter' npm package: the install step uses npm install -g mcporter. Confirm the package is the official CLI you expect (publisher, homepage, checksum) before globally installing it. - OpenClaw config edits: the guide asks you to edit ~/.openclaw/openclaw.json to enable mcporter. Only make these changes if you trust the mcporter tool; enabling global tools can widen the agent's capability surface. - Minor inconsistencies in service names: some files reference different MCP service names (gildata_datamap-api vs jy-financedata-api). Ask the maintainer to clean up and document exactly which services are called. Recommended actions before installing/using: 1. Ask the author to (a) declare required runtimes (Python + packages) or remove the Python examples, (b) remove hardcoded absolute paths or make them configurable, and (c) declare the expected env vars and where credentials should be stored. 2. Confirm the npm 'mcporter' package provenance (npm registry page, maintainer) and consider installing it in a controlled environment (container) first. 3. Never paste API keys into shell commands that may be stored in history; instead configure mcporter using a config file with restricted permissions or environment variables, and prefer token storage mechanisms that avoid exposing secrets in URLs. 4. If you need PDF generation, run the conversion in an isolated environment after auditing the included scripts and installing Python dependencies. Because of these mismatches and operational risks, treat the skill as suspicious until the above issues are resolved.

Like a lobster shell, security has layers — review code before you run it.

latestvk970j48edejjmzf7b4f04kwf7s845nar

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Runtime requirements

Binsnode, npm, mcporter

Install

Install mcporter via npmnpm i -g mcporter

Comments