Analytics Legends — SAP Analytics Intelligence
Server Details
AI agent for SAP analytics: firms, day rates, contract radar, news, concepts, studies
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
Full call logging
Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.
Tool access control
Enable or disable individual tools per connector, so you decide what your agents can and cannot do.
Managed credentials
Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.
Usage analytics
See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.
Tool Definition Quality
Average 4.4/5 across 10 of 10 tools scored. Lowest: 3.8/5.
Each tool targets a distinct resource or action (opportunities, concepts, benchmarks, firms, modules, studies, news) with no overlap, making it easy for an agent to select the correct tool.
All tool names follow a consistent verb_noun pattern with underscores (e.g., find_opportunities, list_firm_kinds), and verbs are predictably chosen (get, list, search).
With 10 tools, the server is well-scoped for its specialized domain of SAP analytics intelligence, covering all necessary operations without being overly numerous or sparse.
The tools cover all publicly available operations from the Analytics Legends free tier: searching, listing, and fetching key entities, with no obvious gaps in the advertised surface.
Available Tools
10 toolsfind_opportunitiesSearch the public SAP analytics contract radarARead-onlyIdempotentInspect
Search the publicly promoted SAP analytics contract and permanent-role feed: title, hiring firm, location, remote mode, contract type, rate band and the original posting URL. This is the anonymous radar tranche only — the full radar is a paid tier and is not served here.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max rows (hard cap 50). | |
| query | No | Free-text filter, matched case-insensitively. | |
| location | No | City, matched case-insensitively as a substring of the posting's location. Measured 2026-07-30, the 19 active rows carry 10 cities, all German: Hamburg (6), Frankfurt am Main (3), Bremen (2), Munich (2), Cologne, Dortmund, Hanover, Landshut, Mannheim, Stuttgart. There is NO country filter: country_code is NULL on every row, so the radar cannot be sliced by country — that is a gap in this corpus, not in the market. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | |
| tool | Yes | |
| _meta | No | |
| _attribution | Yes | |
| result_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint. The description adds valuable behavioral context: the data is from a public radar, limited to anonymous tranche, and notes that country_code is NULL on all rows, explaining a data limitation beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences: the first states the action and fields, the second explains the limitation. Every sentence earns its place with no fluff.
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?
Given the existence of an output schema, the description need not cover return values. It sufficiently explains the tool's purpose, scope, and key data characteristics (cities, no country filter), making it complete for this simple tool.
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 description does not need to repeat parameter definitions. However, it adds meaningful context for the location parameter by listing example cities and explicitly stating the lack of a country filter, which aids correct usage.
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 the tool searches the public SAP analytics contract and permanent-role feed, listing specific fields. It distinguishes from the full radar paid tier and from sibling tools like search_firms or search_news by specifying its unique resource and scope.
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 explicitly notes this is the anonymous radar tranche only and the full radar is not served, providing clear context on when to use this tool. However, it does not directly mention alternative siblings for comparison.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_conceptGet one concept entry in fullARead-onlyIdempotentInspect
Fetch one concept entry by slug: summary, why it matters, key points and body text (clamped). Written by a named human editor, not generated.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Concept slug from search_concepts. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | |
| tool | Yes | |
| _meta | No | |
| _attribution | Yes | |
| result_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds context beyond annotations: the body text is 'clamped' (truncated), and the content is written by a named human editor (not generated), which are important behavioral traits.
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 two sentences long, with the first sentence front-loading the verb, resource, and return structure. Every sentence adds value, with no wasted words.
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?
Given the simple parameter set (one required slug), comprehensive annotations, and presence of an output schema, the description provides sufficient context. It adds the unique detail about human authorship, making it complete for an AI agent to understand the tool's function and output.
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 schema already fully describes the single parameter 'slug' as 'Concept slug from search_concepts.' The description repeats 'by slug' but adds no new semantics beyond what the schema provides, so a baseline score of 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?
The description clearly states the verb 'Fetch' and the resource 'one concept entry by slug', and details the content returned (summary, why it matters, key points, body text). It distinguishes itself from the sibling 'search_concepts' by focusing on retrieving a single full entry.
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 implies usage when a specific concept slug is available and the full entry is needed, but does not explicitly contrast with alternatives like 'search_concepts' or provide guidance on when to choose this tool over others.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_day_rate_benchmarkPublic SAP analytics day-rate aggregateARead-onlyIdempotentInspect
The PUBLIC day-rate aggregate for SAP analytics freelance work: min/max daily rate by country, specialisation and seniority, with a sample size and a quarter stamp. This is the free aggregate published at analyticslegends.ai/api/market-rates.json. The quartile bands (p25/p50/p75) are a paid Consultant-tier deliverable and are NOT in this response — do not infer them.
| Name | Required | Description | Default |
|---|---|---|---|
| country | No | ISO-3166-1 alpha-2 country code, e.g. DE, FR, CH. | |
| seniority | No | e.g. senior, principal. | |
| specialisation | No | e.g. datasphere, bdc, sac, bw4hana, joule. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | |
| tool | Yes | |
| _meta | No | |
| _attribution | Yes | |
| result_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnlyHint=true, openWorldHint=true, idempotentHint=true, destructiveHint=false. Description adds context about the data source, access level, and explicitly states what is and isn't in the response, avoiding misinterpretation.
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 concise sentences: first states what the tool provides, second states what it does not provide and warns against inference. No wasted words, front-loaded.
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?
Given the tool's simplicity, the description covers purpose, parameters, data source, and limitations. An output schema exists, so description does not need to detail return values. Lacks only minor details like optionality or pagination, but those are not needed.
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% with each parameter documented. Description does not add new meaning beyond the schema, merely rephrasing. 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?
Clearly states it provides a public SAP analytics day-rate aggregate with min/max daily rate by country, specialisation, seniority, plus sample size and quarter stamp. Distinct from sibling tools like find_opportunities or search_firms by focusing on rate data.
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 identifies the tool as the free aggregate from a specific URL and warns that quartile bands are not included and should not be inferred. Clear when to use (for free aggregate) and what not to expect.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_firmGet one firm's published profileARead-onlyIdempotentInspect
Fetch one organisation from the published directory by its slug (as returned by search_firms). Returns the same public fields plus its declared partnerships count. Does not return the paid firm-intelligence profile, contacts, or any person.
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | Firm slug, e.g. 'accenture'. From search_firms.rows[].slug. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | |
| tool | Yes | |
| _meta | No | |
| _attribution | Yes | |
| result_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint. Description adds value by specifying the returned fields (public fields plus partnerships count) and explicitly excluding certain data. 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.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences total, front-loaded with the core action and resource. Every clause adds value: slug source, return fields, exclusions. No irrelevant information.
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?
Given output schema exists, description adequately covers return content (public fields + partnerships count) and exclusions. The tool is simple with one parameter, so the description is complete enough for an agent to invoke correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% so baseline 3. Description adds meaning by providing an example slug ('accenture') and stating the slug comes from search_firms, which helps the agent understand the parameter's origin and format beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description uses specific verb 'Fetch' and identifies the resource as 'one organisation from the published directory by its slug'. It clearly distinguishes from sibling tool search_firms (which returns many firms) and other tools via the slug reference.
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?
Description states slug comes from search_firms, giving clear context for use. It also explicitly lists what is NOT returned (paid profile, contacts, persons), helping agents decide to use this tool vs alternatives. No explicit when-not-to-use but good implicit guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_firm_kindsList firm kinds with live countsARead-onlyIdempotentInspect
Breakdown of the published firm directory by organisation kind, with a live row count per kind. Use this before search_firms to know what the population actually is instead of guessing.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | |
| tool | Yes | |
| _meta | No | |
| _attribution | Yes | |
| result_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate readOnly and idempotent. The description adds that counts are 'live' and the output is a breakdown, which is useful context beyond annotations. No contradictions.
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 sentences, front-loaded with purpose, then usage advice. Every sentence adds value; no wasted words.
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 0 parameters, an output schema present, and good annotations, the description fully explains the tool's purpose and when to use it. No gaps for the agent.
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?
There are no parameters, so the description does not need to add param details. Baseline 4 applies; the description explains what the tool returns without parameter ambiguity.
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 it provides a breakdown of the published firm directory by organisation kind with live row counts, using specific verbs and resource. It explicitly distinguishes from sibling tool search_firms by advising to use this before searching to know the population.
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 explicitly says 'Use this before search_firms to know what the population actually is instead of guessing,' providing clear when-to-use guidance and an alternative.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_sap_modulesSAP analytics module taxonomyARead-onlyIdempotentInspect
The canonical SAP module/product taxonomy Analytics Legends classifies against (codes and EN/FR labels by category). Use it to normalise a user's loose product wording — 'SAC', 'Analytics Cloud', 'Datasphere' — onto the codes the other tools filter on.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max rows (hard cap 50). | |
| query | No | Free-text filter, matched case-insensitively. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | |
| tool | Yes | |
| _meta | No | |
| _attribution | Yes | |
| result_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint, ensuring safety. The description adds value by explaining the taxonomy's purpose and normalization role, though it does not detail behavior beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three sentences, front-loaded with purpose, no wasted words. Each sentence contributes meaningfully.
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 an output schema present, the description sufficiently covers the tool's return format and use case. It provides complete context for an AI to understand when and how to use the tool.
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. The description does not elaborate on parameters beyond the schema's definitions, which is adequate given full documentation.
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 the tool provides the canonical SAP module/product taxonomy with codes and labels for normalization purposes. It distinguishes itself from sibling search tools by specifying it's a list/retrieval tool for controlled vocabulary.
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 instructs to use for normalizing loose user product wording into codes that other tools filter on, providing concrete examples and clear usage context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_studiesList the deep-research studies (metadata only)ARead-onlyIdempotentInspect
List the Analytics Legends deep-research studies with their edition, as-of date, audience, word count and canonical URL. METADATA ONLY: study bodies are a paid Legend-tier deliverable and are not served by this endpoint. Use this to tell a reader that a study exists and where to read it.
| Name | Required | Description | Default |
|---|---|---|---|
| lang | No | Language code, EN or FR. | |
| limit | No | Max rows (hard cap 50). | |
| query | No | Free-text filter, matched case-insensitively. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | |
| tool | Yes | |
| _meta | No | |
| _attribution | Yes | |
| result_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds valuable context: that the endpoint only returns metadata and explains why (paid deliverable). This goes beyond annotations by clarifying the scope and limitations.
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 two sentences: the first lists the returned fields, the second clarifies metadata-only and the use case. No redundant or extraneous information. Every sentence adds value.
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 full schema coverage, annotations, and an output schema, the description provides sufficient context. It explains the key behavioral constraint (no bodies) and why. No additional information is needed given the tool's simplicity.
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. The description does not add extra meaning to the parameters (lang, limit, query) beyond what the schema already provides. It does mention the output fields, which helps contextualize usage but not parameter semantics.
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 the tool lists deep-research studies, specifies the fields returned (edition, as-of date, audience, word count, canonical URL), and distinguishes it from a paid endpoint that serves full bodies. No sibling tool lists studies, so differentiation is implicit but sufficient.
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 explicitly states the use case: 'Use this to tell a reader that a study exists and where to read it.' It also clarifies what not to expect (study bodies). However, it does not directly compare to sibling tools, though none offer similar functionality.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_conceptsSearch the SAP analytics concept encyclopaediaARead-onlyIdempotentInspect
Search the SAP analytics concept encyclopaedia — the vocabulary of the stack, written for practitioners. Returns titles and summaries; call get_concept for the full entry.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max rows (hard cap 50). | |
| query | No | Free-text filter, matched case-insensitively. | |
| category | No | Concept category, matched case-insensitively as an exact value OR a prefix. The 14 real values are long labels, measured 2026-07-30: Generative AI Foundations (55), Joule & SAP AI (42), Career & Practice (29), Governance & Compliance (25), Architecture & Performance (25), SAC (Analytics Cloud) (22), BDC Platform (22), Adjacent Stacks (19), Datasphere Core (17), Sales & Commercial (16), Productivity & AI (10), Industry Solutions (10), BW/4HANA & Migration (9), Data Engineering & Integration (1). So category:"datasphere" reaches Datasphere Core. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | |
| tool | Yes | |
| _meta | No | |
| _attribution | Yes | |
| result_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint. The description adds that the tool returns titles and summaries, which is behavioral context beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, front-loaded with purpose, no unnecessary words. Efficient and clear.
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?
Given the output schema exists, the description adequately covers purpose, usage guidance, and parameter semantics. No gaps for a search tool.
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 description adds significant value for the category parameter by listing all 14 actual values with counts and example usage. Schema coverage is 100% but description enriches meaning.
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 the tool searches a concept encyclopedia, specifies the resource (SAP analytics concept encyclopedia), and distinguishes from sibling get_concept by noting it returns titles and summaries.
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 mentions calling get_concept for full entries, providing an alternative. Does not cover when not to use this tool, but the context is clear enough for an agent.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_firmsSearch the SAP analytics firm directoryARead-onlyIdempotentInspect
Search the published Analytics Legends directory of SAP analytics service providers — placement agencies, Big-4 and ESN practices, SAP vendors, platforms and community groups — by country, kind and free text. Returns name, HQ country/city, website, careers URL and a one-line editorial claim. SAP END-CUSTOMER companies are NOT in this directory: they are a separate paid dataset and are excluded by predicate.
| Name | Required | Description | Default |
|---|---|---|---|
| kind | No | Restrict to one organisation kind. Call list_firm_kinds for live counts. | |
| limit | No | Max rows (hard cap 50). | |
| query | No | Free-text filter, matched case-insensitively. | |
| country | No | ISO-3166-1 alpha-2 country code, e.g. DE, FR, CH. |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | |
| tool | Yes | |
| _meta | No | |
| _attribution | Yes | |
| result_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds the specific return fields (name, HQ, website, etc.) and the exclusion of end-customers. It does not mention limit or pagination behavior, but those are in the 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 three sentences that are concise and well-structured: the first explains the tool's action and scope, the second lists what is returned, and the third clarifies an important exclusion. No redundant information.
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?
Given the tool's moderate complexity (4 parameters, output schema exists, annotations fully cover safety), the description is complete. It explains the data source, filters, return values, and exclusions. The schema and output schema cover the remaining details.
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 all parameters are documented. The description adds value by explaining the parameters in context (e.g., 'by country, kind and free text') and hints that list_firm_kinds can provide live counts for the 'kind' enum, which goes beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it searches the 'Analytics Legends directory' of SAP analytics service providers, enumerates the included types (placement agencies, Big-4/ESN practices, etc.), and distinguishes what is returned. It differs from sibling tools like get_firm (single firm retrieval) and list_firm_kinds (listing filter options).
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 explicitly says to use this tool for searching the directory by country, kind, and free text. It also clarifies that SAP end-customer companies are not included and are in a separate dataset. It does not directly compare to siblings like get_firm, but the context makes the distinction clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_newsSearch SAP analytics market newsARead-onlyIdempotentInspect
Search the curated SAP analytics news corpus (SAP Datasphere, Business Data Cloud, SAC, BW/4HANA, Databricks, the 2027/2030 maintenance window). Each item returns the Analytics Legends citation URL AND the upstream publisher's source_url — cite both.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Max rows (hard cap 50). | |
| query | No | Free-text filter, matched case-insensitively. | |
| category | No | Category code, matched case-insensitively. Real values and their row counts, measured 2026-07-30: AI (3804), SAP (280), SAC (98), Market (90), Joule (89), BDC (55), Datasphere (17), Regulation (16), Analyst (6), Partners (6), Product (6). |
Output Schema
| Name | Required | Description |
|---|---|---|
| rows | Yes | |
| tool | Yes | |
| _meta | No | |
| _attribution | Yes | |
| result_count | Yes |
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, destructiveHint, so the safety profile is clear. The description adds context about the curated corpus and the need to cite both URLs, but does not disclose additional behavioral traits like pagination or rate limits.
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 two sentences, front-loaded with purpose, and every sentence adds value. No wasted words.
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?
Given the presence of output schema, annotations, and clear parameter descriptions, the description covers purpose and output format adequately. It is complete for a search tool with limit and filters.
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% with descriptions for all three parameters. The description does not add any parameter-specific meaning beyond the schema, so scores at baseline.
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 specifies the verb 'Search' and the resource 'curated SAP analytics news corpus', listing specific topics. It distinguishes this tool from siblings like search_concepts and search_firms, which search different domains.
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 guidance on citing results (both URLs) but does not mention when to use this tool versus alternatives, nor when not to use it. No explicit usage context is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!