Skip to main content
Glama

Server Details

Tested AI agent skill files (SKILL.md), bought once over x402 for cents on Base. Free MCP search.

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

TDQS

A4/5.0

Scored across 4 tools

Disambiguation5/5

Each tool targets a distinct action: search_skills for discovery, list_categories for browsing the taxonomy, get_skill for a single card plus payment details, and redownload_skill for retrieving a purchased file. The search-vs-list_categories boundary is naturally clear since one filters skills and the other enumerates categories. No two tools appear to do the same thing.

Naming Consistency5/5

All four tools follow a strict snake_case verb_noun pattern: get_skill, list_categories, redownload_skill, search_skills. The verbs are distinct and the noun part consistently refers to the skill/category resource. No mixed conventions.

Tool Count4/5

Four tools is lean but appropriate for a browse-and-buy skill marketplace: three cover discovery and one covers re-retrieval. It is slightly thin (no tool for listing past purchases or receipts), though the payment flow is intentionally handled over HTTP outside MCP.

Completeness4/5

The surface covers discovery (search, categories, detail with pricing) and post-purchase re-download, which is the core lifecycle. Minor gaps exist: no way to list or manage prior purchases/receipts and no purchase tool, partly by design since payments happen over HTTP.

Available Tools

4 tools
get_skillGet a skill and its priceA
Read-onlyIdempotent
Inspect

Get one skill card (free) plus the exact x402 payment_required body for its one-time purchase of the SKILL.md file, and how_to_buy. Price is price_usd on the card. Buying is over HTTP; MCP does not take payments.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe skill's slug, as returned by search_skills (for example 'humanize'). An unknown or unlisted slug is an error.

Output Schema

ParametersJSON Schema
NameRequiredDescription
faqYesQuestions and answers about the skill.
nameYesDisplay name.
slugYesStable identifier of the skill; use it with get_skill.
tagsYesLowercase tags.
sha256YesSHA-256 of the file, lowercase hex.
testedYesHow the skill was tested; null if not recorded.
buy_urlYesHTTP address to buy the file (x402).
licenseYes
not_forYesWhat the skill is not for; null if not stated.
outlineYesHeadings of the file.
paymentYesShort payment summary: protocol, asset, network and whether selling is open.
versionYesCurrent semantic version of the SKILL.md file.
categoryYesCategory slug; null if the skill has no category yet.
examplesYesBefore/after examples from the test.
keywordsYesSearch keywords.
mcp_toolYesAlways null: buying is over HTTP, not MCP.
page_urlYesPublic page of the skill.
use_whenYesWhat the skill is for.
image_urlYesPreview image; null if none.
languagesYesLanguage codes the skill works in, or 'any'.
price_usdYesOne-time price in US dollars, as a decimal string.
how_to_buyYesSteps to buy over HTTP.
size_bytesYesSize of the SKILL.md file in bytes.
updated_atYesISO 8601 time of the last update.
price_microYesThe same price in millionths of a dollar.
related_urlYesAPI address of the related skills.
category_urlYesPage of the category; null if there is no category.
markdown_urlYesThe same page as Markdown.
purchases_countYesNumber of purchases; null until there are at least 10.
payment_requiredYesThe exact body the HTTP shop answers with HTTP 402; the client signs it. Buying is over HTTP.
redownload_url_templateYesHTTP address template of the free re-download; {token} is the receipt token.

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare read-only, idempotent, closed-world behavior, so the bar is lower; the description clears it by disclosing the cost model (card is free), the exact price field (price_usd), the x402 payment_required body, and that payment happens outside MCP. It does not cover error handling or any auth/rate-limit caveats beyond what the schema states.

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?

Three dense sentences with the core purpose front-loaded and no filler; the x402 jargon makes it slightly heavy but every clause carries information (price location, purchase channel, MCP's non-role).

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 not be explained, yet the description still orients the agent on the non-obvious payment flow and the price field. Given the unusual purchase model and single documented parameter, it is essentially complete, missing only routing guidance relative to siblings.

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?

One parameter at 100% schema coverage, so the schema already documents slug fully (including the unknown-slug error). The description adds no parameter-level meaning beyond what the schema provides, which is the baseline 3 case.

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 verb and resource (get one skill card) and enumerates the payload pieces returned: the card, the x402 payment_required body, and how_to_buy. The singular 'one skill card' implicitly separates it from search_skills, but no sibling is named, so differentiation is inferred rather than explicit.

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 usage (fetch a single skill's details and its price) and supplies one useful boundary — 'Buying is over HTTP; MCP does not take payments' — but never says when to prefer this over search_skills or redownload_skill, nor names prerequisites.

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

list_categoriesList skill categoriesA
Read-onlyIdempotent
Inspect

List the twelve skill categories (free) with a short introduction and how many skills are listed in each. Use a slug as the category filter of search_skills.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
categoriesYesAll skill categories, in display order.

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already cover read-only, idempotent, closed-world safety. The description adds that the list is fixed at twelve and free, which is genuinely useful context an agent cannot derive from annotations alone. It does not need to describe return values since an output schema exists.

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 tight sentences with zero waste. Purpose first, then the routing instruction.

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?

Fully complete for a zero-parameter listing tool: the output schema handles return details, annotations handle safety, and the description contributes the cardinality and the slug-to-search_skills linkage.

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?

Zero parameters, so baseline is 4. The description appropriately spends no space on parameters and instead explains the output's role (slug) as input elsewhere.

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+resource ('List the twelve skill categories') and even quantifies scope and content returned. It is clearly distinguishable from search_skills and get_skill.

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?

Explicitly tells the agent how to use the result: 'Use a slug as the category filter of search_skills.' This is direct, actionable guidance that names the downstream tool and the field to take from it.

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

redownload_skillRe-download a bought skillAInspect

Re-download the SKILL.md file you already bought (free), using the token from your purchase receipt. Always returns the current version of the skill.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenYesThe re-download token from your purchase receipt (the 'redownload' part): 64 lowercase hex characters. Not your payment signature.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okYesAlways true on success.
fileYesThe file itself.
nameYesDisplay name.
bytesYesSize of the file in bytes.
skillYesSlug of the skill.
sha256YesSHA-256 of the delivered file, lowercase hex.
installYesWhere to install the file.
licenseYes
versionYesThe current version being delivered (may be newer than the one first bought).
purchaseYesYour purchase record.
changelogYesWhat changed in this version; null if not recorded.

TDQS

A3.6/5.0
Behavior3/5

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

Adds real value beyond the annotations: the operation is free, requires the receipt token, and 'always returns the current version of the skill'. However, it does not reconcile the notable annotations readOnlyHint=false and idempotentHint=false for what reads like a retrieval, nor explain any side effect or why repeated calls are non-idempotent.

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 tight sentences with zero filler; the action, cost, and token provenance are front-loaded and the freshness guarantee closes it out.

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, return values need no explanation, and the description covers purpose, cost, token source, and freshness. The only gap is the unexplained non-read-only/non-idempotent behavior flagged by annotations.

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% and the token parameter is well documented there (64 lowercase hex, not the payment signature). The description's 'token from your purchase receipt' merely restates the schema's source hint, adding no syntax or format detail beyond it.

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?

Specific verb+resource: 'Re-download the SKILL.md file you already bought', with the purchase-receipt token as the scoping mechanism. It implicitly separates itself from get_skill by requiring prior purchase and a receipt token, but never names a sibling, so the differentiation is inferred rather than stated.

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 the use case (you already bought the skill and hold a receipt token) but gives no explicit when-not guidance or named alternative such as get_skill for unowned/browsing access. Adequate but leaves the agent to infer the boundary against siblings.

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

search_skillsSearch skillsA
Read-onlyIdempotent
Inspect

Search the tested agent skill files for sale (free). Give a plain-language query (for example: sound less like ChatGPT), or filter by category, tag or language, or combine them. With a query the results come ranked by relevance; without one you get the featured skills first. Each card has match_reason (the field that matched, or the filter), price_usd (a one-time purchase of the SKILL.md file, yours forever), what it is for, what it is not for, and how it was tested. limit is at most 24.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagNoOnly skills with this tag: lowercase letters, digits and hyphens, at most 32 characters, for example 'humanize'.
limitNoHow many skills to return, 1 to 24. Default 24.
queryNoPlain-language search text, for example 'sound less like ChatGPT'. At most 100 characters. Omit it to get the featured skills first instead of a ranked search.
categoryNoOnly skills in this category. One of: writing, editing, marketing, seo, research, code, agents, sales-support, business, data, translation, education (see list_categories). Any other value is an error.
languageNoOnly skills that work in this language: a 2-3 letter code such as en, bg or de, or 'any'. Skills marked 'any' always match.

Output Schema

ParametersJSON Schema
NameRequiredDescription
skillsYesMatching skill cards, best first. Empty when nothing matched.
paymentYesPayment summary shared by the skills (same as each card's payment); null when nothing matched.

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/closed-world, so the safety profile is covered. The description adds genuinely non-obvious behavior: ranking when a query is present vs. featured fallback when absent, and that price_usd is a one-time purchase of SKILL.md. It is a strong addition even though card-field details overlap 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 purpose, then usage, then result anatomy, then the limit cap. Dense but readable and mostly waste-free. The trailing 'limit is at most 24' is redundant with the schema and could be cut.

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, the description need not enumerate return values, yet it still orients the agent on ranking behavior, price meaning and filter combination. Nothing needed to call this zero-required-parameter search 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 the schema already documents all five parameters, including limits, examples and the 'any' language rule. The description's 'limit is at most 24' and query example merely restate the schema; only the 'or combine them' note adds combination semantics. Baseline 3 is appropriate.

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 verb and resource plus scope: search tested agent skill files for sale, with either a plain-language query or filters. An agent immediately knows this is a discovery/list tool. It does not name or contrast any sibling (get_skill, list_categories, redownload_skill), so it falls short of the top band.

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 usage context: supply a query to get relevance-ranked results, or filter by category/tag/language, or combine them; omit the query to get featured skills first. That covers both invocation modes well. It stops short of explicit when-not-to-use or naming an alternative tool for a different need.

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. 4 tool updates
    • Changedget_skill2 fields changed
      • addedInput schema / properties / slug / description
        Added value: +"The skill's slug, as returned by search_skills (for example 'humanize'). An unknown or unlisted slug is an error."
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "buy_url": {
        +      "description": "HTTP address to buy the file (x402).",
        +      "type": "string"
        +    },
        +    "category": {
        +      "anyOf": [
        +        {
        +          "type": "string"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Category slug; null if the skill has no category yet."
        +    },
        +    "category_url": {
        +      "anyOf": [
        +        {
        +          "type": "string"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Page of the category; null if there is no category."
        +    },
        +    "examples": {
        +      "description": "Before/after examples from the test.",
        +      "items": {},
        +      "type": "array"
        +    },
        +    "faq": {
        +      "description": "Questions and answers about the skill.",
        +      "items": {
        +        "additionalProperties": {},
        +        "properties": {
        +          "a": {
        +            "type": "string"
        +          },
        +          "q": {
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "q",
        +          "a"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    },
        +    "how_to_buy": {
        +      "description": "Steps to buy over HTTP.",
        +      "type": "string"
        +    },
        +    "image_url": {
        +      "anyOf": [
        +        {
        +          "type": "string"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Preview image; null if none."
        +    },
        +    "keywords": {
        +      "description": "Search keywords.",
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "languages": {
        +      "description": "Language codes the skill works in, or 'any'.",
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "license": {
        +      "additionalProperties": {},
        +      "properties": {
        +        "holder": {
        +          "description": "Who holds the rights.",
        +          "type": "string"
        +        },
        +        "summary": {
        +          "description": "The license in one sentence.",
        +          "type": "string"
        +        },
        +        "url": {
        +          "description": "Page with the full license text.",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "summary",
        +        "holder",
        +        "url"
        +      ],
        +      "type": "object"
        +    },
        +    "markdown_url": {
        +      "description": "The same page as Markdown.",
        +      "type": "string"
        +    },
        +    "mcp_tool": {
        +      "description": "Always null: buying is over HTTP, not MCP.",
        +      "type": "null"
        +    },
        +    "name": {
        +      "description": "Display name.",
        +      "type": "string"
        +    },
        +    "not_for": {
        +      "anyOf": [
        +        {
        +          "type": "string"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "What the skill is not for; null if not stated."
        +    },
        +    "outline": {
        +      "description": "Headings of the file.",
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "page_url": {
        +      "description": "Public page of the skill.",
        +      "type": "string"
        +    },
        +    "payment": {
        +      "additionalProperties": {},
        +      "description": "Short payment summary: protocol, asset, network and whether selling is open.",
        +      "properties": {
        +        "asset": {
        +          "description": "Payment asset, 'USDC'.",
        +          "type": "string"
        +        },
        +        "protocol": {
        +          "description": "Always 'x402'.",
        +          "type": "string"
        +        },
        +        "scheme": {
        +          "description": "x402 scheme, 'exact'.",
        +          "type": "string"
        +        },
        +        "selling": {
        +          "description": "Whether the shop is open for payments right now.",
        +          "type": "boolean"
        +        }
        +      },
        +      "required": [
        +        "protocol",
        +        "scheme",
        +        "asset",
        +        "selling"
        +      ],
        +      "type": "object"
        +    },
        +    "payment_required": {
        +      "additionalProperties": {},
        +      "description": "The exact body the HTTP shop answers with HTTP 402; the client signs it. Buying is over HTTP.",
        +      "properties": {
        +        "accepts": {
        +          "description": "Payment requirements to sign; sign accepts[0].",
        +          "items": {
        +            "additionalProperties": {},
        +            "properties": {},
        +            "type": "object"
        +          },
        +          "type": "array"
        +        },
        +        "x402Version": {
        +          "description": "x402 protocol version, 2.",
        +          "type": "number"
        +        }
        +      },
        +      "required": [
        +        "x402Version",
        +        "accepts"
        +      ],
        +      "type": "object"
        +    },
        +    "price_micro": {
        +      "description": "The same price in millionths of a dollar.",
        +      "type": "number"
        +    },
        +    "price_usd": {
        +      "description": "One-time price in US dollars, as a decimal string.",
        +      "type": "string"
        +    },
        +    "purchases_count": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Number of purchases; null until there are at least 10."
        +    },
        +    "redownload_url_template": {
        +      "description": "HTTP address template of the free re-download; {token} is the receipt token.",
        +      "type": "string"
        +    },
        +    "related_url": {
        +      "description": "API address of the related skills.",
        +      "type": "string"
        +    },
        +    "sha256": {
        +      "description": "SHA-256 of the file, lowercase hex.",
        +      "type": "string"
        +    },
        +    "size_bytes": {
        +      "anyOf": [
        +        {
        +          "type": "number"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Size of the SKILL.md file in bytes."
        +    },
        +    "slug": {
        +      "description": "Stable identifier of the skill; use it with get_skill.",
        +      "type": "string"
        +    },
        +    "tags": {
        +      "description": "Lowercase tags.",
        +      "items": {
        +        "type": "string"
        +      },
        +      "type": "array"
        +    },
        +    "tested": {
        +      "anyOf": [
        +        {
        +          "additionalProperties": {},
        +          "propertyNames": {
        +            "type": "string"
        +          },
        +          "type": "object"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "How the skill was tested; null if not recorded."
        +    },
        +    "updated_at": {
        +      "description": "ISO 8601 time of the last update.",
        +      "type": "string"
        +    },
        +    "use_when": {
        +      "description": "What the skill is for.",
        +      "type": "string"
        +    },
        +    "version": {
        +      "description": "Current semantic version of the SKILL.md file.",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "slug",
        +    "name",
        +    "version",
        +    "updated_at",
        +    "use_when",
        +    "not_for",
        +    "languages",
        +    "tags",
        +    "category",
        +    "category_url",
        +    "keywords",
        +    "faq",
        +    "examples",
        +    "page_url",
        +    "markdown_url",
        +    "image_url",
        +    "related_url",
        +    "purchases_count",
        +    "tested",
        +    "price_usd",
        +    "price_micro",
        +    "size_bytes",
        +    "sha256",
        +    "outline",
        +    "license",
        +    "buy_url",
        +    "redownload_url_template",
        +    "mcp_tool",
        +    "payment",
        +    "payment_required",
        +    "how_to_buy"
        +  ],
        +  "type": "object"
        +}
    • Changedlist_categories1 field changed
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "categories": {
        +      "description": "All skill categories, in display order.",
        +      "items": {
        +        "additionalProperties": {},
        +        "properties": {
        +          "intro": {
        +            "description": "Short introduction to the category.",
        +            "type": "string"
        +          },
        +          "keywords": {
        +            "description": "Category keywords.",
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "listed_count": {
        +            "description": "How many skills are listed in the category.",
        +            "type": "number"
        +          },
        +          "name": {
        +            "description": "Display name.",
        +            "type": "string"
        +          },
        +          "position": {
        +            "description": "Order in the list, starting at 1.",
        +            "type": "number"
        +          },
        +          "slug": {
        +            "description": "Category slug; use it as the category filter of search_skills.",
        +            "type": "string"
        +          },
        +          "url": {
        +            "description": "Public page of the category.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "slug",
        +          "name",
        +          "position",
        +          "intro",
        +          "keywords",
        +          "listed_count",
        +          "url"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "categories"
        +  ],
        +  "type": "object"
        +}
    • Changedredownload_skill2 fields changed
      • addedInput schema / properties / token / description
        Added value: +"The re-download token from your purchase receipt (the 'redownload' part): 64 lowercase hex characters. Not your payment signature."
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "bytes": {
        +      "description": "Size of the file in bytes.",
        +      "type": "number"
        +    },
        +    "changelog": {
        +      "anyOf": [
        +        {
        +          "type": "string"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "What changed in this version; null if not recorded."
        +    },
        +    "file": {
        +      "additionalProperties": {},
        +      "description": "The file itself.",
        +      "properties": {
        +        "content": {
        +          "description": "The full SKILL.md text.",
        +          "type": "string"
        +        },
        +        "encoding": {
        +          "description": "Text encoding of content, 'utf-8'.",
        +          "type": "string"
        +        },
        +        "name": {
        +          "description": "File name, 'SKILL.md'.",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "name",
        +        "encoding",
        +        "content"
        +      ],
        +      "type": "object"
        +    },
        +    "install": {
        +      "additionalProperties": {},
        +      "description": "Where to install the file.",
        +      "properties": {
        +        "claude_code": {
        +          "description": "Where to put the file for Claude Code.",
        +          "type": "string"
        +        },
        +        "generic": {
        +          "description": "The folder layout for any Agent Skills client.",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "claude_code",
        +        "generic"
        +      ],
        +      "type": "object"
        +    },
        +    "license": {
        +      "additionalProperties": {},
        +      "properties": {
        +        "holder": {
        +          "description": "Who holds the rights.",
        +          "type": "string"
        +        },
        +        "summary": {
        +          "description": "The license in one sentence.",
        +          "type": "string"
        +        },
        +        "url": {
        +          "description": "Page with the full license text.",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "summary",
        +        "holder",
        +        "url"
        +      ],
        +      "type": "object"
        +    },
        +    "name": {
        +      "description": "Display name.",
        +      "type": "string"
        +    },
        +    "ok": {
        +      "const": true,
        +      "description": "Always true on success.",
        +      "type": "boolean"
        +    },
        +    "purchase": {
        +      "additionalProperties": {},
        +      "description": "Your purchase record.",
        +      "properties": {
        +        "downloads": {
        +          "description": "How many times the file has been delivered, including this call.",
        +          "type": "number"
        +        },
        +        "status": {
        +          "description": "Purchase state, for example 'active' or 'pending' (payment settlement not yet confirmed).",
        +          "type": "string"
        +        }
        +      },
        +      "required": [
        +        "status",
        +        "downloads"
        +      ],
        +      "type": "object"
        +    },
        +    "sha256": {
        +      "description": "SHA-256 of the delivered file, lowercase hex.",
        +      "type": "string"
        +    },
        +    "skill": {
        +      "description": "Slug of the skill.",
        +      "type": "string"
        +    },
        +    "version": {
        +      "description": "The current version being delivered (may be newer than the one first bought).",
        +      "type": "string"
        +    }
        +  },
        +  "required": [
        +    "ok",
        +    "skill",
        +    "name",
        +    "version",
        +    "sha256",
        +    "bytes",
        +    "license",
        +    "file",
        +    "install",
        +    "changelog",
        +    "purchase"
        +  ],
        +  "type": "object"
        +}
    • Changedsearch_skills6 fields changed
      • addedInput schema / properties / category / description
        Added value: +"Only skills in this category. One of: writing, editing, marketing, seo, research, code, agents, sales-support, business, data, translation, education (see list_categories). Any other value is an error."
      • addedInput schema / properties / language / description
        Added value: +"Only skills that work in this language: a 2-3 letter code such as en, bg or de, or 'any'. Skills marked 'any' always match."
      • addedInput schema / properties / limit / description
        Added value: +"How many skills to return, 1 to 24. Default 24."
      • addedInput schema / properties / query / description
        Added value: +"Plain-language search text, for example 'sound less like ChatGPT'. At most 100 characters. Omit it to get the featured skills first instead of a ranked search."
      • addedInput schema / properties / tag / description
        Added value: +"Only skills with this tag: lowercase letters, digits and hyphens, at most 32 characters, for example 'humanize'."
      • changedOutput schema / (root)
        Previous value: -nullNew value: +{
        +  "$schema": "http://json-schema.org/draft-07/schema#",
        +  "additionalProperties": false,
        +  "properties": {
        +    "payment": {
        +      "anyOf": [
        +        {
        +          "additionalProperties": {},
        +          "propertyNames": {
        +            "type": "string"
        +          },
        +          "type": "object"
        +        },
        +        {
        +          "type": "null"
        +        }
        +      ],
        +      "description": "Payment summary shared by the skills (same as each card's payment); null when nothing matched."
        +    },
        +    "skills": {
        +      "description": "Matching skill cards, best first. Empty when nothing matched.",
        +      "items": {
        +        "additionalProperties": {},
        +        "properties": {
        +          "buy_url": {
        +            "description": "HTTP address to buy the file (x402).",
        +            "type": "string"
        +          },
        +          "category": {
        +            "anyOf": [
        +              {
        +                "type": "string"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ],
        +            "description": "Category slug; null if the skill has no category yet."
        +          },
        +          "category_url": {
        +            "anyOf": [
        +              {
        +                "type": "string"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ],
        +            "description": "Page of the category; null if there is no category."
        +          },
        +          "examples": {
        +            "description": "Before/after examples from the test.",
        +            "items": {},
        +            "type": "array"
        +          },
        +          "faq": {
        +            "description": "Questions and answers about the skill.",
        +            "items": {
        +              "additionalProperties": {},
        +              "properties": {
        +                "a": {
        +                  "type": "string"
        +                },
        +                "q": {
        +                  "type": "string"
        +                }
        +              },
        +              "required": [
        +                "q",
        +                "a"
        +              ],
        +              "type": "object"
        +            },
        +            "type": "array"
        +          },
        +          "image_url": {
        +            "anyOf": [
        +              {
        +                "type": "string"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ],
        +            "description": "Preview image; null if none."
        +          },
        +          "keywords": {
        +            "description": "Search keywords.",
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "languages": {
        +            "description": "Language codes the skill works in, or 'any'.",
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "license": {
        +            "additionalProperties": {},
        +            "properties": {
        +              "holder": {
        +                "description": "Who holds the rights.",
        +                "type": "string"
        +              },
        +              "summary": {
        +                "description": "The license in one sentence.",
        +                "type": "string"
        +              },
        +              "url": {
        +                "description": "Page with the full license text.",
        +                "type": "string"
        +              }
        +            },
        +            "required": [
        +              "summary",
        +              "holder",
        +              "url"
        +            ],
        +            "type": "object"
        +          },
        +          "markdown_url": {
        +            "description": "The same page as Markdown.",
        +            "type": "string"
        +          },
        +          "match_reason": {
        +            "anyOf": [
        +              {
        +                "type": "string"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ],
        +            "description": "The field that matched the query (or the filter); null if there is no query or filter."
        +          },
        +          "mcp_tool": {
        +            "description": "Always null: buying is over HTTP, not MCP.",
        +            "type": "null"
        +          },
        +          "name": {
        +            "description": "Display name.",
        +            "type": "string"
        +          },
        +          "not_for": {
        +            "anyOf": [
        +              {
        +                "type": "string"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ],
        +            "description": "What the skill is not for; null if not stated."
        +          },
        +          "outline": {
        +            "description": "Headings of the file.",
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "page_url": {
        +            "description": "Public page of the skill.",
        +            "type": "string"
        +          },
        +          "payment": {
        +            "additionalProperties": {},
        +            "description": "Short payment summary: protocol, asset, network and whether selling is open.",
        +            "properties": {
        +              "asset": {
        +                "description": "Payment asset, 'USDC'.",
        +                "type": "string"
        +              },
        +              "protocol": {
        +                "description": "Always 'x402'.",
        +                "type": "string"
        +              },
        +              "scheme": {
        +                "description": "x402 scheme, 'exact'.",
        +                "type": "string"
        +              },
        +              "selling": {
        +                "description": "Whether the shop is open for payments right now.",
        +                "type": "boolean"
        +              }
        +            },
        +            "required": [
        +              "protocol",
        +              "scheme",
        +              "asset",
        +              "selling"
        +            ],
        +            "type": "object"
        +          },
        +          "price_micro": {
        +            "description": "The same price in millionths of a dollar.",
        +            "type": "number"
        +          },
        +          "price_usd": {
        +            "description": "One-time price in US dollars, as a decimal string.",
        +            "type": "string"
        +          },
        +          "purchases_count": {
        +            "anyOf": [
        +              {
        +                "type": "number"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ],
        +            "description": "Number of purchases; null until there are at least 10."
        +          },
        +          "redownload_url_template": {
        +            "description": "HTTP address template of the free re-download; {token} is the receipt token.",
        +            "type": "string"
        +          },
        +          "related_url": {
        +            "description": "API address of the related skills.",
        +            "type": "string"
        +          },
        +          "sha256": {
        +            "description": "SHA-256 of the file, lowercase hex.",
        +            "type": "string"
        +          },
        +          "size_bytes": {
        +            "anyOf": [
        +              {
        +                "type": "number"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ],
        +            "description": "Size of the SKILL.md file in bytes."
        +          },
        +          "slug": {
        +            "description": "Stable identifier of the skill; use it with get_skill.",
        +            "type": "string"
        +          },
        +          "tags": {
        +            "description": "Lowercase tags.",
        +            "items": {
        +              "type": "string"
        +            },
        +            "type": "array"
        +          },
        +          "tested": {
        +            "anyOf": [
        +              {
        +                "additionalProperties": {},
        +                "propertyNames": {
        +                  "type": "string"
        +                },
        +                "type": "object"
        +              },
        +              {
        +                "type": "null"
        +              }
        +            ],
        +            "description": "How the skill was tested; null if not recorded."
        +          },
        +          "updated_at": {
        +            "description": "ISO 8601 time of the last update.",
        +            "type": "string"
        +          },
        +          "use_when": {
        +            "description": "What the skill is for.",
        +            "type": "string"
        +          },
        +          "version": {
        +            "description": "Current semantic version of the SKILL.md file.",
        +            "type": "string"
        +          }
        +        },
        +        "required": [
        +          "slug",
        +          "name",
        +          "version",
        +          "updated_at",
        +          "use_when",
        +          "not_for",
        +          "languages",
        +          "tags",
        +          "category",
        +          "category_url",
        +          "keywords",
        +          "faq",
        +          "examples",
        +          "page_url",
        +          "markdown_url",
        +          "image_url",
        +          "related_url",
        +          "purchases_count",
        +          "tested",
        +          "price_usd",
        +          "price_micro",
        +          "size_bytes",
        +          "sha256",
        +          "outline",
        +          "license",
        +          "buy_url",
        +          "redownload_url_template",
        +          "mcp_tool",
        +          "payment",
        +          "match_reason"
        +        ],
        +        "type": "object"
        +      },
        +      "type": "array"
        +    }
        +  },
        +  "required": [
        +    "payment",
        +    "skills"
        +  ],
        +  "type": "object"
        +}
  2. 2 tool updates
    • Addedlist_categories
    • Changedsearch_skills4 fields changed
      • addedInput schema / properties / category
        Added value: +{
        +  "type": "string"
        +}
      • addedInput schema / properties / limit
        Added value: +{
        +  "maximum": 24,
        +  "minimum": 1,
        +  "type": "integer"
        +}
      • addedInput schema / properties / query / maxLength
        Added value: +100
      • addedInput schema / properties / tag
        Added value: +{
        +  "type": "string"
        +}
  3. 2 tool updates
    • Addedredownload_skill
    • Changedsearch_skills1 field changed
      • addedInput schema / properties / language
        Added value: +{
        +  "type": "string"
        +}
  4. 2 tool updates
    • Removedexecute_humanize
    • Removedexecute_humanize_long
  5. 4 tool updates
    • First observedexecute_humanize
    • First observedexecute_humanize_long
    • First observedget_skill
    • First observedsearch_skills

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    Not graded
    maintenance
    An MCP server that transforms SKILL.md files into executable tools for AI agents, allowing them to discover and pay for services via the x402 protocol. It supports automatic payments on Stellar and EVM networks, enabling seamless integration of premium API skills.
    6
    5 npm
    1
    -
  • A
    license
    A
    quality
    F
    maintenance
    Agent-first skill marketplace MCP server. AI agents discover, install, and share skills across 7 platforms via MCP protocol. 15 tools including skill search, download, upload, and agent discovery.
    18
    4
    MIT
  • A
    license
    B
    quality
    A
    maintenance
    MCP server exposing x402 Bazaar's paid Base APIs (token risk/honeypot, prices, gas, wallet intel, tx decode + AI utilities) as agent tools. Your agent pays per call in USDC over x402 — no API keys, no signup.
    17
    332 npm
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources