Skip to main content
Glama

case-studies

Server Details

Search DataArt case studies by technology, industry, service, or keyword.

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 42 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.6/5.0

Scored across 3 tools

Disambiguation5/5

The three tools have clearly distinct purposes: search_cases finds cases, get_case retrieves full content for a specific case, and get_case_tags lists filtering tags. Descriptions explicitly cross-reference each other, reducing any risk of misselection.

Naming Consistency5/5

All tool names use consistent snake_case with predictable verb_noun patterns: get_case, get_case_tags, and search_cases. The get_case_tags variation is a natural read-only subresource naming choice and remains readable.

Tool Count5/5

Three tools are well-scoped for a read-only case-studies server: discovery via search, tag discovery for filtering, and full-content retrieval. Each tool earns its place without redundancy.

Completeness5/5

The surface covers the core lifecycle for browsing case studies: browse all via empty query, search by text and tags with pagination, discover tags, and fetch full case content by id, slug, or url. No obvious read-only operations are missing for the stated purpose.

Available Tools

3 tools
get_caseGet a DataArt case studyA
Read-only
Inspect

Get the full content of one case study (article text, challenge, solution, conclusion). The texts are Markdown. Pass the id, slug or url returned by search_cases.

NameRequiredDescriptionDefault
idOrSlugYesCase study id, slug or url from search_cases.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds genuinely new traits: the returned texts are Markdown, the content includes named sections, and the identifier must originate from search_cases. It doesn't discuss rate limits or errors, but for a read-only lookup that is minor.

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 compact sentences; the payload and return content come first, the identifier requirement second. No filler, no restating of the title.

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 only one parameter, no output schema and full annotation coverage, the description supplies everything an agent needs: where the id comes from and what the response body will contain. Nothing material is missing for calling this correctly.

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 the single idOrSlug parameter is already fully documented. The description restates the same fact ('Pass the id, slug or url returned by search_cases') without adding format details or edge-case behavior beyond the schema. Baseline 3 applies when the schema does the work.

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 ('Get') and resource ('full content of one case study') and enumerates the sections returned (article text, challenge, solution, conclusion). This clearly separates it from search_cases, which returns a result list rather than a single document.

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 second sentence routes the agent through search_cases first ('Pass the id, slug or url returned by search_cases'), which gives a clear usage context and implies the retrieval workflow. There is no explicit exclusion statement, but the sibling relationship is unmistakable.

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

get_case_tagsList DataArt case study filtersA
Read-only
Inspect

Get all available tags that can be used to filter case studies. Returns a list of tags with id, parentId, and title. The list is flat: parentId is always null. Use the tag ids in the search_cases tagIds parameter.

NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so safety is covered. The description adds real behavioral detail beyond that: the returned structure (id, parentId, title) and the fact that the list is flat with parentId always null, which prevents an agent from expecting hierarchy.

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?

Three short sentences, front-loaded with purpose, then return shape, then the cross-tool handoff. Every sentence carries distinct information with no repetition of the schema or annotations.

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 no output schema and no parameters, the description correctly compensates by describing the return payload (id, parentId, title) and the flat-list quirk. Nothing needed to call this correctly is missing.

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?

This tool takes zero parameters, so the baseline is 4. The only parameter reference is to the sibling's tagIds field, which is helpful cross-tool guidance but not a parameter of this tool.

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+resource: 'Get all available tags that can be used to filter case studies.' It also names the sibling tool (search_cases) that consumes the output, so an agent can distinguish it from get_case and search_cases without opening schemas.

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 clear context for use ('tags that can be used to filter case studies') and routes the agent forward: 'Use the tag ids in the search_cases tagIds parameter.' No explicit when-not condition or alternative tool for listing filters, but the usage path is unambiguous.

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

search_casesSearch DataArt case studiesA
Read-only
Inspect

Search DataArt case studies by text query and/or tag IDs with pagination. The query can be keywords or a whole question: it is split into words, common words are ignored, whole words are matched in the title, description and tag names (British/American spelling and plurals are folded). Cases containing every word come first (allTermsTotal of them), then cases containing some of the words, best match first. Pass an empty query to browse all cases. Use get_case_tags to discover available tag IDs before filtering. Text and tags combine with AND. Multiple tags combine per tagMatch: "any" (default) or "all". Returns short records; use get_case with the id, slug or url of a result to get its full text.

NameRequiredDescriptionDefault
pageNoPage number, 1-based. Default is 1.
queryYesKeywords or a question, e.g. "telemedicine" or "Have you built a trading platform?". Pass empty string to skip text filtering.
tagIdsNoComma-separated tag IDs to filter by (e.g. "12,45"). Pass empty string to skip tag filtering.
pageSizeNoItems per page. Default is 20, maximum 50.
tagMatchNo"any" (default) - case has at least one of the tags; "all" - case has every tag.any

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only cover safety (readOnlyHint, openWorldHint), so the description carries the behavioral burden and does so richly: word splitting, stop-word removal, whole-word matching across title/description/tag names, British/American and plural folding, staged result ranking with allTermsTotal, AND combination of text+tags, and tagMatch semantics. It even states the return shape ('short records'), which is essential since there is no output schema.

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

Conciseness4/5

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

Front-loaded with the core action and overall tight, with no filler sentences. It is a dense single paragraph with several long clauses, so it is slightly harder to scan than an ideal definition, but nearly every clause conveys behavior an agent cannot get from the structured fields.

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 5-parameter search tool with no output schema, the description covers filtering, combination logic, ranking, pagination (via schema), and the return shape. It also links forward to the exact sibling needed to expand a result, leaving nothing an agent requires before calling it.

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 and the schema already documents page/pageSize/tagMatch defaults. The description adds real meaning beyond that: the ranking semantics of 'query', the empty-string browse behavior, that text and tags combine with AND, and how multiple tags interact via tagMatch.

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 and resource ('Search DataArt case studies') plus the two filter dimensions (text query and/or tag IDs). It is immediately distinguishable from siblings get_case (fetch full text) and get_case_tags (discover tag IDs), which the description names explicitly.

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

Usage Guidelines5/5

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

Gives concrete when-to-use routing: 'Use get_case_tags to discover available tag IDs before filtering' and 'use get_case with the id, slug or url of a result to get its full text.' It also gives a when-to-use-this-way case ('Pass an empty query to browse all cases'), so an agent needs no inference to pick the right tool.

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
    • Changedsearch_cases1 field changed
      • changedInput schema / properties / query / description
        Previous value: -"Text to search in title and description. Pass empty string to skip text filtering."New value: +"Keywords or a question, e.g. \"telemedicine\" or \"Have you built a trading platform?\". Pass empty string to skip text filtering."
  2. 1 tool update
    • Addedget_case
  3. 1 tool update
    • Changedsearch_cases1 field changed
      • addedInput schema / properties / tagMatch
        Added value: +{
        +  "default": "any",
        +  "description": "\"any\" (default) - case has at least one of the tags; \"all\" - case has every tag.",
        +  "type": "string"
        +}
  4. 2 tool updates
    • First observedget_case_tags
    • First observedsearch_cases

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources