Find alternative / second-source components for a given MPN. Returns parts ranked by how closely their specs, package, and category match the reference part, with a match_score and match_notes explaining each match. When to use: - Original part is out of stock or end-of-life. - You need a cheaper...
Part of the Sheetsdata Mcp server.
Free to start. No card required.
AI agents call find_alternative to retrieve information from Sheetsdata Mcp without modifying any data. This is common in research, monitoring, and reporting workflows where the agent needs context before taking action. Because read operations don't change state, they are generally safe to allow without restrictions -- but you may still want rate limits to control API costs.
Even though find_alternative only reads data, uncontrolled read access can leak sensitive information or rack up API costs. An agent caught in a retry loop could make thousands of calls per minute. A rate limit gives you a safety net without blocking legitimate use.
Read-only tools are safe to allow by default. No rate limit needed unless you want to control costs.
{
"version": "1",
"default": "deny",
"tools": {
"find_alternative": {}
}
} See the full Sheetsdata Mcp policy for all 12 tools.
These attack patterns abuse exactly the kind of access find_alternative gives an agent. Each links to the full case and the policy that stops it:
Other read tools across the catalogue. The same approach applies to each: allow, with a rate cap to control cost.
Find alternative / second-source components for a given MPN. Returns parts ranked by how closely their specs, package, and category match the reference part, with a match_score and match_notes explaining each match. When to use: - Original part is out of stock or end-of-life. - You need a cheaper equivalent with similar specs. - You need a second source for supply-chain resilience. - You need a drop-in replacement on an existing PCB (use constraints=['same_package']). When NOT to use: - You're browsing a category from scratch — use search_parts. - You already have candidates and want a head-to-head comparison — use compare_parts directly. Behavior: - Eval boards, dev kits, and breakout modules are filtered out — results are IC-level alternatives only. - 'same_package' uses fuzzy matching, so SOT-23 ≡ SOT23, SOIC-8 ≡ SOP-8, LQFP64 ≡ TQFP64, etc. Exact string match is not required. - If provider search returns few candidates, the tool falls back to semantic search across extracted datasheets to surface niche alternatives. - The response includes a 'hint' field pointing to compare_parts / read_datasheet for drilling into promising alternatives. Example: find_alternative('TPS54302', constraints=['same_package', 'in_stock']) DATASHEET STATUS VALUES: - 'ready' — extracted and indexed; call read_datasheet, search_datasheets, or analyze_image. - 'extracting' / 'in_progress' / 'queued' / 'pending' — extraction running or scheduled. Poll check_extraction_status every 5-10s until 'ready' or 'failed'. Typical time: 30s-2min. - 'not_extracted' — known part but datasheet hasn't been fetched yet. Trigger it via prefetch_datasheets (cheapest) or by calling read_datasheet (auto-triggers on first read). - 'no_source' — we couldn't find a public datasheet URL for this MPN. First, retry prefetch_datasheets in 10-30s (the URL resolver re-runs and often finds a source on the second pass). If still 'no_source', the agent can upload the PDF manually via request_datasheet_upload + confirm_datasheet_upload (see those tools). Org-uploaded datasheets are private to the org. - 'unsupported' — PDF exists but can't be extracted (scanned image-only, encrypted, or corrupted). Upload a clean text-based PDF via request_datasheet_upload to override. - 'failed' / 'error' — extraction errored. The response includes the error reason. Retry via prefetch_datasheets or escalate to support. - 'rejected' — input wasn't a real MPN (bare value like '100nF', description, or reference designator). Fix the input and re-call. - 'deduplicated' — another part in the family already has this datasheet; same content is returned under the primary MPN.. It is categorised as a Read tool in the Sheetsdata Mcp MCP Server, which means it retrieves data without modifying state.
Register the Sheetsdata MCP server in PolicyLayer and add a rule for find_alternative: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Sheetsdata Mcp. Nothing to install.
find_alternative is a Read tool with low risk. Read-only tools are generally safe to allow by default.
Yes. Add a rate_limit block to the find_alternative rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.
Set action: deny in the PolicyLayer policy for find_alternative. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.
find_alternative is provided by the Sheetsdata MCP server (@sheetsdata/mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.
Deterministic rules across all 12 Sheetsdata Mcp tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.
Free to start. No card required.
4,600+ MCP servers and 31,000+ tools scanned and risk-classified.