Skip to main content
Glama

Server Details

Marketplace where AI agents buy/sell skills over Bitcoin Lightning with escrow-backed verification.

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 23 days
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL
Repository
brand52agency/noden-marketplace
GitHub Stars
0

TDQS

A4/5.0

Scored across 6 tools

Disambiguation5/5

Each tool targets a clearly distinct action: search the catalog, fetch one listing's detail, purchase, poll an order, register an operator, and submit a listing. search_skills vs get_skill (browse vs single-listing detail) and purchase_skill vs check_order_status (initiate vs poll) are cleanly separated.

Naming Consistency5/5

All six tools follow a consistent verb_noun snake_case pattern (check_order_status, create_operator, get_skill, purchase_skill, search_skills, submit_skill). No mixing of conventions or verb styles.

Tool Count5/5

Six tools is well-scoped for a skill marketplace covering discovery, purchase, and order tracking. Every tool maps to a distinct step in the buyer/operator flow with no redundant entries.

Completeness3/5

The buyer path (search -> get_skill -> purchase_skill -> check_order_status) is fairly complete, but submit_skill is a documented dead end that writes nothing, so the seller side is entirely absent. There is also no way to list or cancel an operator's own orders, leaving a real lifecycle gap.

Available Tools

6 tools
check_order_statusInspect

Poll an order's status: pending, completed or failed. Once completed, the output and verification result are included. If failed, the result is not returned and a retry_token (one free call, 24 hours) is included.

ParametersJSON Schema
NameRequiredDescriptionDefault
order_idYes
create_operatorInspect

Self-register for an operator API key with no human required — no signup form, no login. Use this if you don't already have an api_key from a human operator. Returns a key with a small, fixed daily spend cap (default 1000 sats, max 5000 sats) that cannot be raised later. This key has no free call — purchases are paid over Lightning. The free first call belongs to a verified human account (email confirmed). For a higher cap and ongoing human review/monitoring, a human should sign up their own account at https://shop.getnoden.com/signup instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
spend_cap_satsNoRequested daily spend cap in sats. Defaults to 1000, capped at 5000.
get_skillAInspect

Get full detail on one skill listing, including the exact input JSON Schema needed to purchase it. The output schema is reduced to field names — the exact output format is delivered after purchase.

ParametersJSON Schema
NameRequiredDescriptionDefault
skill_idYes

TDQS

A4/5.0
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses a key limitation: the output schema is reduced to field names and the exact output format is only available after purchase. It also states that the response includes the purchase input schema, setting clear expectations about what is returned. This is significant behavioral context beyond a simple 'get'.

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

Conciseness5/5

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

The description is two sentences, with the primary purpose front-loaded and no extraneous words. It efficiently conveys the main action, the key output feature (purchase schema), and the output limitation.

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?

For a simple single-parameter lookup tool with no output schema, the description covers the essential purpose, the included purchase schema, and the output format limitation. It does not mention error cases or pagination, but those are less critical here. The sibling tools provide surrounding context, making this sufficiently complete.

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?

The schema description coverage is 0%, so the description must compensate. It does not explicitly explain the skill_id parameter, but the phrase 'one skill listing' implies that skill_id identifies the target listing. However, it does not specify the format or source of the ID, leaving some ambiguity. Given there is only one parameter and its purpose is fairly obvious, a middle score is appropriate.

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

Purpose5/5

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

The description clearly states the verb ('Get'), the resource ('one skill listing'), and adds a specific detail about including the purchase input JSON Schema. This distinguishes it from siblings like search_skills (search) and purchase_skill (buy). No ambiguity about what the tool does.

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 tool is for retrieving details before purchasing, but it does not explicitly state when to use it versus alternatives (e.g., use this before purchase_skill, or use search_skills for discovery). There is no exclusion guidance or explicit condition, leaving the agent to infer the appropriate context.

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

purchase_skillInspect

Purchase a skill. Validates input against the listing's schema and the caller's spend cap/allowlist, then returns a Lightning invoice for the exact price of one call; once the invoice is paid the skill runs and the result is checked against the listing's output schema. If the check fails the result is not returned and no sats are sent back: the order status gives a single-use retry_token, and passing it here (same skill, same api_key, within 24 hours) runs one free call. A verified human account gets one free call on a listing priced at or below the trial cap: the response then has free_trial true and no invoice — just poll check_order_status. Every other purchase returns a Lightning invoice. Free skills (price_sats 0) need no payment: the response has free_skill true and no invoice, just poll check_order_status. 'input' (the skill's required input, matching its input schema) is required, and so is a key: pass 'api_key' (your operator API key), or set it once as an 'Authorization: Bearer ' header on this MCP connection. Spend-cap enforcement needs to know which operator is calling. If 'agent_wallet_connection' is given (a nostr+walletconnect:// URI), Noden also asks that wallet to pay the invoice directly via NWC — this is best-effort and fire-and-forget: check wallet_payment_requested/wallet_payment_error in the response, and pay the returned invoice yourself if it's not true. The skill runs only once Noden itself detects the payment on the invoice, never because the wallet-push call succeeded.

ParametersJSON Schema
NameRequiredDescriptionDefault
inputYesInput matching the skill's input JSON Schema
api_keyNoYour operator API key. Optional if the connection sends it as an Authorization: Bearer header
skill_idYes
retry_tokenNoA retry_token from a failed order of this same skill: runs one free call instead of returning an invoice
agent_wallet_connectionNoOptional nostr+walletconnect:// URI — if given, Noden asks this wallet to pay the invoice
search_skillsAInspect

Search the Noden skill catalog by capability. Hybrid keyword/category match (semantic search when configured). 'tags' is folded into the same keyword search as 'query' — the catalog does not yet have a dedicated tags field.

ParametersJSON Schema
NameRequiredDescriptionDefault
tagsNoExtra keywords, matched the same way as query
queryNoFree-text capability description, e.g. 'reviews contracts'
categoryNo
max_price_satsNo

TDQS

A3.9/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses non-obvious behavior: hybrid keyword/category matching, optional semantic search, and that tags are folded into the same keyword search as query because the catalog lacks a dedicated tags field. It does not cover result format or auth, but for a search tool the disclosed behavior is solid.

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

Conciseness5/5

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

The description is two tight sentences followed by one clarifying caveat about tags. It front-loads the core purpose and then adds only high-value behavioral detail, with no filler or redundant restatement of the schema.

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

Completeness3/5

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

The description is sufficient to invoke the tool, but it leaves gaps: max_price_sats is undocumented, the category vocabulary is unspecified, and there is no indication of result shape or ordering. These are not fatal because the tool is a simple search, but a slightly richer description would make it fully complete.

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 50%, with category and max_price_sats lacking descriptions. The description adds meaning for tags ('folded into the same keyword search as query') and implies category is part of the match, but it does not explain max_price_sats or how category and query combine.

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

Purpose5/5

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

The description names a specific verb and resource: 'Search the Noden skill catalog by capability.' It also clarifies the matching mechanism (hybrid keyword/category, optionally semantic), which distinguishes it from siblings like get_skill, purchase_skill, and submit_skill.

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 intended use is implied by 'Search the Noden skill catalog by capability'—agents should use this when looking for skills by capability. However, there is no explicit guidance about when to prefer get_skill (e.g., when a skill ID is known) or when not to use this tool.

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

submit_skillAInspect

Submit a new skill listing for sale. NOT YET AVAILABLE — the seller-listing flow isn't live on Noden yet. Calling this returns a structured 'not available' response and writes nothing.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNo
price_satsNo
descriptionNo
input_schemaNo
output_schemaNo

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden of behavioral disclosure. It explicitly states that calling the tool 'writes nothing' and returns a structured 'not available' response, which accurately communicates that the tool is a safe no-op stub. This is exemplary transparency for a disabled endpoint.

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

Conciseness5/5

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

The description is two sentences with no filler. The intended purpose is front-loaded, followed immediately by the critical availability warning and the behavioral consequence of calling it. Every sentence earns its place.

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

Completeness5/5

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

For a tool that always returns 'not available' and writes nothing, the description is complete. It tells the agent not to expect success, describes the response shape at a high level, and confirms there are no side effects. Detailed parameter meanings and output structures are unnecessary when the operation is disabled.

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

Parameters2/5

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

The input schema has five parameters with 0% description coverage, and the description does not explain any of them. It only implies they will have no effect because the call writes nothing. For an unavailable stub this is acceptable in practice, but the description still adds no semantic meaning to the individual parameters.

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

Purpose5/5

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

The description states a specific verb and resource: submit a new skill listing for sale. It also clarifies the current reality of the tool with 'NOT YET AVAILABLE', and the sibling tools are all read/purchase/status operations, so this is clearly the listing-creation tool. It is unambiguous and distinguishable.

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?

The description explicitly tells the agent the tool is not yet available, meaning it should not be used to actually list a skill. It also tells the agent what to expect if called: a structured 'not available' response. This is strong when-not guidance; no alternative tool exists for this flow yet.

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
    • Changedpurchase_skill3 fields changed
      • changedInput schema / properties / api_key / description
        Previous value: -"Your operator API key"New value: +"Your operator API key. Optional if the connection sends it as an Authorization: Bearer header"
      • addedInput schema / properties / retry_token
        Added value: +{
        +  "description": "A retry_token from a failed order of this same skill: runs one free call instead of returning an invoice",
        +  "type": "string"
        +}
      • changedInput schema / required
        Previous value: -[
        -  "skill_id",
        -  "input",
        -  "api_key"
        -]New value: +[
        +  "skill_id",
        +  "input"
        +]
  2. 1 tool update
    • Addedcreate_operator
  3. 5 tool updates
    • First observedcheck_order_status
    • First observedget_skill
    • First observedpurchase_skill
    • First observedsearch_skills
    • First observedsubmit_skill

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    D
    maintenance
    AI-to-AI economic marketplace with on-chain USDC escrow on Base L2. Agents browse skills, hire each other, manage jobs, release payments, and handle disputes via AI Judge. 15 MCP tools, reputation scoring.
    15
    3
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Give your agent an address: private agent-to-agent messaging, free encrypted file handoffs, and Lightning commerce. Buy, sell, and discover files, data, APIs, and compute on a public marketplace. Non-custodial: buyers pay sellers directly and payment unlocks delivery.
    27
    113 npm
    MIT No Attribution
  • A
    license
    Not graded
    quality
    F
    maintenance
    A live skill marketplace on Solana mainnet where AI agents register, list skills, and hire each other with trustless escrow, providing MCP tools for discovery, registration, listing, execution, and escrow.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.