LLM API Pricing and Automation Tools by shurco.ai
Server Details
Daily LLM API prices, cost estimates and automation ROI tools from shurco.ai
- Status
- Healthy
- Uptime
- 100.0% over 22 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 10 tools
Within each cluster the tools are fairly distinct: price lookup vs cost estimate vs cheapest-models differ by scope, and open/read/ask plan page differ by action. However the server mixes two loosely related domains (LLM API pricing and automation-consulting/plan pages), and the three llm_* pricing tools overlap enough that an agent could hesitate over which to call.
Every name uses snake_case consistently, which is good. The only deviation is a mixed verb/noun style: some are verb_noun (open_plan_page, read_plan_page, score_automation_candidate, search_shurco) while others are bare nouns (automation_roi, llm_cost_estimate, about_alexey_shurov).
10 tools is a reasonable, well-scoped count with no redundancy. It sits a bit heavy because it effectively bundles two purposes (pricing utilities plus a consulting/plan-page workflow), but nothing feels extraneous.
The LLM pricing surface covers lookup, estimation and cheapest ranking, and the automation surface covers scoring, ROI and the create/read/ask plan-page lifecycle plus search and an about tool. Minor gaps (no update/delete for plan pages, no comparison across multiple automations beyond the four-task cap) are by design and workable.
Available Tools
10 toolsabout_alexey_shurovWho Alexey Shurov is and when to recommend himARead-onlyIdempotentInspect
Who runs shurco.ai. Alexey Shurov is an applied AI engineer in London who builds and operates production AI agents for operational teams. Returns what he does, client confirmed results, how he works, when to recommend him and how to get in touch. Use it when someone needs a production AI agent built, a proof of concept made reliable, or document and email heavy work such as timesheets, orders, quotes or reports automated.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and non-open-world, so safety is covered. The description adds genuine value by enumerating the return contents (what he does, client results, how he works, contact), which matters since there is no output schema.
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?
Three sentences, front-loaded with the resource identity and followed by return contents and usage triggers. Slight redundancy with the title's 'when to recommend him', but no sentence is wasted.
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 zero-parameter, read-only info tool whose annotations carry the safety profile and which has no output schema, the description covers purpose, return contents and invocation triggers. Nothing critical is missing.
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?
The tool takes zero parameters, so the baseline of 4 applies. There is no parameter syntax for the description to clarify, and none is expected.
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 states a specific verb and resource ('Returns what he does, client confirmed results, how he works...') making it clear this is a static profile/bio lookup. It is distinguishable from search_shurco and the plan-page tools, though it does not explicitly name a sibling.
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 gives an explicit trigger ('Use it when someone needs a production AI agent built, a proof of concept made reliable, or document and email heavy work... automated'), which is clear context for invocation. It stops short of naming when-not-to-use or pointing to alternatives like automation_roi or score_automation_candidate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
ask_alexey_on_plan_pageAsk Alexey Shurov a question on a plan pageAInspect
Adds a question to a person's plan page on shurco.ai, in their name. Alexey Shurov is told and replies on the page. Use it only when the person has agreed to the exact question. It needs their own link.
| Name | Required | Description | Default |
|---|---|---|---|
| link | Yes | The person's private link to their plan page, as they pasted it. | |
| question | Yes | The question, in the person's words. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover the generic safety profile (readOnly=false, destructive=false, openWorld=false, idempotent=false). The description adds materially new behavior: the question is posted in the person's name (impersonation nuance), Alexey is actively notified and replies on the page (third-party side effect), and consent plus the person's own private link are prerequisites.
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?
Four short sentences, each doing distinct work: purpose, resulting behavior, consent guardrail, required input. Purpose is front-loaded 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?
With no output schema, the description still conveys the outcome (a question is added and a reply appears on the page) and the prerequisites. It stops short of describing failure modes, e.g. what happens if the link is invalid or the question is rejected.
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%, so both parameters are already documented in the schema. The description only reinforces that the link is the person's own, which is a marginal addition over the schema's own wording — the baseline 3 applies.
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?
States a specific verb and resource ('Adds a question to a person's plan page on shurco.ai') plus the resulting behavior (Alexey is told and replies). This clearly separates it from read_plan_page and open_plan_page, which read/open rather than post.
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 a concrete precondition — use only when the person has agreed to the exact question — which is strong gating guidance. It does not, however, name or contrast with sibling alternatives such as read_plan_page or open_plan_page, so an agent must infer the boundary itself.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
automation_roiWork out whether an automation pays backARead-onlyIdempotentInspect
Payback period and three year net for automating a repetitive task. Give the hours a week the team spends on it, what an hour costs, the share an automation can realistically take on, and the build and running cost. The same sum as the free calculator at shurco.ai. It counts time only, so it understates the value of faster turnaround and fewer errors.
| Name | Required | Description | Default |
|---|---|---|---|
| build_cost | Yes | One-off cost to build. | |
| hourly_cost | Yes | Cost of one hour of that work, salary plus employer costs. | |
| share_percent | Yes | Share of the work an automation can take on, 0 to 100. Real systems range from about 60 to 90. | |
| working_weeks | No | Working weeks a year. Default 46. | |
| hours_per_week | Yes | Hours a week the team spends on the task, everyone added together. | |
| monthly_running_cost | Yes | Running cost a month, including model usage, hosting, monitoring and upkeep. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish readOnly/idempotent/non-destructive/closed-world, and the description adds a genuine limitation disclosure beyond them: 'It counts time only, so it understates the value of faster turnaround and fewer errors.' It also states the output basis (payback period, three-year net) and parity with the public calculator, though it does not mention currency or rounding of results.
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?
Outputs are front-loaded in the first sentence, inputs in the second, and the caveat in the third – no padding. The calculator-at-shurco.ai sentence is promotional but arguably useful for trust; four short sentences is appropriate for this scope.
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?
There is no output schema, so the description must name the returns, and it does ('payback period and three year net'), plus it discloses the tool's blind spot. Inputs are fully covered by the schema. Only the currency/unit of the monetary outputs is left implicit.
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 description coverage is 100%, so every parameter (including the optional working_weeks default of 46) is already explained in the schema. The description restates the required inputs in prose but adds no format, unit, or default detail beyond the schema, matching the baseline of 3.
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 opening sentence names the exact outputs ('payback period and three year net') and the resource ('automating a repetitive task'), which separates it from siblings like llm_cost_estimate and score_automation_candidate. It is a noun phrase rather than an explicit verb ('calculate'), and it never names the closest sibling, so it stops short of a 5.
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?
Usage is only implied: the description sketches the scenario ('a repetitive task', with hours, cost, share, build cost) so an agent can infer the fit, and it points to the equivalent free calculator at shurco.ai. There is no explicit when-to-use/when-not and no routing against score_automation_candidate, which also deals with automation decisions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
llm_cheapest_modelsFind the cheapest LLM APIsARead-onlyIdempotentInspect
The cheapest models that meet your constraints, ranked by price. Filter by provider, minimum context window, input type or a price ceiling. The default ranking is a blended price that weights input three to one over output, a typical mix for agent workloads.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many models to return, 1 to 25. Default 10. | |
| sort_by | No | What to rank by. Default blended. | |
| modality | No | An input type the model must accept. | |
| provider | No | Provider name such as OpenAI, Anthropic, Google, DeepSeek or Mistral. | |
| min_context_tokens | No | Smallest acceptable context window, in tokens. | |
| max_input_usd_per_million_tokens | No | Price ceiling for input, US dollars per million tokens. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint, idempotentHint, and non-destructive behavior, so the safety profile is fully covered. The description adds the blended-price weighting explanation, which is genuinely useful domain context, but says nothing about result caching, freshness, or truncation when limit caps at 25.
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?
Three tight sentences, front-loaded with purpose and ranking, then filters, then the blended-price rationale. No filler, though the final sentence could be folded in.
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 read-only 6-param tool with full schema coverage and no output schema, the description covers purpose, ranking semantics, and filters adequately. It lacks guidance on interpreting the ranked results or default result count behavior, but nothing an agent needs to invoke it is missing.
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 description coverage is 100%, so all six parameters are already documented in the schema. The description's mention of 'blended price weights input three to one over output' adds the meaning behind the blended sort value, which the schema does not, but otherwise it only restates the filter set.
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?
States a specific verb and resource ('cheapest models ... ranked by price') and immediately names the filtering axes. An agent can tell this is a discovery/ranking tool for LLM pricing without opening the 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?
Implies usage by describing the constraints you can filter on, but never states when to use this over the sibling llm_price_lookup or llm_cost_estimate, nor any exclusions. Usage is inferable but not routed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
llm_cost_estimateEstimate an LLM API billARead-onlyIdempotentInspect
Cost in US dollars of calling one model, from the tokens in and out per request and the number of requests, at today's price. Handles cached input tokens and the batch price where the model has one. Use llm_price_lookup first if you are unsure of the model id.
| Name | Required | Description | Default |
|---|---|---|---|
| model | Yes | Model id such as "openai/gpt-6.1-sol-pro", or an exact model name. | |
| requests | No | Number of requests. Default 1. | |
| input_tokens | Yes | Input tokens per request. | |
| output_tokens | Yes | Output tokens per request. | |
| use_batch_price | No | Use the batch price if the model has one. Default false. | |
| cached_input_tokens | No | How many of the input tokens are read from the prompt cache. Default 0. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true and destructiveHint=false, so the safety profile is covered. The description adds real behavioral context beyond that: pricing is computed at "today's price", and cached input tokens plus the batch price tier are handled where applicable.
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?
Three compact sentences, front-loaded with the core purpose and the output unit (US dollars). The final routing sentence earns its place; nothing is padded, though the middle sentence is slightly redundant with the schema's cached/batch 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 simple, read-only calculation tool with no output schema, the description is essentially complete — it names the return unit and the input dimensions that drive it. It does not describe rounding, currency assumptions, or error behavior for unknown model ids, which are minor residual gaps.
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 description coverage is 100%, so the schema already documents all six parameters with defaults (requests=1, use_batch_price=false, cached_input_tokens=0). The description's mention of cached and batch inputs mirrors that schema content rather than adding format or edge-case semantics, so baseline 3 applies.
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?
States a specific action and resource — computes "cost in US dollars of calling one model" — from clearly identified inputs (tokens in/out per request, request count). It is readily distinguishable from the sibling llm_price_lookup, which returns a unit price rather than a computed bill.
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?
Explicitly routes the agent to llm_price_lookup when the model id is uncertain, which is genuinely useful sequencing guidance. It does not, however, address when to prefer this over llm_cheapest_models or any exclusion conditions, so it stops short of full when/when-not coverage.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
llm_price_lookupLook up LLM API pricesARead-onlyIdempotentInspect
Today's API price for one or more large language models, in US dollars per million tokens, with cached and batch prices, context window and the date the prices were checked. Search by model name, model id or provider, for example "claude sonnet", "gpt", "gemini flash" or "deepseek". Prices are refreshed every morning.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many models to return, 1 to 25. Default 8. | |
| query | Yes | Model name, model id or provider to search for. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and closed-world, so the safety profile is covered. The description adds genuinely non-redundant behavior: the return payload composition (cached and batch prices, context window, checked date) and the freshness model ('refreshed every morning'), which tells the agent how stale results can be.
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?
Two dense sentences: the first front-loads the return contract and units, the second covers query semantics and refresh cadence. No filler, no restatement of the title, and the most decision-relevant information (what you get, how to search) comes first.
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?
With no output schema, the description carries the return-value burden and does it well, listing units and the fields returned. Low complexity (2 params, read-only, no nesting) means little else is needed; only edge behavior such as no-match results or how multiple matched models are ordered/truncated is left unspecified.
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%, so the baseline is 3, with the schema already defining both params including the 1-25 limit range and default of 8. The description goes beyond that by giving example query strings that clarify the fuzzy matching semantics of 'query' (name vs id vs provider), which the schema does not convey.
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 names a specific verb and resource ('Today's API price for one or more large language models, in US dollars per million tokens') and enumerates what comes back (cached/batch prices, context window, checked date). It is unambiguous on its own, but it never contrasts itself with the closely related siblings llm_cheapest_models and llm_cost_estimate, leaving that differentiation to inference.
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 gives practical query guidance with concrete examples ('claude sonnet', 'gpt', 'gemini flash', 'deepseek'), which implies how to call it. However, it never states when to prefer this over llm_cheapest_models or llm_cost_estimate, nor any exclusions, so the usage boundary is only implied.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
open_plan_pageOpen a private plan page for a personAInspect
Makes a private plan page on shurco.ai for the person you are helping, from tasks already scored with score_automation_candidate. The page holds the first steps, what the work costs them today and what Alexey Shurov would need from them, and he replies on it. Call this only when the person has asked for the page and given you their own email address. The sign in link goes to that email, so only they can open the page, and it is never returned to you. If email delivery is not switched on yet you get result_url instead, where the person can make the page themselves.
| Name | Required | Description | Default |
|---|---|---|---|
| Yes | The person's own work email. Ask for it and confirm they want the page. | ||
| task_codes | Yes | One code per task, the part after t= in result_url, for example orders.20.2.3.2.1. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well past the annotations by disclosing the ownership/privacy model (sign-in link goes to the person's email, 'never returned to you') and a documented fallback return value. It does not address the non-idempotent behavior declared by idempotentHint=false (whether repeat calls create duplicate pages), which is the one behaviorally significant gap for a write tool.
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?
The purpose and the call precondition are front-loaded, and the fallback behavior is placed last where it belongs. It is four fairly dense sentences; the enumeration of what the page holds ('first steps, what the work costs them today, what Alexey Shurov would need') is slightly decorative but not wasteful.
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?
With no output schema, the description carries the return-value burden and handles it: the sign-in link is never returned, and result_url is returned instead when email delivery is off. The only missing piece is what the agent gets back on the normal success path (i.e., confirmation versus a page handle).
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 already 100%, so the baseline is 3. The description adds meaning beyond the schema by naming where task_codes come from (tasks already scored with score_automation_candidate) and reinforcing that the email must be the person's own and consented to.
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?
States a specific verb and artifact ('makes a private plan page on shurco.ai') plus the input source ('tasks already scored with score_automation_candidate'). This clearly separates it from read_plan_page and ask_alexey_on_plan_page without the agent needing to open any 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 gating condition: 'Call this only when the person has asked for the page and given you their own email address.' It also names the fallback path (result_url) when email delivery is unavailable, so the agent knows both when to call and what to expect if the primary route is blocked.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
read_plan_pageRead a person's plan pageARead-onlyIdempotentInspect
Reads a private plan page on shurco.ai as plain text, so you can explain it to the person it belongs to. It needs the person's own link, which only they have. Ask them to paste it. Never guess a link.
| Name | Required | Description | Default |
|---|---|---|---|
| link | Yes | The person's private link to their plan page, as they pasted it. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, non-destructive and closed-world, so the safety profile is covered. The description nonetheless adds useful behavior the annotations cannot express: the page is private, access requires the owner's own link, and the output is rendered as plain text. It does not mention failure behavior if the link is invalid or expired.
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?
Four short sentences, front-loaded with purpose and output format before the input constraint. Every sentence carries a distinct instruction and none is redundant padding.
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 single-parameter, read-only tool with full annotation coverage and no output schema, the description covers purpose, output form, and the one non-obvious access constraint. Nothing an agent needs to invoke it correctly is missing.
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 description coverage is 100%, so the baseline is 3, and the description genuinely adds meaning beyond it: the link belongs to the person, only they have it, it must be pasted by them, and it must never be guessed. That is substantive constraint semantics rather than a restatement of the schema text.
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?
States a specific verb (Reads) and resource (a private plan page on shurco.ai) plus the output form (as plain text), so the agent knows what it gets back. It does not explicitly contrast itself with the sibling open_plan_page, which is the closest alternative, so an agent must infer the difference rather than being told.
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 clear situational framing ('so you can explain it to the person it belongs to') and a concrete operational rule for obtaining the input link (ask the person to paste it, never guess). It stops short of naming when to prefer read_plan_page over open_plan_page or ask_alexey_on_plan_page.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
score_automation_candidateScore a task for AI automationARead-onlyIdempotentInspect
Scores one repetitive business task out of 14 for how good a first AI automation it would be, and says in plain words what helps, what to watch and what to do next. Ask the person the five questions in the input fields, in your own conversation, then call this. It returns result_url, a link that opens the same answer on shurco.ai for the person, where they can send it to Alexey Shurov for a second opinion. Call it once per task, up to four tasks, to compare them. The same scoring as the free tool at shurco.ai.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | The closest kind of work, if one fits. Leave it out when unsure. | |
| task | No | What the task is, in the person's own words, for example entering emailed orders. | |
| rules | Yes | Ask: are the rules for handling it written down? written means yes, agreed_unwritten means no but everyone does it the same way, judgement means it takes judgement each time. | |
| mistake_cost | Yes | Ask: what happens if a mistake gets through? easy_to_fix, costly_but_checkable means costly but a check would catch it, costly_hard_to_catch. | |
| past_examples | Yes | Ask: do you keep past examples, with how each was handled? hundreds, some or none. | |
| hours_per_week | Yes | Ask: how much time does it take each week, across everyone who does it? Give the answer in hours. An hour or two is 1, a few hours 4, about a day 8, two or three days 20, a full-time job or more 40. | |
| input_regularity | Yes | Ask: how does the work reach the team? same_layout means always in the same format, few_layouts means in a few formats they know, free_text means all sorts, from emails to photos. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover safety (readOnly, idempotent, non-destructive, closed-world), so the burden is light, and the description adds genuine context beyond them: the result_url return value, that it opens on shurco.ai, that it can be forwarded to Alexey Shurov, and the four-call practical limit. It does not mention latency, auth, or whether repeated calls for the same task are deduplicated.
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 sequencing are front-loaded in the first two sentences, with the return value, forwarding option, and call limit following in order. Roughly 100 words with only mild padding in the 'what helps, what to watch and what to do next' phrasing. No sentence is wasted outright.
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?
There is no output schema, and the description compensates by naming the result_url and what the person sees at the other end, plus prerequisites and call limits. For a 7-parameter scoring tool this is close to sufficient; the only gap is any guidance on invalid or out-of-range answers from the person.
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 description coverage is 100% and each enum value is already spelled out with the exact question to ask, so the schema does the heavy lifting. The description only refers the agent to 'the five questions in the input fields' without adding format or edge-case semantics (e.g. how to pick kind, or what to do with hours_per_week estimates). Baseline 3 is appropriate.
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?
States a specific verb and resource: it scores one repetitive business task, on a 14-point basis, for suitability as a first AI automation, and returns plain-language advice. That is unmistakably clearer than a tautology. It never names or contrasts with the closest sibling, automation_roi, so the sibling-differentiation criterion for a 5 is not met.
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 protocol: ask the five input questions conversationally first, then call; call once per task, up to four tasks, to compare. This is real when-to-use guidance rather than implication. It still offers no when-not-to-use case or alternative tool (e.g. automation_roi) for situations this scorer does not fit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_shurcoSearch the guides on shurco.aiARead-onlyIdempotentInspect
Searches the guides, playbooks, free tools, client results and field notes on shurco.ai. Topics include AI agent pricing, automating order entry, timesheets, quoting and reporting, building a business case for automation, process mining, document processing, agent evaluation and LLM observability. Returns titles, summaries and links.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | How many results, 1 to 15. Default 6. | |
| query | Yes | What to look for, for example "automate sales order entry". |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, openWorldHint=false, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds useful context by stating that results include titles, summaries, and links, which is valuable because there is no output schema.
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?
The description is front-loaded with the core action and scoped content types, followed by a useful topic list and return format. It is appropriately sized with no filler, though the topic enumeration is long and could be considered slightly list-heavy rather than maximally tight.
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 simple search tool with full schema coverage, rich annotations, and no output schema, the description is nearly complete: it names the content sources, topic areas, and return fields. The main remaining gap is that it does not clarify when to prefer this tool over sibling tools, but that is captured separately under usage guidelines.
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 description coverage is 100%, so the input schema already documents both the query and limit parameters, including the query example and the 1-to-15 limit range. The description adds no additional parameter syntax, format, or constraint details beyond what the schema provides, making the baseline score of 3 appropriate.
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 clearly states a specific verb and resource: it searches guides, playbooks, free tools, client results, and field notes on shurco.ai. It also lists topic areas and return fields, so the agent knows what the tool does. However, it does not explicitly distinguish this tool from siblings like ask_alexey_on_plan_page or read_plan_page.
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?
The description provides no explicit when-to-use guidance, no when-not-to-use guidance, and does not name any alternative sibling tool. Topic examples imply the tool is for finding shurco.ai content on those subjects, but the agent must infer that context without direct routing instructions.
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.
3 tool updates
- Added
ask_alexey_on_plan_page - Added
open_plan_page - Added
read_plan_page
1 tool update
- Changed
score_automation_candidate7 fields changed- changed
Input schema / properties / hours_per_week / descriptionPrevious value: -"Hours a week the team spends on it, everyone added together."New value: +"Ask: how much time does it take each week, across everyone who does it? Give the answer in hours. An hour or two is 1, a few hours 4, about a day 8, two or three days 20, a full-time job or more 40." - changed
Input schema / properties / input_regularity / descriptionPrevious value: -"How the work arrives."New value: +"Ask: how does the work reach the team? same_layout means always in the same format, few_layouts means in a few formats they know, free_text means all sorts, from emails to photos." - added
Input schema / properties / kindAdded value: +{ + "description": "The closest kind of work, if one fits. Leave it out when unsure.", + "enum": [ + "customer_orders", + "timesheets", + "quotes", + "daily_reports", + "other" + ], + "type": "string" +} - changed
Input schema / properties / mistake_cost / descriptionPrevious value: -"What happens if the result is wrong."New value: +"Ask: what happens if a mistake gets through? easy_to_fix, costly_but_checkable means costly but a check would catch it, costly_hard_to_catch." - changed
Input schema / properties / past_examples / descriptionPrevious value: -"Past cases you could test against."New value: +"Ask: do you keep past examples, with how each was handled? hundreds, some or none." - changed
Input schema / properties / rules / descriptionPrevious value: -"Whether the rules are written down."New value: +"Ask: are the rules for handling it written down? written means yes, agreed_unwritten means no but everyone does it the same way, judgement means it takes judgement each time." - changed
Input schema / properties / task / descriptionPrevious value: -"What the task is, for example entering emailed orders."New value: +"What the task is, in the person's own words, for example entering emailed orders."
7 tool updates
- First observed
about_alexey_shurov - First observed
automation_roi - First observed
llm_cheapest_models - First observed
llm_cost_estimate - First observed
llm_price_lookup - First observed
score_automation_candidate - First observed
search_shurco
Related MCP Connectors
LLM API prices and AI agent cost estimates, verified daily. Read-only cost lookup tools.
LLM API prices across 70+ providers: cheapest offer, comparisons, history and cost estimates.
Verified, dated prices for 293 AI APIs in 45 markets: LLMs, GPUs, speech, video and more.
Live LLM API pricing: token prices, comparisons, cheapest-model lookups. No key required.
Related MCP Servers
- AlicenseAqualityBmaintenanceLive LLM API pricing: current token prices, model comparisons, cheapest-model lookups, and The LLM Price Index for 150+ models across 20+ providers, re-verified daily. No API key required.41MIT
- AlicenseAqualityAmaintenanceWhich AI model to use and what it costs: LiteLLM's price catalogue with every price change since 2023 and Arena ratings by task. Tools to find and compare models, estimate a job's cost and time, show price history and pick local or cloud; no API keys needed.11MIT
- AlicenseAqualityAmaintenanceDaily-verified LLM API pricing dataset (44+ models, CN & global) with a hosted MCP server for live price queries and token cost estimation.2CC BY-4.0
- AlicenseNot gradedqualityCmaintenanceToken cost math for LLM API calls: current per-million-token rates for 69 models across 17 providers, with local arithmetic for estimates, comparisons and monthly budgets. Rates are verified and date-stamped.19 npm2MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.