AI LedParser
Server Details
LED selection by package, CCT and current: flux, lm/W, price per lumen from datasheet curves.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 2 tools
The two tools share filters (package, CCT, availability) but the boundary is explicitly stated: led_catalog_search is a price-only lookup with no drive current, while led_select requires a working current and computes flux/lm-per-W. The cross-references ('no current → call led_catalog_search') make misselection unlikely, though the shared table output and overlapping filters leave mild room for confusion.
Both names use the same led_ prefix and snake_case, which is consistent. The second segment differs in style (noun phrase catalog_search vs. bare verb select), a minor deviation from a strict verb_noun pattern but still readable and predictable.
Two tools is thin on paper, but the server's stated scope is narrow (LED catalog pricing and current-based selection) and each tool maps to exactly one of those operations with no redundancy. Nothing feels padded or redundant; it is only slightly under the typical 3-15 range.
Search and selection are covered, but there is no way to fetch full specs for a single part, compare candidates, or retrieve stock/lead-time detail beyond the availability parameter — both tools are terminal endpoints that only emit a table. Agents needing per-part detail or follow-up actions hit a dead end.
Available Tools
2 toolsled_catalog_searchARead-onlyInspect
Прайс без расчёта: поиск по каталогу без тока, корпус и CCT обязательны, плюс маркировка, напряжение, CRI, количество, наличие и цена. Без availability — только склад и в пути; availability.source=all — все позиции без отсечения по количеству. Потока и лм/Вт в ответе нет — для них led_select с рабочим током. Результат показывай таблицей из поля table ответа — она та же, что на сайте. hidden_message передай человеку; заказ не обещай.
| Name | Required | Description | Default |
|---|---|---|---|
| cri | No | индекс цветопередачи | |
| price | No | предел цены за штуку | |
| marking | No | маркировка или модель | |
| voltage | No | напряжение | |
| color_temp | Yes | цветовая температура света | |
| availability | No | наличие { source, min_quantity }: stock — только склад, stock-and-order — склад и в пути, all — все позиции без отсечения по количеству. Поле не передано — склад и в пути, минимум 1; при названной маркировке наличие не проверяется. Наличие не обещает возможность заказа | |
| min_quantity | No | названное пользователем количество, 0 — если не названо | |
| package_size | Yes | корпус светодиода |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the read-only annotations, it discloses output limitations, instructs the agent to render response.table and relay hidden_message, and warns that availability must not be treated as a promise of ordering. The availability-default and source=all behavior further clarifies results, and nothing conflicts with the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Purpose and mandatory inputs come first, followed by availability behavior, sibling routing, and response-handling instructions. Although dense, every clause supplies a distinct operational constraint and there is no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The rich schema covers the eight parameters and nested filters, while the description supplies the selection boundary, sibling escalation, and output handling needed despite the absence of an output schema. Together they provide enough information to avoid the main misuse cases and invoke the search correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and much of the prose restates required inputs and availability semantics already documented there. It usefully frames the overall filter set and absence of a current parameter, but adds no further units, formats, or nested-price semantics, so the schema still does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description defines a price-oriented catalog search "без расчёта" and "без тока", naming the required package/CCT inputs and optional filters. It also distinguishes the tool from its only sibling by directing flux and lm/W requests to led_select.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It clearly establishes when to use this tool: catalog price lookup without an operating current or engineering calculation. Requests needing luminous flux or efficacy are explicitly routed to led_select with a working current, while the availability clauses clarify important invocation choices.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
led_selectARead-onlyInspect
Расчётный подбор светодиодов по корпусу, CCT и рабочему току. Тока нет — вызови led_catalog_search (прайс без расчёта) или спроси ток. По умолчанию 5 позиций, максимум 10 — просят больше, вызывай с limit 10. Без availability — только склад и в пути; availability.source=all — все позиции. Без sort — дешевле всего за люмен; с thresholds.target_flux сортировка всегда flux-distance-asc, без него flux-distance-asc — отказ sort-invalid. Результат показывай таблицей из поля table ответа — она та же, что на сайте. hidden_message передай человеку; заказ не обещай.
| Name | Required | Description | Default |
|---|---|---|---|
| sort | No | сортировка выдачи: price-per-lumen-rub-asc — дешевле всего за люмен, price-rub-asc — дешевле всего за штуку, price-cny-asc — дешевле всего за штуку, efficacy-desc — самые эффективные, flux-desc — самый большой поток, flux-distance-asc — ближе всего к названному целевому потоку, только с target_flux; по умолчанию price-per-lumen-rub-asc, с thresholds.target_flux всегда flux-distance-asc | price-per-lumen-rub-asc |
| limit | No | ||
| price | No | предел цены за штуку | |
| catalog | Yes | ||
| current | Yes | рабочий ток в мА | |
| thresholds | No | пороги потока и эффективности | |
| temperature | No | температура точки пайки в °C; градусы без уточнения — это она | |
| availability | No | наличие { source, min_quantity }: stock — только склад, stock-and-order — склад и в пути, all — все позиции без отсечения по количеству. Поле не передано — склад и в пути, минимум 1; при названной маркировке наличие не проверяется. Наличие не обещает возможность заказа |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnlyHint and openWorldHint, so the description carries the rest and does well: default result size, hard cap of 10, the availability filtering model (stock-and-order when the field is absent, all means no quantity cut), a named error mode (sort-invalid), and a response field (table) plus hidden_message to relay to the human. The remaining gap is that it never says what the ranking does with ties or how many candidates are scanned, but the operational surface is otherwise well disclosed — and it correctly warns 'заказ не обещай', which matches readOnly semantics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with purpose then a chain of conditional rules; each sentence carries an operational constraint, and nothing is decorative. The telegraphic dash-style makes it dense to parse but it is appropriately sized for a multi-behaviour tool with eight parameters.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a complex nested-schema tool with no output schema, the description covers the selection semantics, defaults, the error path, and how to present and relay the result (table field mirrors the site, hidden_message goes to the person). An agent has enough to call it and handle the response without guessing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 75%, so the schema already documents sort, availability, thresholds and most catalog fields; the description largely restates the limit default (5) and cap (10) and the target_flux→flux-distance-asc rule that the sort schema already states. It does add operational meaning to availability (absent field = stock-and-order, min 1; 'при названной маркировке наличие не проверяется'), but says nothing about price, temperature, or the catalog.min_quantity vs availability.min_quantity split, which is the most confusing part of the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Opens with a specific verb and resource (расчётный подбор светодиодов) plus the three dimensions of the match (корпус, CCT, рабочий ток), and immediately names the sibling it is not: led_catalog_search is a 'прайс без расчёта'. An agent can distinguish the two without opening either schema.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives an explicit routing rule for the missing-required-input case: no current → call led_catalog_search or ask the user for the current. It also states the escalation path for limit ('просят больше, вызывай с limit 10') and when sort is refused (sort-invalid Without target_flux). Alternatives and preconditions are spelled out rather than implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
led_catalog_search - First observed
led_select
Related MCP Connectors
IC datasheet search: parametric part finding, spec lookup, price comparison — grounded in real PDFs.
Electronic component datasheets for AI agents: pinouts, specs, package info and design checks.
Datasheet values, tables and graphs from the manufacturer's original, cited by document and page.
Read-only parts catalogue for power electronics: search, selection, cross-reference.
Related MCP Servers
- AlicenseAqualityAmaintenancedatasheet-lens gives the content of component datasheets (PDF) to an LLM agent, for electronics design (KiCad and other CAD tools) and firmware work.27MIT
- AlicenseAqualityAmaintenanceLLM pricing for coding agents: every price carries its source and the date it was last confirmed, and disputed prices are flagged. Looks up model rates, costs a described workload, and finds cheaper models that score at or above a given one. Local, no API key.31MIT
- FlicenseNot gradedqualityBmaintenanceBridges Codex with MiMoCode as a coding agent for planning, implementation, and review via MCP tools.-
- FlicenseAqualityBmaintenanceParametric price benchmarking for engineering and procurement trade-offs. Agentic first, runs on your data, stays on your machine.1228 PyPI2-
Glama MCP Gateway
Add one secure layer between your agents and this server.