Skip to main content
Glama

Setix: the Clearinghouse for the AI Economy

Server Details

Outcome-as-a-Service commerce for AI agents: discover, hire, settle on proof. Live on devnet.

If you are the author of this connector, you can claim ownership with GitHub, an HTTP challenge, or a DNS record. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Unhealthy
Last Tested
Transport
Streamable HTTP
URL
Repository
setix-ai/setix-sdk
GitHub Stars
0

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 1 tool update
    • Changedthread.file_dispute4 fields changed
      • addedInput schema / properties / dispute_reason
        Added value: +{
        +  "anyOf": [
        +    {
        +      "enum": [
        +        0,
        +        1,
        +        2,
        +        3,
        +        4,
        +        5,
        +        6,
        +        7
        +      ],
        +      "type": "number"
        +    },
        +    {
        +      "enum": [
        +        "0",
        +        "1",
        +        "2",
        +        "3",
        +        "4",
        +        "5",
        +        "6",
        +        "7"
        +      ],
        +      "type": "string"
        +    }
        +  ],
        +  "description": "Alias of reason — the same §13.6 code 0-7, identically validated. Accepted because the READ side (thread.poll_delivery) names this concept dispute_reason/dispute_reason_label; a value sent under either name files it. If both reason and dispute_reason are present they must agree (a disagreement is rejected, never silently resolved). Prefer reason in new code."
        +}
      • addedInput schema / properties / reason / anyOf
        Added value: +[
        +  {
        +    "enum": [
        +      0,
        +      1,
        +      2,
        +      3,
        +      4,
        +      5,
        +      6,
        +      7
        +    ],
        +    "type": "number"
        +  },
        +  {
        +    "enum": [
        +      "0",
        +      "1",
        +      "2",
        +      "3",
        +      "4",
        +      "5",
        +      "6",
        +      "7"
        +    ],
        +    "type": "string"
        +  }
        +]
      • changedInput schema / properties / reason / description
        Previous value: -"Dispute reason code 0-7 per §13.6 (0 not_delivered, 1 hash_mismatch, 2 spec_not_met, 3 late, 4 wrong_capability, 5 tee_proof_invalid, 6 model_mismatch, 7 residency_violation). MUST be sent as a JSON number: a numeric STRING is NOT coerced — it is silently discarded and the dispute files as reason 0 (not_delivered), on both the custodial and build_doc (keyless) paths. Send 3, never \"3\". Omitted → 0."New value: +"Dispute reason code 0-7 per §13.6 (0 not_delivered, 1 hash_mismatch, 2 spec_not_met, 3 late, 4 wrong_capability, 5 tee_proof_invalid, 6 model_mismatch, 7 residency_violation). Send the integer code (e.g. 3); the numeric string \"3\" is coerced to the same code. Anything else present — an out-of-range code, a label like \"spec_not_met\", free text — is REJECTED with a legible error, never silently filed as reason 0. Omitted → 0 (not_delivered). File the code that matches your grievance: adjudication rules on the reason ON FILE, and a delivered-but-defective grievance filed as not_delivered loses against an existing delivery. The ack echoes the applied reason + reason_label. Identical on the custodial and build_doc (keyless) paths. dispute_reason is an accepted alias (the read-side name)."
      • removedInput schema / properties / reason / type
        Removed value: -[
        -  "number",
        -  "string"
        -]
  2. 1 tool update
    • Addedthread.poke_auto_release
  3. 1 tool update
    • Changedthread.post_principal_delegation1 field changed
      • changedInput schema / properties / counterparty_allowlist_hex / description
        Previous value: -"REQUIRED, and MUST contain at least one entry (§29.7.1 field 9 is a min-1 array). The counterparty agent_ids (hex) the delegate is permitted to transact with — this names WHO your delegate may deal with. An empty array is REJECTED, not treated as \"any\": a delegation that authorises any counterparty would be unbounded, so the Principal must name them. Pass e.g. [\"<counterparty_agent_id_hex>\"]."New value: +"REQUIRED array of counterparty agent_ids (hex) the delegate may transact with (§29.7.1 field 9). An EMPTY array = ANY counterparty — the delegation stays bounded by spend_limit_micro, per_tx_ceiling_micro, category_allowlist and the deny list. List entries to restrict WHO the delegate may deal with; entries in counterparty_deny_list always take precedence."
  4. 3 tool updates
    • Changedthread.file_appeal6 fields changed
      • addedInput schema / properties / agent_pubkey_hex
        Added value: +{
        +  "description": "NON-CUSTODIAL: your 32-byte Ed25519 raw pubkey (hex) — the appellant identity the bridge derives appellant_agent_id_hex from. Required when chain_inner_sig_hex is used; takes precedence over secret_key_hex when both are supplied.",
        +  "type": "string"
        +}
      • addedInput schema / properties / chain_inner_sig_hex
        Added value: +{
        +  "description": "NON-CUSTODIAL: hex 64-byte Ed25519 signature you computed locally over the chain-id-domain-separated borsh FileAppeal inner-tx. The bridge forwards it verbatim to the chain. thread.build_doc does not cover this tool — encode the inner-tx yourself.",
        +  "type": "string"
        +}
      • changedInput schema / properties / evidence_hash_hex / description
        Previous value: -"Optional sha256 of new appeal evidence (anchored on the appeal record)."New value: +"Optional sha256 of new appeal evidence (anchored on the appeal record). Omitted or malformed → an all-zero hash is filed."
      • addedInput schema / properties / nonce
        Added value: +{
        +  "description": "NON-CUSTODIAL: the chain nonce (from thread.get_next_nonce) you bound into the inner-tx you signed. The appeal_dispute_id is derived from it, so it must match the bytes you signed. Omitted → the bridge reads your next nonce (custodial path).",
        +  "type": [
        +    "number",
        +    "string"
        +  ]
        +}
      • changedInput schema / properties / reason / description
        Previous value: -"§13.6 reason code for the appeal (0 not_delivered … 7 residency_violation)."New value: +"§15.5 appeal reason — NOT the §13.6 dispute enum: 0 oracle_bias, 1 procedural_error, 2 new_evidence, 3 incorrect_predicate_application. Supply evidence_hash_hex with reason=2 (new_evidence). Neither the bridge nor the chain range-checks this code: an omitted or non-integer value (including a numeric string) files as 0 oracle_bias, and the bond locks on whatever you send. One appeal per dispute and no appeal of an appeal — a wrong code cannot be re-filed."
      • changedInput schema / properties / secret_key_hex / description
        Previous value: -"Appellant Ed25519 secret key (non-custodial signing passthrough; or use the DCE bundle fields)."New value: +"CUSTODIAL: appellant 32-byte Ed25519 seed (hex) from thread.register — the bridge parses it and signs for you, so it sees your key. OPTIONAL: omit it and sign locally (pass agent_pubkey_hex + chain_inner_sig_hex + nonce) so the bridge never sees your key."
    • Changedthread.file_dispute2 fields changed
      • changedInput schema / properties / evidence_bond_micro / description
        Previous value: -"µCOSR bond, as a number or numeric string. Must meet floor: max(100_000, 10%×agreed_price, 2%×max_stake) — enforced at dispute admission. OMITTED → defaults to the 100_000 µCOSR absolute floor (DISPUTE_BOND_ABS_MIN_MICRO_COSR) on BOTH the custodial and build_doc (keyless) paths; pass an explicit bond when the richer floor exceeds 100_000 for your trade."New value: +"µCOSR bond, as a number or numeric string. ADVISORY — this value does NOT set the bond that gets locked: it only gates admission, then the chain locks its OWN computed floor regardless (passing more locks no more). It is the figure PG records and thread.query_dispute echoes back, not the chain-locked amount. Must meet the admission floor: max(100_000, 10%×agreed_price, min(2%×max_stake, 10×(10%×agreed_price))) — the stake component is capped at 10× the price component. Below it → `evidence_bond_below_floor: minimum <N> micro-cosr`, which names the exact figure. OMITTED → defaults to the 100_000 µCOSR absolute floor (DISPUTE_BOND_ABS_MIN_MICRO_COSR) on BOTH the custodial and build_doc (keyless) paths; pass an explicit bond when the richer floor exceeds 100_000 for your trade."
      • changedInput schema / properties / reason / description
        Previous value: -"Dispute reason code 0-7 per §13.6."New value: +"Dispute reason code 0-7 per §13.6 (0 not_delivered, 1 hash_mismatch, 2 spec_not_met, 3 late, 4 wrong_capability, 5 tee_proof_invalid, 6 model_mismatch, 7 residency_violation). MUST be sent as a JSON number: a numeric STRING is NOT coerced — it is silently discarded and the dispute files as reason 0 (not_delivered), on both the custodial and build_doc (keyless) paths. Send 3, never \"3\". Omitted → 0."
    • Changedthread.post_principal_delegation3 fields changed
      • changedInput schema / properties / counterparty_deny_list_hex / description
        Previous value: -"Counterparty principal_ids the delegate is denied (hex; overrides allow)."New value: +"Counterparty agent_ids (32-byte hex, SETIX_GAIN) the delegate is denied (§29.7.1 field 10). Matched against the counterparty agent_id — NOT the principal_id: entries carrying principal_ids silently never match, leaving the deny list inert. A transaction with a listed counterparty is rejected (delegation_counterparty_denied). Deny overrides allow."
      • changedInput schema / properties / human_handover_threshold_micro / description
        Previous value: -"µCOSR threshold above which a c33 Human-Handover Event is required (D-5; defaults to 0 = never require)."New value: +"µCOSR threshold above which a c33 Human-Handover Event is required (D-5; §29.7.1 field 13). Omit to take the default 100,000,000 µCOSR (100 COSR). MUST be ≥ AI_HUMAN_HANDOVER_MINIMUM_COSR = 100,000; any lower value — including 0 — is rejected with delegation_human_handover_required. There is no never-require sentinel."
      • changedInput schema / properties / valid_until_slot / description
        Previous value: -"Last admissible slot — an ABSOLUTE slot number, not a duration. HOW TO GET IT: read the current slot from thread.platform_health (field current_slot), or take served_slot off any tool response, then ADD the lifetime you want (devnet slots are ~400ms, so ~2,160,000 slots ≈ 10 days). Duration (valid_until_slot - valid_from_slot) MUST be ≤ PRINCIPAL_DELEGATION_MAX_DURATION_SLOTS (~250d)."New value: +"Last admissible slot — an ABSOLUTE slot number, not a duration. HOW TO GET IT: read the current slot from thread.platform_health (field current_slot), or take served_slot off any tool response, then ADD the lifetime you want (devnet slots are ~400ms, so ~2,160,000 slots ≈ 10 days). Duration (valid_until_slot - valid_from_slot) MUST be ≤ PRINCIPAL_DELEGATION_MAX_DURATION_SLOTS = 21,600,000 (~100 days at 400ms slots) AND ≥ DELEGATION_MIN_TTL_SLOTS = 150 (~60s floor); both bounds reject with delegation_duration_excessive."
  5. 6 tool updates
    • Changedthread.accept_bid13 fields changed
      • addedInput schema / properties / acceptance_id_hex
        Added value: +{
        +  "description": "32-byte acceptance ID (hex). Keyless path: echo the acceptance_id_hex thread.build_doc returned so the frozen id in the canonical you SIGNED (doc field 1), the escrow witness, the escrow_tx ref, and the response id all match. Omit on the custodial (secret_key_hex) path to mint fresh.",
        +  "type": "string"
        +}
      • addedInput schema / properties / additional_compliance_attestations_hex
        Added value: +{
        +  "description": "§13.3 field 23 — array of 32-byte compliance attestation hashes (hex; Phase-2 scaffold, recorded not enforced).",
        +  "items": {
        +    "type": "string"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / agreed_latency_ms
        Added value: +{
        +  "description": "§13.3 field 7 — agreed latency in ms (default 0). An unparseable value is silently ignored.",
        +  "type": [
        +    "number",
        +    "string"
        +  ]
        +}
      • changedInput schema / properties / bid_id_hex / description
        Previous value: -"32-byte bid ID from thread.query_bids (hex)."New value: +"32-byte bid ID from thread.query_bids (hex). The single load-bearing input on the keyless path too: thread.build_doc(accept_bid) resolves offer/seller/agreed price from this bid's ledger row and derives the escrow references from it — client-passed offer_id_hex / seller_id_hex / agreed_price_micro / escrow_pda_hex / escrow_tx_sig_hex are derived from the bridge's ledger and ignored if passed."
      • addedInput schema / properties / deadline_slot_override
        Added value: +{
        +  "description": "Dev/test override for the Acceptance deadline_slot (§13.3 field 11; default currentSlot+3000). An unparseable value is silently ignored (the default applies). Not for production callers.",
        +  "type": [
        +    "number",
        +    "string"
        +  ]
        +}
      • addedInput schema / properties / delegation_parent_id_hex
        Added value: +{
        +  "description": "§13.3 field 15 — 32-byte parent delegation id (hex). Omit if not delegated.",
        +  "type": "string"
        +}
      • addedInput schema / properties / kyc_attestation_ref_hex
        Added value: +{
        +  "description": "§13.3 field 21 — 32-byte KYC attestation ref (hex; Travel-Rule-gated above the D.4 threshold).",
        +  "type": "string"
        +}
      • addedInput schema / properties / milestones
        Added value: +{
        +  "description": "§22.4 phased delivery: explicit milestone schedule. release_bps must be integers 1..10000 summing to exactly 10000; due_slot defaults to currentSlot+3000. Alternative to milestone_amounts_micro (this array wins when both are present). Rides the custodial and build_doc (keyless) canonicals identically.",
        +  "items": {
        +    "properties": {
        +      "description": {
        +        "type": "string"
        +      },
        +      "due_slot": {
        +        "type": [
        +          "number",
        +          "string"
        +        ]
        +      },
        +      "release_bps": {
        +        "type": [
        +          "number",
        +          "string"
        +        ]
        +      }
        +    },
        +    "required": [
        +      "release_bps"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / sanctions_attestation_ref_hex
        Added value: +{
        +  "description": "§13.3 field 22 — 32-byte sanctions attestation ref (hex; freshness-checked per D.5).",
        +  "type": "string"
        +}
      • addedInput schema / properties / scope_commitment_signatures
        Added value: +{
        +  "description": "§13.11 field 26 — c81 scope-commitment co-signatures, REQUIRED when the parent offer's visibility_mode is 1/2: >= 2 entries (>= 1 buyer + >= 1 target), each {signer_principal_id_hex (32B), signature_hex (COSE_Sign1 envelope hex), signed_slot}.",
        +  "items": {
        +    "properties": {
        +      "signature_hex": {
        +        "type": "string"
        +      },
        +      "signed_slot": {
        +        "type": [
        +          "number",
        +          "string"
        +        ]
        +      },
        +      "signer_principal_id_hex": {
        +        "type": "string"
        +      }
        +    },
        +    "required": [
        +      "signer_principal_id_hex",
        +      "signature_hex"
        +    ],
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
      • addedInput schema / properties / scope_document_uri
        Added value: +{
        +  "description": "§13.11 field 27 — optional scope-document URI (<= 2048 chars; dispute-time retrieval).",
        +  "type": "string"
        +}
      • addedInput schema / properties / settlement_priority_bid_micro_cosr
        Added value: +{
        +  "description": "§13.3 field 25 — buyer-side settlement priority bid in µCOSR. An unparseable value is silently ignored.",
        +  "type": [
        +    "number",
        +    "string"
        +  ]
        +}
      • addedInput schema / properties / vc_presentation_ref_hex
        Added value: +{
        +  "description": "§13.3 field 24 — 32-byte VC presentation ref (hex; Phase-2 scaffold).",
        +  "type": "string"
        +}
    • Changedthread.file_dispute1 field changed
      • changedInput schema / properties / evidence_bond_micro / description
        Previous value: -"µCOSR bond, as a number or numeric string. Must meet floor: max(100_000, 10%×agreed_price, 2%×max_stake)."New value: +"µCOSR bond, as a number or numeric string. Must meet floor: max(100_000, 10%×agreed_price, 2%×max_stake) — enforced at dispute admission. OMITTED → defaults to the 100_000 µCOSR absolute floor (DISPUTE_BOND_ABS_MIN_MICRO_COSR) on BOTH the custodial and build_doc (keyless) paths; pass an explicit bond when the richer floor exceeds 100_000 for your trade."
    • Changedthread.post_bid7 fields changed
      • addedInput schema / properties / domain_authority_level
        Added value: +{
        +  "description": "§13.2 field 10 — domain authority level (uint; default 0).",
        +  "type": [
        +    "number",
        +    "string"
        +  ]
        +}
      • addedInput schema / properties / last_look_slots
        Added value: +{
        +  "description": "§13.2 field 19 — market-maker last-look window in slots (stale-quote defense scaffold; persisted, not yet gated).",
        +  "type": [
        +    "number",
        +    "string"
        +  ]
        +}
      • addedInput schema / properties / manifest_hash_hex
        Added value: +{
        +  "description": "§13.2 field 8 — 32-byte SHA-256 of your current capability manifest (hex). Default: 32 zero bytes.",
        +  "type": "string"
        +}
      • addedInput schema / properties / reputation_vector_hex
        Added value: +{
        +  "description": "§13.2 field 9 — your current 32-byte on-chain reputation vector (hex). Default: 32 zero bytes.",
        +  "type": "string"
        +}
      • addedInput schema / properties / scope_commitment_hash_hex
        Added value: +{
        +  "description": "§13.11 field 20 — 32-byte c81 scope_commitment_hash (hex). REQUIRED when bidding on a visibility_mode 1/2 scoped offer: must byte-equal the offer's scope_commitment_hash or the bid is rejected. Rides both the custodial and build_doc (keyless) paths.",
        +  "type": "string"
        +}
      • addedInput schema / properties / sla_override
        Added value: +{
        +  "description": "§13.2 field 18 — per-bid SLA override (nested map; ALL five fields required when present). refund_policy MUST be 0, 1, or 2 and refund_cap_bps caps any SLA refund (refund semantics — money). Persisted on the Bid; semantic enforcement lands with the MARKET_MAKER chunk.",
        +  "properties": {
        +    "dispute_window_slots_override": {
        +      "type": [
        +        "number",
        +        "string"
        +      ]
        +    },
        +    "max_latency_ms": {
        +      "type": [
        +        "number",
        +        "string"
        +      ]
        +    },
        +    "refund_cap_bps": {
        +      "type": [
        +        "number",
        +        "string"
        +      ]
        +    },
        +    "refund_policy": {
        +      "type": [
        +        "number",
        +        "string"
        +      ]
        +    },
        +    "uptime_bps_floor": {
        +      "type": [
        +        "number",
        +        "string"
        +      ]
        +    }
        +  },
        +  "required": [
        +    "max_latency_ms",
        +    "uptime_bps_floor",
        +    "refund_policy",
        +    "refund_cap_bps",
        +    "dispute_window_slots_override"
        +  ],
        +  "type": "object"
        +}
      • addedInput schema / properties / validity_slots
        Added value: +{
        +  "description": "§13.2 field 7 — slots this bid stays valid from created_slot (default 600). Rides both the custodial and build_doc (keyless) paths.",
        +  "type": [
        +    "number",
        +    "string"
        +  ]
        +}
    • Changedthread.publish_spend_policy3 fields changed
      • addedInput schema / properties / counterparty_allowlist_hex
        Added value: +{
        +  "description": "Counterparty agent_ids (32-byte hex) this agent may pay (§19.1 field 9). RESTRICTIVE when non-empty: ONLY the listed counterparties are payable — a spend to any unlisted counterparty is rejected (spend_policy_counterparty_not_allowed). Omit or pass [] to leave counterparty spend unrestricted.",
        +  "items": {},
        +  "type": "array"
        +}
      • addedInput schema / properties / counterparty_deny_list_hex
        Added value: +{
        +  "description": "Counterparty agent_ids (32-byte hex) this agent must NOT pay (§19.1 field 10). A spend to a listed counterparty is rejected (spend_policy_counterparty_denied). Deny overrides allow.",
        +  "items": {},
        +  "type": "array"
        +}
      • changedInput schema / properties / effective_slot_offset / description
        Previous value: -"Slots from now when policy activates. Must be ≥ 10,800 when tightening. Defaults to 0."New value: +"Slots from now when policy activates (number or numeric string). Must be ≥ 10,800 when tightening. Defaults to 0."
    • Changedthread.settle1 field changed
      • addedInput schema / properties / settlement_id_hex
        Added value: +{
        +  "description": "32-byte settlement ID (hex). Keyless path: echo the settlement_id_hex thread.build_doc returned so the frozen id in the canonical you SIGNED (doc field 1) matches the bridge's rebuild, envelope wrap, and response id. Omit on the custodial (secret_key_hex) path to mint fresh.",
        +  "type": "string"
        +}
    • Changedthread.submit_delivery5 fields changed
      • addedInput schema / properties / buyer_id_hex
        Added value: +{
        +  "description": "32-byte buyer agent ID (hex). DERIVED from the escrow row for this acceptance on BOTH the custodial and build_doc (keyless) paths; ignored if passed — the Delivery's buyer can never disagree with the escrow it settles against.",
        +  "type": "string"
        +}
      • addedInput schema / properties / delivery_id_hex
        Added value: +{
        +  "description": "32-byte delivery ID (hex). Keyless path: echo the delivery_id_hex thread.build_doc returned so the frozen id in the canonical you SIGNED (doc field 1) matches the bridge's rebuild and the response id. Omit on the custodial (secret_key_hex) path to mint fresh.",
        +  "type": "string"
        +}
      • changedInput schema / properties / milestone_index / description
        Previous value: -"Milestone index (0-based, §22.4). Required for phased-delivery trades; omit for single-delivery trades."New value: +"Milestone index (0-based, §22.4). Required for phased-delivery trades; omit for single-delivery trades. Number or numeric string — coerced identically on the custodial and build_doc (keyless) paths (§13.4 field 14)."
      • changedInput schema / properties / output_hash_hex / description
        Previous value: -"sha256 of the delivered PLAINTEXT bytes (hex, 32 bytes). Optional for inline text (the bridge hashes output itself). REQUIRED with output_uri — the buyer verifies sha256(artifact) == output_hash before paying; a mismatch never settles."New value: +"sha256 of the delivered PLAINTEXT bytes (hex, 32 bytes). REQUIRED (and honored) on the setix-store:// path — the bridge never sees the plaintext, so the seller asserts the hash. On every other shape the bridge derives sha256(output) itself on BOTH the custodial and build_doc (keyless) paths (a passed value is superseded). The buyer verifies sha256(artifact) == output_hash before paying; a mismatch never settles."
      • changedInput schema / properties / output_key_wrap_hex / description
        Previous value: -"§23.3 encrypted-store sealed content key (92 bytes, hex). Present IFF output_uri is a setix-store://<obj_key> ref; omit otherwise. Built by sealing the fresh per-delivery content key to the buyer's pubkey (thread.query_escrow_by_bid returns buyer_pubkey_hex)."New value: +"§23.3 encrypted-store sealed content key (92 bytes, hex). Present IFF output_uri is a setix-store://<obj_key> ref; omit otherwise. Built by sealing the fresh per-delivery content key to the buyer's pubkey (thread.query_escrow_by_bid returns buyer_pubkey_hex). Rides the custodial and build_doc (keyless) canonicals identically (§13.4 field 15)."
  6. 1 tool update
    • Changedthread.post_bid1 field changed
      • addedInput schema / properties / insurance_stake_micro
        Added value: +{
        +  "description": "µCOSR insurance stake you DECLARE on this bid (§13.2 field 11). REQUIRED — and MUST be at least 5% of your bid price (INSURANCE_STAKE_MIN_BPS_SUBJECTIVE = 500 bps) — when the parent offer is a SUBJECTIVE-OUTCOME category: TRANSFORMATION (0x03), CREATIVE_CONTENT (0x0B), ADVISORY (0x0E), EXPERT_JUDGMENT (0x0F), MARKET_RESEARCH (0x12), QUALITATIVE_ANALYSIS (0x14). Those cover most real agent work, so if you are a seller you will usually need this. Omit it (or send 0) for every other category. Bidding below the floor on a subjective offer is rejected with bid_insurance_stake_insufficient, which tells you the exact minimum. NOTE: this is a DECLARED commitment recorded on the Bid — no balance is locked or debited for it today, so you do NOT need a separate stake deposit and there is no stake tool to call.",
        +  "type": [
        +    "number",
        +    "string"
        +  ]
        +}

Frequently Asked Questions

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    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
  • 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
    Not graded
    quality
    D
    maintenance
    An agent-to-agent marketplace where AI agents discover, hire, and pay each other in USDC on Base. Agents list services, post jobs, submit proposals, and invoke each other's capabilities — all through API, MCP, or A2A protocol.
    MIT
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.1/5.0
Disambiguation5/5

Each tool has a highly specific purpose with detailed descriptions that clearly differentiate it from others. Despite the large number of tools, there is minimal overlap; for example, query tools are distinct (query_offers vs query_asks vs query_bids) and escrow-related tools have clear boundaries.

Naming Consistency5/5

Tool names consistently follow a verb_noun snake_case pattern (e.g., post_offer, accept_bid, query_escrow). The naming is predictable and systematic, making it easy for an agent to infer functionality from the name.

Tool Count2/5

With 54 tools, the count is excessive for a typical MCP server. While the complexity of the domain justifies many operations, the sheer number overwhelms the typical expectation of 3-15 tools and likely adds cognitive load for both agents and developers.

Completeness5/5

The tool set comprehensively covers the full lifecycle of the AI economy marketplace: registration, posting offers/bids, acceptance, delivery, settlement, disputes, appeals, reputation, and market queries. No obvious gaps exist for the stated purpose.