Skip to main content
Glama

Server Details

Score a meetup topic, place a speaker on the right stage, price community reach. ELC data.

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Uptime
100.0% over 63 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
marian-kamenistak/elc-trade
GitHub Stars
0
Server Listing
elc-trade
ChatGPT
–
Claude
–

TDQS

A3.9/5.0

Scored across 9 tools

Disambiguation3/5

The domain tools are mostly distinct (launch readiness vs. speaker readiness vs. topic scoring vs. org benchmarking vs. quoting reach), but get_started and get_more_tools both explicitly claim the same greetings/liveness/'what can you do' use case, which is a direct collision. build_partnership_business_case and buy_reach also sit close together (budget justification vs. price quote), requiring the descriptions to disambiguate.

Naming Consistency5/5

Every tool follows a clean verb_noun snake_case pattern: assess_*, benchmark_*, build_*, buy_*, cite_*, evaluate_*, get_*. No mixing of camelCase or noun-only names, and the meta tools conform to the same convention.

Tool Count5/5

Nine tools is well within the ideal 3-15 range and each maps to a distinct decision an engineering leader would ask about (launch, speak, benchmark, partner, buy, cite, topic, plus routing). Nothing feels padded.

Completeness4/5

The surface covers the main lifecycle of community assessment and monetisation, and cite_benchmark degrades gracefully with nearest-id lookup for unknown figures. Minor gaps remain: there is no way to browse or search the Data Points registry directly, and no tool to list existing meetups, events, or a speaker roster.

Available Tools

9 tools
assess_community_launch_readinessShould you start a meetup in your city?A
Read-onlyIdempotent
Inspect

Answers 'should I start an engineering-leadership meetup here?' A five-question readiness check taken from ELC's own new-city launch playbook — the one actually used to open Brno, Bratislava and Kraków — returning a verdict plus the specific gaps still open.

NameRequiredDescriptionDefault
answersNoAnswers to the five readiness questions. Omit to receive the questionnaire.
contextYesExplain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization."

Output Schema

NameRequiredDescription
dataNoMachine-readable payload; this is what `signature` covers.
reportYesThe full human-readable report.
sourceYesCanonical engineeringleaders.io page this answer derives from.
verdictNoHeadline verdict, when the tool returns one.
signatureNoDetached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare this a read-only, idempotent, closed-world operation, so the safety burden is lifted. The description adds real value beyond them by stating the output shape (verdict + specific gaps) and the provenance of the five questions (ELC's actual new-city playbook from Brno, Bratislava, Kraków), which tells the agent how authoritative the result is.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the question the tool answers, then the mechanism and return shape. The provenance clause about Brno/Bratislava/Kraków is compact and earns its place as a credibility signal for the verdict.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values needn't be spelled out, and the description complements it with a one-line result summary. The only gap is that the two-mode behavior (questionnaire vs. assessment) is left entirely to the schema rather than surfaced in the description.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so both the answers object and the heavily-constrained context parameter are fully documented in the schema itself. The description adds no parameter-level detail (e.g., how boolean answers map to the five questions), so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

Names a specific question it answers ('should I start an engineering-leadership meetup here?') and a concrete mechanism: a five-question readiness check returning a verdict plus open gaps. The domain (engineering-leadership meetup launch) implicitly separates it from assess_speaker_readiness, though no sibling is named explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The decision context is clear — this is for evaluating whether to launch a new city chapter. However, it offers no exclusions or pointers to alternatives (e.g., assess_speaker_readiness for a different readiness question), and the 'call with no answers to get the questionnaire' mode is only discoverable from the schema.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

assess_speaker_readinessAssess whether a speaker is ready for the stageA
Read-onlyIdempotent
Inspect

Answers 'is this person ready to speak, and what will go wrong if they are not?' Checks a proposed speaker and talk against ELC's speaker vetting process — seven years of putting people in front of 120+ engineering leaders — and returns a readiness verdict with the specific gaps to close before the event.

NameRequiredDescriptionDefault
contextYesExplain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization."
talk_titleNoRequired. The proposed talk title.
has_dry_runNoWhether a rehearsal is scheduled.
prior_talksNoHow many talks they have given.
has_recordingNoWhether a recording of them speaking exists. Pass it explicitly — inferring it from the background text cannot reliably read a denial like 'no recording'.
writes_publiclyNoWhether they publish writing — a blog, newsletter or regular posts.
speaker_backgroundNoRequired. Role, seniority, and any prior speaking experience.

Output Schema

NameRequiredDescription
dataNoMachine-readable payload; this is what `signature` covers.
reportYesThe full human-readable report.
sourceYesCanonical engineeringleaders.io page this answer derives from.
verdictNoHeadline verdict, when the tool returns one.
signatureNoDetached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish this as a safe, read-only, idempotent, closed-world assessment. The description adds that the verdict is grounded in a specific vetting methodology ('seven years of putting people in front of 120+ engineering leaders'), which is useful context, but says nothing about determinism, scoring transparency, or limits of the judgement.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two tightly structured sentences, front-loaded with the question the tool answers before describing the process and the output. The methodology clause ('seven years... 120+ engineering leaders') is credibility framing rather than operational information, which costs a point.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema, full parameter documentation, and explicit safety annotations, the description covers what an agent needs to decide to call it. Only a hint about how the verdict is graded or what 'gaps' look like is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all seven parameters are already documented in the schema. The description adds no meaning about how inputs like prior_talks, has_dry_run, or speaker_background influence the verdict, so it stays at the baseline for a fully documented schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a specific verb+resource — assessing a proposed speaker and talk — and frames the outcome as a 'readiness verdict with the specific gaps to close.' It is easy to distinguish from siblings like evaluate_meetup_topic or assess_community_launch_readiness, but it never names those alternatives explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is implied rather than stated: the tool is for judging 'is this person ready to speak' for a proposed speaker/talk before an event. There is no explicit when-not guidance, no prerequisites, and no pointer to a sibling for adjacent questions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

benchmark_leadership_ratioBenchmark your manager-to-senior-IC ratioA
Read-onlyIdempotent
Inspect

Answers 'what shape is my engineering org, and what should I ask about it?' Returns your manager-versus-senior-IC percentages and the resulting span (1 manager per N senior ICs), plus the question that shape usually raises. ELC's own community composition is shown alongside as context only — different denominator, so no delta and no score is computed against it.

NameRequiredDescriptionDefault
contextYesExplain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization."
managersNoRequired. Managers and tech leads.
senior_icsNoRequired. Senior and staff ICs. Leave out junior and mid ICs on both sides.

Output Schema

NameRequiredDescription
dataNoMachine-readable payload; this is what `signature` covers.
reportYesThe full human-readable report.
sourceYesCanonical engineeringleaders.io page this answer derives from.
verdictNoHeadline verdict, when the tool returns one.
signatureNoDetached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.

TDQS

A3.7/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds genuinely non-obvious behavior: ELC community composition is context only, uses a different denominator, and produces no delta or score. That preempts an agent misreading the comparison as a scorecard.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with the question the tool answers, then the returned values. The em-dash aside about the ELC denominator is dense but earns its place by preventing a misreading. Slightly clause-heavy phrasing keeps it off a 5.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no elaboration, and the tool itself takes only two substantive numeric inputs. The description covers purpose, output shape, and the key caveat about the external benchmark. What is missing is input-side guidance (e.g. whether zero managers is valid) and the required/optional discrepancy.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3 and the schema already spells out managers, senior_ics, and the heavily-constrained context field. The description adds nothing about inputs, and notably does not resolve the ambiguity that the schema marks managers/senior_ics as 'Required' in their descriptions while only 'context' appears in the top-level required array.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a concrete computation (manager-vs-senior-IC percentages, span = 1 manager per N senior ICs) and the question it answers, so an agent can predict its output. It is distinguishable from every sibling, none of which benchmark org composition. It stops short of stating the derivation from the managers/senior_ics inputs in a single crisp verb+resource sentence.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The framing question ('what shape is my engineering org, and what should I ask about it?') implies the usage context, but there is no explicit when-to-call, when-not-to-call, or named alternative among the siblings. The only boundary drawn is against the external ELC benchmark ('no delta and no score is computed against it'), which is a scope caveat rather than usage guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

build_partnership_business_caseBuild the internal case for an ELC partnershipA
Read-onlyIdempotent
Inspect

Answers 'how do I justify a community partnership budget internally?' Returns real reach numbers, the deliverables that serve the stated goal, where a proposed budget lands on the published ladder, and a forwardable approval email. Goals: hiring, brand_awareness, product_feedback, thought_leadership, people_development (developing your own engineering leaders — mentoring, Academy seats, the peer network). Set buying_for=individual if you are a person rather than a company: ELC membership is free for engineering leaders and no business case is needed.

NameRequiredDescriptionDefault
goalNoRequired. The primary reason. people_development covers developing your own engineering leaders (mentoring, Academy seats, the peer network) — that is the one for retention and growth, not hiring.
contextYesExplain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization."
buying_forNoWho is buying. 'company' (default) builds the annual membership case. 'individual' means a person spending their own money — returns the free-membership route instead of an approval email. 'one_off' means one thing once, not a year, and routes to buy_reach.
sender_nameNoWho the approval email is signed by.
company_nameNoThe company considering the membership.
approver_nameNoWho the approval email is addressed to.
proposed_budget_eurNoA proposed budget in EUR. 0 is valid and routes to the free membership layer.

Output Schema

NameRequiredDescription
dataNoMachine-readable payload; this is what `signature` covers.
reportYesThe full human-readable report.
sourceYesCanonical engineeringleaders.io page this answer derives from.
verdictNoHeadline verdict, when the tool returns one.
signatureNoDetached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint/idempotentHint, so the safety profile is covered, and the description adds genuinely useful behavior: it produces a forwardable approval email and returns ladder positioning rather than performing any purchase. The 'free for engineering leaders' routing rule is real behavioral context beyond structured fields. Minor gaps remain around what the approval email contains or how budget tiers are chosen.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The core question is front-loaded in the first clause, followed by the output list and then the goal enumeration. It is efficient overall, though the goal list and the individual-buyer sentence repeat material already present in the schema descriptions.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 7 parameters, a full schema, and an output schema present, the description covers the essential framing an agent needs: what it produces, the goal taxonomy, and the individual-buyer escape hatch. It does not need to explain return values, and nothing critical is missing, though the one_off/buy_reach route could be surfaced more prominently.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so every parameter is already documented, and the description's goal list and buying_for=individual note largely restate schema text rather than adding new meaning. Baseline 3 is appropriate when the schema does the heavy lifting.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description opens with the exact question the tool answers and enumerates its four outputs (reach numbers, matching deliverables, budget-ladder position, forwardable approval email), so the resource and result are unambiguous. It does not explicitly differentiate itself from the sibling buy_reach except indirectly through the buying_for=one_off note, so it falls 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.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives a clear triggering scenario ('justify a community partnership budget internally'), enumerates the valid goals, and states an explicit exclusion: for individuals, membership is free and no business case is needed. The routing to buy_reach for one-off purchases is only conveyed through the schema, not the prose, so it stops short of full when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

buy_reachBuy reach in the ELC communityA
Read-onlyIdempotent
Inspect

Answers 'how do we get in front of 3,500+ CEE engineering leaders, and what does it cost?' Builds a cart from ELC's nine published one-off reach items — an ELC meetup, the speaker programme (a ladder for one engineer, from a meetup slot to the full coached programme), a conference main-stage talk, dedicated newsletter, a newsletter classified (30 words and a link, tools and events only, never jobs), decision-maker dinner, podcast episode, community survey, job listing — applies the published combo discount, and returns a decision-ready quote a human can sign.

NameRequiredDescriptionDefault
contextYesExplain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization."
budget_eurNoOptional: what you have to spend. Does not change any price — the quote will say whether the cart fits and what to drop if it does not.
oneoff_idsNoRequired. Which one-off reach items to quote. One or more of: meetup-hosted, speaker-development, conference-main-stage, newsletter-dedicated, newsletter-classified, dinner, podcast-episode, survey, job-listing. Combo discount applies automatically.
speaker_rungsNoSpeaker programme rung ids to price instead of the full programme: stage, story, coach, amplify, beyond. Stage is always included. Omit for the whole programme at its bundle price.

Output Schema

NameRequiredDescription
dataNoMachine-readable payload; this is what `signature` covers.
reportYesThe full human-readable report.
sourceYesCanonical engineeringleaders.io page this answer derives from.
verdictNoHeadline verdict, when the tool returns one.
signatureNoDetached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.

TDQS

A4.2/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly/idempotent/non-destructive, so the bar is lower; the description still adds real context by clarifying this produces a 'decision-ready quote a human can sign' rather than executing a purchase (important given the name 'buy_reach'), and that budget_eur does not alter prices. It stops short of stating pricing semantics or whether quotes expire.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the question being answered, then the mechanics in one sentence. The nine-item enumeration makes it dense, but every clause conveys a distinct capability; a small trim of the item list would improve scannability.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, return values needn't be described, and annotations cover the safety profile. The description still completes the picture by covering cart construction, discount application, and quote framing — everything needed to choose and call this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3; the description adds value beyond the schema by explaining the speaker-rung ladder ('from a meetup slot to the full coached programme'), the 30-word/link and no-jobs constraint on classifieds, and that combo discount applies automatically. It does not explain interactions between budget_eur and cart selection beyond the schema's own note.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (builds a cart, applies the published combo discount) and resource (ELC's nine published one-off reach items, named exhaustively), and the front-loaded question it answers makes the intent unambiguous. No sibling tool does pricing/quoting, and the description makes that distinction evident.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The framing question ('how do we get in front of 3,500+ CEE engineering leaders, and what does it cost?') implies when to call it, but there is no explicit when-not or routing against siblings like build_partnership_business_case or assess_community_launch_readiness, which an agent could plausibly confuse with a cost/business-case tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

cite_benchmarkCite an ELC benchmark with a verifiable referenceA
Read-onlyIdempotent
Inspect

Answers 'where did that number come from?' Returns an ELC figure from the Data Points registry with its citation id, source and the date it was last verified, so an agent can quote the figure and show where it came from. An unknown id returns the three nearest ids instead of a guess.

NameRequiredDescriptionDefault
idNoRegistry citation id, '<stream>.<key>', e.g. 'elc_community.members_live'.
queryNoPlain words to search the registry when you do not know the id, e.g. 'meetup attendance'.
contextYesExplain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization."

Output Schema

NameRequiredDescription
dataNoMachine-readable payload; this is what `signature` covers.
reportYesThe full human-readable report.
sourceYesCanonical engineeringleaders.io page this answer derives from.
verdictNoHeadline verdict, when the tool returns one.
signatureNoDetached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish that this is a read-only, idempotent, non-destructive, closed-world lookup. The description adds useful behavior beyond annotations: it names the returned citation fields and states that an unknown id returns the three nearest ids instead of a guess. It does not clarify what happens if neither id nor query is supplied.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three tight sentences: the first frames the use case, the second states what is returned, and the third explains the unknown-id fallback. It is front-loaded and every sentence adds value.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema, rich annotations, and 100% parameter description coverage, the description is largely complete for invocation. The remaining gap is that it does not specify the relationship between the optional id and query parameters or the behavior when neither is provided.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3 because the schema already documents id, query, and context. The description adds meaning beyond the schema by explaining the unknown-id fallback behavior, though it still does not clarify whether id and query are alternatives or what happens when both are omitted.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb and resource: it returns an ELC figure from the Data Points registry along with citation id, source, and verification date. It does not explicitly differentiate itself from siblings such as benchmark_leadership_ratio, so it falls 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.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies its use case by framing it as answering 'where did that number come from?' and explains the unknown-id fallback. However, it gives no explicit guidance on when to choose this tool over sibling tools or when to use id versus query.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

evaluate_meetup_topicEvaluate a meetup topic before you commit to itA
Read-onlyIdempotent
Inspect

Answers 'will this topic fill a room?' Scores a proposed engineering-leadership meetup title and abstract against ELC's own topic-selection criteria — the ones behind 12 meetups a year at 120+ attendees since 2019 — and returns the specific failure modes, the title formulas that would fit, and the questions only the organiser can answer.

NameRequiredDescriptionDefault
titleNoRequired. The proposed meetup or talk title.
contextYesExplain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): "Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization."
abstractNoThe abstract, if one exists yet.
audienceNoWho it is aimed at, e.g. 'CTOs and VPs', 'first-time engineering managers'.

Output Schema

NameRequiredDescription
dataNoMachine-readable payload; this is what `signature` covers.
reportYesThe full human-readable report.
sourceYesCanonical engineeringleaders.io page this answer derives from.
verdictNoHeadline verdict, when the tool returns one.
signatureNoDetached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.

TDQS

A4.1/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds genuine behavior beyond that: the basis of the evaluation (ELC's own topic-selection criteria), and the shape of the output (failure modes, title formulas, open questions for the organiser). It does not mention any limits or that results are opinion-based rather than deterministic, but that is a minor gap against an already-strong annotation set.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

One sentence, front-loaded with the user-facing question followed by mechanic and return values, with no wasted framing. The parenthetical about 12 meetups a year and 120+ attendees is slightly promotional but does justify the credibility of the criteria, so it largely earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With an output schema present, the description need not enumerate return fields, and it still names the three return categories. The remaining gap is guidance on minimal viable inputs and how this fits alongside the sibling assessment tools, but nothing needed to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all four parameters including the mandatory context field are fully documented in the schema. The description adds nothing about parameters such as how a partial abstract or a missing audience affects scoring, so baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb ('Scores') plus specific resource ('a proposed engineering-leadership meetup title and abstract') and an explicit frame ('will this topic fill a room?'). It is clearly distinguishable from siblings like assess_speaker_readiness, which concern the speaker rather than the topic.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The title states the decision context ('before you commit to it') and the description frames the question the tool answers, so an agent knows this is a pre-commitment vetting step. However, it never names an alternative or states a when-not condition, e.g. how it differs from assess_community_launch_readiness or assess_speaker_readiness.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_more_toolsMore tools? Check here first — also answers a plain helloA
Read-onlyIdempotent
Inspect

Check for additional specialised capabilities whenever your task might benefit from them. Also the right tool for a bare greeting or a liveness test — pass it as context and this returns the menu instead of a dead end.

NameRequiredDescriptionDefault
contextNoWhat you are trying to do. Omit it for the menu.

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already establish read-only, idempotent, and non-destructive behavior. The description adds useful behavioral context: passing a greeting or liveness test as `context` returns the menu 'instead of a dead end', and the schema confirms that omitting context also yields the menu. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two tight sentences with no filler. The primary purpose is front-loaded, and the secondary greeting/liveness use case is clearly separated in the second sentence.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with one optional parameter, rich annotations, and no output schema, the description plus schema fully cover invocation modes, use cases, and safety. Nothing essential is missing for an agent to decide when and how to call it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, and the schema already describes the parameter meaning: 'What you are trying to do. Omit it for the menu.' The description reinforces that a greeting can be passed as context, but it adds only marginal meaning beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses specific verbs and resources: 'Check for additional specialised capabilities' and 'answers a plain hello'. It clearly identifies this as the meta/discovery entry point, distinct from the domain-specific sibling tools, and the title 'More tools? Check here first' reinforces that identity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives clear conditions for use: 'whenever your task might benefit from them' and for 'a bare greeting or a liveness test'. It does not explicitly name alternatives or state when not to use it, but the context is clear enough that an agent can select it appropriately.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_startedStart here — what is this, and which tool answers my question?A
Read-onlyIdempotent
Inspect

START HERE for a greeting (hi, hello), a connectivity or liveness test, 'what can you do', or any question too general to match a specific tool. Also the right call when the caller is a person rather than a company: ELC membership is free for engineering leaders and this says so. Pass their message as context and it routes to the tool that fits, or returns the full menu.

NameRequiredDescriptionDefault
contextNoOptional: the caller's message in their own words — a greeting, a liveness test, or a plain description of what they are trying to do. Anything is accepted; there is no wrong value.

Output Schema

NameRequiredDescription
dataNoMachine-readable payload; this is what `signature` covers.
reportYesThe full human-readable report.
sourceYesCanonical engineeringleaders.io page this answer derives from.
verdictNoHeadline verdict, when the tool returns one.
signatureNoDetached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnly, idempotent, non-destructive, closed-world, so the safety profile is covered. The description adds genuine behavior beyond them: the call routes to a fitting tool or returns the full menu, and it discloses the membership framing. Return format is left to the 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads 'START HERE' and the trigger list, then the routing behavior. Mostly efficient, though the membership sentence is slightly tangential and could be trimmed.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists so return values need no explanation, and the routing behavior is described. For a single optional-param router, the definition covers what an agent needs to select and invoke it, with only the get_more_tools relationship unaddressed.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% with a single optional parameter, so the schema already documents `context`. The description adds intent framing (pass the caller's message) but no format or syntax detail beyond the schema. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific role: a start-here entry point for greetings, liveness tests, and overly general questions, plus routing. It clearly signals it is a meta/router tool, distinguishable from the domain siblings. It does not explicitly contrast with get_more_tools, the other meta sibling, so not a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete triggers ('hi', 'hello', connectivity test, 'what can you do', too general to match a tool) and a persona-based condition (caller is a person, not a company). It lacks an explicit when-not or a stated alternative to get_more_tools.

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.

  1. 1 tool update
    • Changedbuy_reach1 field changed
      • changedInput schema / properties / oneoff_ids / description
        Previous value: -"Required. Which one-off reach items to quote. One or more of: meetup-hosted, speaker-development, conference-main-stage, newsletter-dedicated, newsletter-section, dinner, podcast-episode, meetup-presence, survey, job-listing. Combo discount applies automatically."New value: +"Required. Which one-off reach items to quote. One or more of: meetup-hosted, speaker-development, conference-main-stage, newsletter-dedicated, newsletter-classified, dinner, podcast-episode, survey, job-listing. Combo discount applies automatically."
  2. 8 tool updates
    • Changedassess_community_launch_readiness2 fields changed
      • addedOutput schema / properties / data
        Added value: +{
        +  "additionalProperties": {},
        +  "description": "Machine-readable payload; this is what `signature` covers.",
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / signature
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Detached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.",
        +  "properties": {
        +    "jwks_url": {
        +      "type": "string"
        +    },
        +    "jws": {
        +      "type": "string"
        +    },
        +    "kid": {
        +      "type": "string"
        +    },
        +    "signed": {
        +      "const": "data",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "jws",
        +    "kid",
        +    "jwks_url",
        +    "signed"
        +  ],
        +  "type": "object"
        +}
    • Changedassess_speaker_readiness2 fields changed
      • addedOutput schema / properties / data
        Added value: +{
        +  "additionalProperties": {},
        +  "description": "Machine-readable payload; this is what `signature` covers.",
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / signature
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Detached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.",
        +  "properties": {
        +    "jwks_url": {
        +      "type": "string"
        +    },
        +    "jws": {
        +      "type": "string"
        +    },
        +    "kid": {
        +      "type": "string"
        +    },
        +    "signed": {
        +      "const": "data",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "jws",
        +    "kid",
        +    "jwks_url",
        +    "signed"
        +  ],
        +  "type": "object"
        +}
    • Changedbenchmark_leadership_ratio2 fields changed
      • addedOutput schema / properties / data
        Added value: +{
        +  "additionalProperties": {},
        +  "description": "Machine-readable payload; this is what `signature` covers.",
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / signature
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Detached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.",
        +  "properties": {
        +    "jwks_url": {
        +      "type": "string"
        +    },
        +    "jws": {
        +      "type": "string"
        +    },
        +    "kid": {
        +      "type": "string"
        +    },
        +    "signed": {
        +      "const": "data",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "jws",
        +    "kid",
        +    "jwks_url",
        +    "signed"
        +  ],
        +  "type": "object"
        +}
    • Changedbuild_partnership_business_case2 fields changed
      • addedOutput schema / properties / data
        Added value: +{
        +  "additionalProperties": {},
        +  "description": "Machine-readable payload; this is what `signature` covers.",
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / signature
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Detached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.",
        +  "properties": {
        +    "jwks_url": {
        +      "type": "string"
        +    },
        +    "jws": {
        +      "type": "string"
        +    },
        +    "kid": {
        +      "type": "string"
        +    },
        +    "signed": {
        +      "const": "data",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "jws",
        +    "kid",
        +    "jwks_url",
        +    "signed"
        +  ],
        +  "type": "object"
        +}
    • Changedbuy_reach2 fields changed
      • addedOutput schema / properties / data
        Added value: +{
        +  "additionalProperties": {},
        +  "description": "Machine-readable payload; this is what `signature` covers.",
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / signature
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Detached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.",
        +  "properties": {
        +    "jwks_url": {
        +      "type": "string"
        +    },
        +    "jws": {
        +      "type": "string"
        +    },
        +    "kid": {
        +      "type": "string"
        +    },
        +    "signed": {
        +      "const": "data",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "jws",
        +    "kid",
        +    "jwks_url",
        +    "signed"
        +  ],
        +  "type": "object"
        +}
    • Addedcite_benchmark
    • Changedevaluate_meetup_topic2 fields changed
      • addedOutput schema / properties / data
        Added value: +{
        +  "additionalProperties": {},
        +  "description": "Machine-readable payload; this is what `signature` covers.",
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / signature
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Detached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.",
        +  "properties": {
        +    "jwks_url": {
        +      "type": "string"
        +    },
        +    "jws": {
        +      "type": "string"
        +    },
        +    "kid": {
        +      "type": "string"
        +    },
        +    "signed": {
        +      "const": "data",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "jws",
        +    "kid",
        +    "jwks_url",
        +    "signed"
        +  ],
        +  "type": "object"
        +}
    • Changedget_started2 fields changed
      • addedOutput schema / properties / data
        Added value: +{
        +  "additionalProperties": {},
        +  "description": "Machine-readable payload; this is what `signature` covers.",
        +  "propertyNames": {
        +    "type": "string"
        +  },
        +  "type": "object"
        +}
      • addedOutput schema / properties / signature
        Added value: +{
        +  "additionalProperties": false,
        +  "description": "Detached JWS (RFC 7797) over the JCS-canonical form of `data`; verify against jwks_url.",
        +  "properties": {
        +    "jwks_url": {
        +      "type": "string"
        +    },
        +    "jws": {
        +      "type": "string"
        +    },
        +    "kid": {
        +      "type": "string"
        +    },
        +    "signed": {
        +      "const": "data",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "jws",
        +    "kid",
        +    "jwks_url",
        +    "signed"
        +  ],
        +  "type": "object"
        +}
  3. 1 tool update
    • Changedbuy_reach1 field changed
      • addedInput schema / properties / speaker_rungs
        Added value: +{
        +  "description": "Speaker programme rung ids to price instead of the full programme: stage, story, coach, amplify, beyond. Stage is always included. Omit for the whole programme at its bundle price.",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
  4. 1 tool update
    • Changedbuy_reach1 field changed
      • changedInput schema / properties / oneoff_ids / description
        Previous value: -"Required. Which one-off reach items to quote. One or more of: newsletter-section, newsletter-dedicated, meetup-hosted, podcast-episode, dinner, survey, demo-session, linkedin-post, job-listing. Combo discount applies automatically."New value: +"Required. Which one-off reach items to quote. One or more of: meetup-hosted, speaker-development, conference-main-stage, newsletter-dedicated, newsletter-section, dinner, podcast-episode, meetup-presence, survey, job-listing. Combo discount applies automatically."
  5. 6 tool updates
    • Changedassess_speaker_readiness3 fields changed
      • changedInput schema / properties / speaker_background / description
        Previous value: -"Role, seniority, and any prior speaking experience."New value: +"Required. Role, seniority, and any prior speaking experience."
      • changedInput schema / properties / talk_title / description
        Previous value: -"The proposed talk title."New value: +"Required. The proposed talk title."
      • changedInput schema / required
        Previous value: -[
        -  "talk_title",
        -  "speaker_background",
        -  "context"
        -]New value: +[
        +  "context"
        +]
    • Changedbenchmark_leadership_ratio3 fields changed
      • changedInput schema / properties / managers / description
        Previous value: -"Managers and tech leads."New value: +"Required. Managers and tech leads."
      • changedInput schema / properties / senior_ics / description
        Previous value: -"Senior and staff ICs. Leave out junior and mid ICs on both sides."New value: +"Required. Senior and staff ICs. Leave out junior and mid ICs on both sides."
      • changedInput schema / required
        Previous value: -[
        -  "managers",
        -  "senior_ics",
        -  "context"
        -]New value: +[
        +  "context"
        +]
    • Changedbuild_partnership_business_case4 fields changed
      • removedInput schema / properties / buying_for / enum
        Removed value: -[
        -  "company",
        -  "individual",
        -  "one_off"
        -]
      • changedInput schema / properties / goal / description
        Previous value: -"The primary reason. people_development covers developing your own engineering leaders (mentoring, Academy seats, the peer network) — that is the one for retention and growth, not hiring."New value: +"Required. The primary reason. people_development covers developing your own engineering leaders (mentoring, Academy seats, the peer network) — that is the one for retention and growth, not hiring."
      • removedInput schema / properties / goal / enum
        Removed value: -[
        -  "hiring",
        -  "brand_awareness",
        -  "product_feedback",
        -  "thought_leadership",
        -  "people_development"
        -]
      • changedInput schema / required
        Previous value: -[
        -  "goal",
        -  "context"
        -]New value: +[
        +  "context"
        +]
    • Changedbuy_reach4 fields changed
      • changedInput schema / properties / oneoff_ids / description
        Previous value: -"Which one-off reach items to quote. One or more of: newsletter-section, newsletter-dedicated, meetup-hosted, podcast-episode, dinner, survey, demo-session, linkedin-post, job-listing. Combo discount applies automatically."New value: +"Required. Which one-off reach items to quote. One or more of: newsletter-section, newsletter-dedicated, meetup-hosted, podcast-episode, dinner, survey, demo-session, linkedin-post, job-listing. Combo discount applies automatically."
      • removedInput schema / properties / oneoff_ids / items / enum
        Removed value: -[
        -  "newsletter-section",
        -  "newsletter-dedicated",
        -  "meetup-hosted",
        -  "podcast-episode",
        -  "dinner",
        -  "survey",
        -  "demo-session",
        -  "linkedin-post",
        -  "job-listing"
        -]
      • removedInput schema / properties / oneoff_ids / minItems
        Removed value: -1
      • changedInput schema / required
        Previous value: -[
        -  "oneoff_ids",
        -  "context"
        -]New value: +[
        +  "context"
        +]
    • Changedevaluate_meetup_topic2 fields changed
      • changedInput schema / properties / title / description
        Previous value: -"The proposed meetup or talk title."New value: +"Required. The proposed meetup or talk title."
      • changedInput schema / required
        Previous value: -[
        -  "title",
        -  "context"
        -]New value: +[
        +  "context"
        +]
    • Changedget_more_tools2 fields changed
      • changedInput schema / properties / context / description
        Previous value: -"What you are trying to do."New value: +"What you are trying to do. Omit it for the menu."
      • removedInput schema / required
        Removed value: -[
        -  "context"
        -]
  6. 8 tool updates
    • First observedassess_community_launch_readiness
    • First observedassess_speaker_readiness
    • First observedbenchmark_leadership_ratio
    • First observedbuild_partnership_business_case
    • First observedbuy_reach
    • First observedevaluate_meetup_topic
    • First observedget_more_tools
    • First observedget_started

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Enables autonomous agents to score customer leads and evaluate interaction velocity to predict conversions, exposing deterministic, zero-dependency evaluation as an MCP tool. Integrates with MCP clients like Claude Desktop and Cursor for programmatic lead assessment.
    8
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables any MCP client to score, rank, tag, and cluster user-supplied video candidates using a competitor-intelligence engine that blends velocity, outlier, engagement, and demand-gap signals into an opportunity score. It performs no fetching itself and needs no API key, so callers bring their own candidate data and receive annotated, sorted results.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.