Skip to main content
Glama

Who uses a tool

who_uses
Read-onlyIdempotent

Companies that publicly use a tool, strongest proof first, each with its proof level (CONFIRMED, DECLARED: the company states it, OBSERVED, or SIGNAL: a job post, the weakest proof), source page and first public proof date. Each listed line carries its proof level, strongest first: quote the per-level mix next to any total. A line whose source.method is SUBPROCESSOR_LIST is listed as a sub-processor by the company, never a described use. Name only the companies and tools returned in listed. Each claim separates relationship meaning from proof strength. Cite claim.url and its original claim.source.url when available. Report limitations and null as unknown. Capture and verification dates are checks, never adoption or source publication dates. Do not infer current contract, spend or deployment; no calibrated confidence score is provided. firstPublicProof is an upper bound for on_or_before; job_post does not establish usage start. It dates the relationship; binding to the selected source is unverified. Adoption needs an explicit source statement. MCP may return fewer rows to fit its byte budget; keep filters and options on continuation. For enumeration pass pagination.nextOffset with pagination.snapshot (REST: follow pagination.next), and restart at offset 0 if the snapshot expires. includeEvidence or one structured constraint adds pilot evidence, separate from counts: a supported observation does not imply plan-wide suitability. Only assessment.eligible establishes that the requested exact criterion is supported; unknown/stale/conflicting evidence needs checking. Source capture dates do not establish current deployment. includeCapabilities returns documentation and operational-test status separately. Only a fresh tested_pass receipt verifies its exact task, operation, endpoint, version and plan; never generalize a read test to writes or untested scopes. blocked/not_tested means access or evidence is missing, not that a product lacks the capability.

Input Schema

NameRequiredDescriptionDefault
sizeNoList only customers in these employee bands, e.g. ['SMALL','MEDIUM'] for companies with 51-1000 employees. Customers of unknown size are left out; counts stay whole-tool.
toolYesTool slug or name, e.g. 'cursor', 'GitHub Copilot', 'harvey'.
limitNoRows to list (default 25, max 100). MCP may return fewer rows to fit its response budget; follow pagination.nextOffset and snapshot.
offsetNoZero-based list offset within 200 public rows, or 10000 with an explicitly granted data:bulk bearer credential. nextOffset=null can mean the public cap; inspect truncated. Bulk access: contact@usedby.ai.
snapshotNoPass pagination.snapshot on later pages. Restart if it expired.
constraintNoCheck one exact requirement against sourced facts. Unknown, stale or wrong-plan facts never pass. Automatically includes evidence.
includeEvidenceNoInclude bounded reviewed task examples and scoped choice facts for the 100-tool accepted catalog. No change to customer counts.
includeCapabilitiesNoInclude official/community API or MCP profiles and scoped operational test receipts. Documentation alone is not a successful test. Unknown access does not mean the product lacks a capability.

Output Schema

NameRequiredDescriptionDefault
toolNoThe tool, with its usedby page.
errorNoSet when the input matched nothing, was invalid, or the answer could not be returned.
notesNoHow to read this answer.
sourceYesThe usedby page to cite: quote with a link to source.url.
messageNoWhat went wrong, with the next step, when error is set.
signalsNoJob-post lines, the weakest proof.
customersNo
paginationNoList continuation; next is the REST URL for the same cached snapshot.
latestCheckNoLatest verification or capture of a public line.
suggestionsNoClose matches to ask again with, when error is not_found.
decisionEvidenceNo
agentCapabilitiesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / includeEvidence / description
      Previous value: -"Include bounded reviewed task examples and scoped choice facts for the 12-tool pilot. No change to customer counts."New value: +"Include bounded reviewed task examples and scoped choice facts for the 100-tool accepted catalog. No change to customer counts."
  2. Changed9 schema fields changed
    • changedInput schema / properties / limit / description
      Previous value: -"Rows to list (default 25, max 100). The usedby page has the full list."New value: +"Rows to list (default 25, max 100). MCP may return fewer rows to fit its response budget; follow pagination.nextOffset and snapshot."
    • addedOutput schema / properties / customers / properties / listed / items / properties / claim / properties / citation
      Added value: +{
      +  "description": "Entity-pair citation with the matching claim and primary source URLs; never substitute a neighboring row.",
      +  "type": "string"
      +}
    • changedOutput schema / properties / customers / properties / listed / items / properties / claim / properties / dates / properties / firstPublicProof / description
      Previous value: -"Upper bound of when the line became public: never an adoption date."New value: +"Relationship-level date: on_or_before is an upper bound; job_post does not date usage start; stated means what the source explicitly states. Binding to the selected source is unverified."
    • addedOutput schema / properties / customers / properties / listed / items / properties / claim / properties / dates / properties / firstPublicProofScope
      Added value: +{
      +  "const": "relationship",
      +  "type": "string"
      +}
    • addedOutput schema / properties / customers / properties / listed / items / properties / claim / properties / dates / properties / firstPublicProofSourceBinding
      Added value: +{
      +  "const": "unverified",
      +  "type": "string"
      +}
    • addedOutput schema / properties / customers / properties / listed / items / properties / claim / properties / dates / properties / sourcePublishedAtStatus
      Added value: +{
      +  "const": "unknown",
      +  "type": "string"
      +}
    • changedOutput schema / properties / customers / properties / listed / items / properties / claim / properties / source / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": {},
      -    "properties": {
      -      "evidenceId": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "excerpt": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "snapshot": {
      -        "anyOf": [
      -          {
      -            "additionalProperties": {},
      -            "properties": {
      -              "hash": {
      -                "anyOf": [
      -                  {
      -                    "type": "string"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              },
      -              "url": {
      -                "type": "string"
      -              }
      -            },
      -            "type": "object"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "url": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      }
      -    },
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": {},
      +    "properties": {
      +      "evidenceId": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "excerpt": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "snapshot": {
      +        "anyOf": [
      +          {
      +            "additionalProperties": {},
      +            "properties": {
      +              "hash": {
      +                "anyOf": [
      +                  {
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "url": {
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "snapshotStatus": {
      +        "enum": [
      +          "public_snapshot_available",
      +          "no_public_snapshot_exposed"
      +        ],
      +        "type": "string"
      +      },
      +      "url": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      }
      +    },
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedOutput schema / properties / customers / properties / listed / items / properties / firstPublicProof / description
      Previous value: -"Upper bound of when the line became public: never an adoption date."New value: +"Relationship-level date: on_or_before is an upper bound; job_post does not date usage start; stated means what the source explicitly states. Binding to the selected source is unverified."
    • changedOutput schema / properties / error / description
      Previous value: -"Set only when the input matched nothing or was invalid."New value: +"Set when the input matched nothing, was invalid, or the answer could not be returned."
  3. Changed1 schema field changed
    • addedOutput schema / properties / customers / properties / listed / items / properties / claim
      Added value: +{
      +  "additionalProperties": {},
      +  "description": "Canonical public relationship provenance. Null means unknown; dates and proof do not establish current deployment.",
      +  "properties": {
      +    "dates": {
      +      "additionalProperties": {},
      +      "properties": {
      +        "firstPublicProof": {
      +          "anyOf": [
      +            {
      +              "additionalProperties": {},
      +              "properties": {
      +                "date": {
      +                  "type": "string"
      +                },
      +                "kind": {
      +                  "enum": [
      +                    "on_or_before",
      +                    "job_post",
      +                    "stated"
      +                  ],
      +                  "type": "string"
      +                }
      +              },
      +              "type": "object"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ],
      +          "description": "Upper bound of when the line became public: never an adoption date."
      +        },
      +        "firstSeenAt": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "lastSeenAt": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "sourcePublishedAt": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "freshness": {
      +      "additionalProperties": {},
      +      "properties": {
      +        "capturedAt": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "lastVerifiedAt": {
      +          "anyOf": [
      +            {
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "id": {
      +      "type": "string"
      +    },
      +    "limitations": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "proof": {
      +      "additionalProperties": {},
      +      "properties": {
      +        "level": {
      +          "description": "Proof level, strongest first: CONFIRMED, DECLARED (the company states it), OBSERVED, SIGNAL (a job post, the weakest).",
      +          "enum": [
      +            "CONFIRMED",
      +            "DECLARED",
      +            "OBSERVED",
      +            "SIGNAL"
      +          ],
      +          "type": "string"
      +        },
      +        "method": {
      +          "anyOf": [
      +            {
      +              "enum": [
      +                "CASE_STUDY",
      +                "TESTIMONIAL",
      +                "PRESS",
      +                "DECLARED",
      +                "SUBPROCESSOR_LIST",
      +                "LOGO_WALL",
      +                "MANUAL",
      +                "DOMAIN_RECORD",
      +                "REPO_CONFIG",
      +                "JOB_POST"
      +              ],
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "relationship": {
      +      "additionalProperties": {},
      +      "properties": {
      +        "label": {
      +          "type": "string"
      +        },
      +        "type": {
      +          "type": "string"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "source": {
      +      "anyOf": [
      +        {
      +          "additionalProperties": {},
      +          "properties": {
      +            "evidenceId": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ]
      +            },
      +            "excerpt": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ]
      +            },
      +            "snapshot": {
      +              "anyOf": [
      +                {
      +                  "additionalProperties": {},
      +                  "properties": {
      +                    "hash": {
      +                      "anyOf": [
      +                        {
      +                          "type": "string"
      +                        },
      +                        {
      +                          "type": "null"
      +                        }
      +                      ]
      +                    },
      +                    "url": {
      +                      "type": "string"
      +                    }
      +                  },
      +                  "type": "object"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ]
      +            },
      +            "url": {
      +              "anyOf": [
      +                {
      +                  "type": "string"
      +                },
      +                {
      +                  "type": "null"
      +                }
      +              ]
      +            }
      +          },
      +          "type": "object"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "url": {
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  4. Changed1 schema field changed
    • changedOutput schema / properties / customers / properties / listed / items / properties / source / anyOf
      Previous value: -[
      -  {
      -    "additionalProperties": {},
      -    "properties": {
      -      "capturedAt": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      },
      -      "method": {
      -        "type": "string"
      -      },
      -      "url": {
      -        "anyOf": [
      -          {
      -            "type": "string"
      -          },
      -          {
      -            "type": "null"
      -          }
      -        ]
      -      }
      -    },
      -    "type": "object"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "additionalProperties": {},
      +    "properties": {
      +      "capturedAt": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      },
      +      "method": {
      +        "description": "How usedby knows, one of: CASE_STUDY, TESTIMONIAL, PRESS, DECLARED, SUBPROCESSOR_LIST, LOGO_WALL, MANUAL, DOMAIN_RECORD, REPO_CONFIG, JOB_POST.",
      +        "type": "string"
      +      },
      +      "url": {
      +        "anyOf": [
      +          {
      +            "type": "string"
      +          },
      +          {
      +            "type": "null"
      +          }
      +        ]
      +      }
      +    },
      +    "type": "object"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
  5. Changed4 schema fields changed
    • addedInput schema / properties / size
      Added value: +{
      +  "description": "List only customers in these employee bands, e.g. ['SMALL','MEDIUM'] for companies with 51-1000 employees. Customers of unknown size are left out; counts stay whole-tool.",
      +  "items": {
      +    "enum": [
      +      "STARTUP",
      +      "SMALL",
      +      "MEDIUM",
      +      "LARGE",
      +      "ENTERPRISE",
      +      "MEGA"
      +    ],
      +    "type": "string"
      +  },
      +  "minItems": 1,
      +  "type": "array"
      +}
    • addedOutput schema / properties / customers / properties / bySize
      Added value: +{
      +  "additionalProperties": {
      +    "type": "number"
      +  },
      +  "description": "Public lines by the customer's employee band (STARTUP 1-50, SMALL 51-200, MEDIUM 201-1000, LARGE 1001-5000, ENTERPRISE 5001-10000, MEGA 10001+); unknown when not proven.",
      +  "propertyNames": {
      +    "type": "string"
      +  },
      +  "type": "object"
      +}
    • addedOutput schema / properties / customers / properties / listed / items / properties / size
      Added value: +{
      +  "anyOf": [
      +    {
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "description": "Employee band; null when not proven."
      +}
    • addedOutput schema / properties / customers / properties / sizeFilter
      Added value: +{
      +  "additionalProperties": {},
      +  "description": "Present when size was passed: the bands asked and how many listed customers match.",
      +  "properties": {
      +    "bands": {
      +      "items": {
      +        "type": "string"
      +      },
      +      "type": "array"
      +    },
      +    "matching": {
      +      "type": "number"
      +    }
      +  },
      +  "type": "object"
      +}
  6. Changed2 schema fields changed
    • changedInput schema / properties / offset / description
      Previous value: -"Zero-based list offset within the first 200 public rows. nextOffset=null can mean the public cap; inspect truncated. Bulk access: contact@usedby.ai."New value: +"Zero-based list offset within 200 public rows, or 10000 with an explicitly granted data:bulk bearer credential. nextOffset=null can mean the public cap; inspect truncated. Bulk access: contact@usedby.ai."
    • changedInput schema / properties / offset / maximum
      Previous value: -199New value: +9999
  7. Changed2 schema fields changed
    • changedInput schema / properties / offset / description
      Previous value: -"Zero-based list offset. Follow pagination.nextOffset until null."New value: +"Zero-based list offset within the first 200 public rows. nextOffset=null can mean the public cap; inspect truncated. Bulk access: contact@usedby.ai."
    • changedInput schema / properties / offset / maximum
      Previous value: -1000000New value: +199
  8. Changed2 schema fields changed
    • addedInput schema / properties / includeCapabilities
      Added value: +{
      +  "description": "Include official/community API or MCP profiles and scoped operational test receipts. Documentation alone is not a successful test. Unknown access does not mean the product lacks a capability.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / agentCapabilities
      Added value: +{
      +  "anyOf": [
      +    {
      +      "additionalProperties": false,
      +      "properties": {
      +        "coverage": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "blocked": {
      +              "type": "number"
      +            },
      +            "documented": {
      +              "type": "number"
      +            },
      +            "expired": {
      +              "type": "number"
      +            },
      +            "notTested": {
      +              "type": "number"
      +            },
      +            "profiles": {
      +              "type": "number"
      +            },
      +            "testedFail": {
      +              "type": "number"
      +            },
      +            "testedPass": {
      +              "type": "number"
      +            },
      +            "unknownDocumentation": {
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "profiles",
      +            "documented",
      +            "unknownDocumentation",
      +            "testedPass",
      +            "testedFail",
      +            "blocked",
      +            "notTested",
      +            "expired"
      +          ],
      +          "type": "object"
      +        },
      +        "error": {
      +          "const": "invalid_manifest",
      +          "type": "string"
      +        },
      +        "evaluatedAt": {
      +          "type": "string"
      +        },
      +        "profiles": {
      +          "items": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "auth": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "method": {
      +                    "maxLength": 2000,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  "scopes": {
      +                    "anyOf": [
      +                      {
      +                        "items": {
      +                          "maxLength": 160,
      +                          "minLength": 1,
      +                          "type": "string"
      +                        },
      +                        "maxItems": 32,
      +                        "type": "array"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "method",
      +                  "scopes"
      +                ],
      +                "type": "object"
      +              },
      +              "capability": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "endpoint": {
      +                    "anyOf": [
      +                      {
      +                        "maxLength": 1000,
      +                        "type": "string"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ]
      +                  },
      +                  "endpointTemplate": {
      +                    "anyOf": [
      +                      {
      +                        "maxLength": 1000,
      +                        "minLength": 1,
      +                        "type": "string"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ],
      +                    "default": null
      +                  },
      +                  "id": {
      +                    "maxLength": 160,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  "operations": {
      +                    "items": {
      +                      "additionalProperties": false,
      +                      "properties": {
      +                        "effect": {
      +                          "enum": [
      +                            "read",
      +                            "write"
      +                          ],
      +                          "type": "string"
      +                        },
      +                        "method": {
      +                          "maxLength": 20,
      +                          "minLength": 1,
      +                          "type": "string"
      +                        },
      +                        "name": {
      +                          "maxLength": 160,
      +                          "minLength": 1,
      +                          "type": "string"
      +                        }
      +                      },
      +                      "required": [
      +                        "name",
      +                        "method",
      +                        "effect"
      +                      ],
      +                      "type": "object"
      +                    },
      +                    "maxItems": 12,
      +                    "type": "array"
      +                  },
      +                  "protocol": {
      +                    "anyOf": [
      +                      {
      +                        "enum": [
      +                          "rest",
      +                          "mcp"
      +                        ],
      +                        "type": "string"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ]
      +                  },
      +                  "task": {
      +                    "maxLength": 160,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  "version": {
      +                    "anyOf": [
      +                      {
      +                        "maxLength": 160,
      +                        "minLength": 1,
      +                        "type": "string"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "id",
      +                  "protocol",
      +                  "task",
      +                  "endpoint",
      +                  "endpointTemplate",
      +                  "version",
      +                  "operations"
      +                ],
      +                "type": "object"
      +              },
      +              "checkedAt": {
      +                "format": "date-time",
      +                "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      +                "type": "string"
      +              },
      +              "costs": {
      +                "anyOf": [
      +                  {
      +                    "maxLength": 2000,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "documentationStatus": {
      +                "enum": [
      +                  "documented",
      +                  "expired",
      +                  "unknown"
      +                ],
      +                "type": "string"
      +              },
      +              "limits": {
      +                "anyOf": [
      +                  {
      +                    "maxLength": 2000,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "manualSteps": {
      +                "items": {
      +                  "maxLength": 2000,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                "maxItems": 12,
      +                "type": "array"
      +              },
      +              "plan": {
      +                "anyOf": [
      +                  {
      +                    "maxLength": 160,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "product": {
      +                "maxLength": 160,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "publisher": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "kind": {
      +                    "enum": [
      +                      "official",
      +                      "community"
      +                    ],
      +                    "type": "string"
      +                  },
      +                  "name": {
      +                    "maxLength": 160,
      +                    "minLength": 1,
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "name",
      +                  "kind"
      +                ],
      +                "type": "object"
      +              },
      +              "sources": {
      +                "items": {
      +                  "additionalProperties": false,
      +                  "properties": {
      +                    "claims": {
      +                      "items": {
      +                        "maxLength": 160,
      +                        "minLength": 1,
      +                        "type": "string"
      +                      },
      +                      "maxItems": 16,
      +                      "type": "array"
      +                    },
      +                    "passage": {
      +                      "maxLength": 2000,
      +                      "minLength": 1,
      +                      "type": "string"
      +                    },
      +                    "url": {
      +                      "maxLength": 1000,
      +                      "type": "string"
      +                    }
      +                  },
      +                  "required": [
      +                    "url",
      +                    "passage",
      +                    "claims"
      +                  ],
      +                  "type": "object"
      +                },
      +                "maxItems": 8,
      +                "type": "array"
      +              },
      +              "status": {
      +                "enum": [
      +                  "documented",
      +                  "tested_pass",
      +                  "tested_fail",
      +                  "blocked",
      +                  "not_tested",
      +                  "expired"
      +                ],
      +                "type": "string"
      +              },
      +              "test": {
      +                "anyOf": [
      +                  {
      +                    "additionalProperties": false,
      +                    "properties": {
      +                      "assertions": {
      +                        "items": {
      +                          "additionalProperties": false,
      +                          "properties": {
      +                            "name": {
      +                              "maxLength": 160,
      +                              "minLength": 1,
      +                              "type": "string"
      +                            },
      +                            "passed": {
      +                              "type": "boolean"
      +                            }
      +                          },
      +                          "required": [
      +                            "name",
      +                            "passed"
      +                          ],
      +                          "type": "object"
      +                        },
      +                        "maxItems": 32,
      +                        "type": "array"
      +                      },
      +                      "authScopes": {
      +                        "items": {
      +                          "maxLength": 160,
      +                          "minLength": 1,
      +                          "type": "string"
      +                        },
      +                        "maxItems": 32,
      +                        "type": "array"
      +                      },
      +                      "durationMs": {
      +                        "maximum": 86400000,
      +                        "minimum": 0,
      +                        "type": "number"
      +                      },
      +                      "errorReason": {
      +                        "anyOf": [
      +                          {
      +                            "pattern": "^[a-z][a-z0-9_]{0,79}$",
      +                            "type": "string"
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ]
      +                      },
      +                      "expected": {
      +                        "maxLength": 2000,
      +                        "minLength": 1,
      +                        "type": "string"
      +                      },
      +                      "finishedAt": {
      +                        "format": "date-time",
      +                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      +                        "type": "string"
      +                      },
      +                      "fixtureSha256": {
      +                        "anyOf": [
      +                          {
      +                            "pattern": "^[a-f0-9]{64}$",
      +                            "type": "string"
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ]
      +                      },
      +                      "id": {
      +                        "maxLength": 160,
      +                        "minLength": 1,
      +                        "type": "string"
      +                      },
      +                      "observedCost": {
      +                        "anyOf": [
      +                          {
      +                            "additionalProperties": false,
      +                            "properties": {
      +                              "amount": {
      +                                "minimum": 0,
      +                                "type": "number"
      +                              },
      +                              "currency": {
      +                                "maxLength": 12,
      +                                "minLength": 3,
      +                                "type": "string"
      +                              }
      +                            },
      +                            "required": [
      +                              "amount",
      +                              "currency"
      +                            ],
      +                            "type": "object"
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ]
      +                      },
      +                      "profileSha256": {
      +                        "pattern": "^[a-f0-9]{64}$",
      +                        "type": "string"
      +                      },
      +                      "recordedStatus": {
      +                        "enum": [
      +                          "tested_pass",
      +                          "tested_fail",
      +                          "blocked",
      +                          "not_tested"
      +                        ],
      +                        "type": "string"
      +                      },
      +                      "runtime": {
      +                        "anyOf": [
      +                          {
      +                            "additionalProperties": false,
      +                            "properties": {
      +                              "name": {
      +                                "maxLength": 160,
      +                                "minLength": 1,
      +                                "type": "string"
      +                              },
      +                              "version": {
      +                                "maxLength": 160,
      +                                "minLength": 1,
      +                                "type": "string"
      +                              }
      +                            },
      +                            "required": [
      +                              "name",
      +                              "version"
      +                            ],
      +                            "type": "object"
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ]
      +                      },
      +                      "scope": {
      +                        "additionalProperties": false,
      +                        "properties": {
      +                          "capabilityId": {
      +                            "maxLength": 160,
      +                            "minLength": 1,
      +                            "type": "string"
      +                          },
      +                          "endpoint": {
      +                            "anyOf": [
      +                              {
      +                                "maxLength": 1000,
      +                                "type": "string"
      +                              },
      +                              {
      +                                "type": "null"
      +                              }
      +                            ]
      +                          },
      +                          "endpointTemplate": {
      +                            "anyOf": [
      +                              {
      +                                "maxLength": 1000,
      +                                "minLength": 1,
      +                                "type": "string"
      +                              },
      +                              {
      +                                "type": "null"
      +                              }
      +                            ],
      +                            "default": null
      +                          },
      +                          "operation": {
      +                            "maxLength": 160,
      +                            "minLength": 1,
      +                            "type": "string"
      +                          },
      +                          "plan": {
      +                            "anyOf": [
      +                              {
      +                                "maxLength": 160,
      +                                "minLength": 1,
      +                                "type": "string"
      +                              },
      +                              {
      +                                "type": "null"
      +                              }
      +                            ]
      +                          },
      +                          "product": {
      +                            "maxLength": 160,
      +                            "minLength": 1,
      +                            "type": "string"
      +                          },
      +                          "protocol": {
      +                            "anyOf": [
      +                              {
      +                                "enum": [
      +                                  "rest",
      +                                  "mcp"
      +                                ],
      +                                "type": "string"
      +                              },
      +                              {
      +                                "type": "null"
      +                              }
      +                            ]
      +                          },
      +                          "task": {
      +                            "maxLength": 160,
      +                            "minLength": 1,
      +                            "type": "string"
      +                          },
      +                          "toolSlug": {
      +                            "maxLength": 160,
      +                            "minLength": 1,
      +                            "type": "string"
      +                          },
      +                          "version": {
      +                            "anyOf": [
      +                              {
      +                                "maxLength": 160,
      +                                "minLength": 1,
      +                                "type": "string"
      +                              },
      +                              {
      +                                "type": "null"
      +                              }
      +                            ]
      +                          }
      +                        },
      +                        "required": [
      +                          "toolSlug",
      +                          "product",
      +                          "plan",
      +                          "capabilityId",
      +                          "task",
      +                          "protocol",
      +                          "endpoint",
      +                          "endpointTemplate",
      +                          "version",
      +                          "operation"
      +                        ],
      +                        "type": "object"
      +                      },
      +                      "startedAt": {
      +                        "format": "date-time",
      +                        "pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?(?:Z|([+-](?:[01]\\d|2[0-3]):[0-5]\\d)))$",
      +                        "type": "string"
      +                      },
      +                      "status": {
      +                        "enum": [
      +                          "documented",
      +                          "tested_pass",
      +                          "tested_fail",
      +                          "blocked",
      +                          "not_tested",
      +                          "expired"
      +                        ],
      +                        "type": "string"
      +                      },
      +                      "validityReason": {
      +                        "anyOf": [
      +                          {
      +                            "type": "string"
      +                          },
      +                          {
      +                            "type": "null"
      +                          }
      +                        ]
      +                      }
      +                    },
      +                    "required": [
      +                      "id",
      +                      "profileSha256",
      +                      "scope",
      +                      "runtime",
      +                      "authScopes",
      +                      "fixtureSha256",
      +                      "expected",
      +                      "assertions",
      +                      "startedAt",
      +                      "finishedAt",
      +                      "durationMs",
      +                      "observedCost",
      +                      "errorReason",
      +                      "status",
      +                      "recordedStatus",
      +                      "validityReason"
      +                    ],
      +                    "type": "object"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              },
      +              "testStatus": {
      +                "enum": [
      +                  "documented",
      +                  "tested_pass",
      +                  "tested_fail",
      +                  "blocked",
      +                  "not_tested",
      +                  "expired"
      +                ],
      +                "type": "string"
      +              },
      +              "toolSlug": {
      +                "maxLength": 160,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "unknowns": {
      +                "items": {
      +                  "maxLength": 2000,
      +                  "minLength": 1,
      +                  "type": "string"
      +                },
      +                "maxItems": 16,
      +                "type": "array"
      +              }
      +            },
      +            "required": [
      +              "toolSlug",
      +              "product",
      +              "plan",
      +              "publisher",
      +              "capability",
      +              "auth",
      +              "manualSteps",
      +              "limits",
      +              "costs",
      +              "checkedAt",
      +              "sources",
      +              "unknowns",
      +              "status",
      +              "documentationStatus",
      +              "testStatus",
      +              "test"
      +            ],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "status": {
      +          "enum": [
      +            "available",
      +            "unavailable"
      +          ],
      +          "type": "string"
      +        },
      +        "toolSlug": {
      +          "type": "string"
      +        },
      +        "version": {
      +          "const": 1,
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "version",
      +        "toolSlug",
      +        "status",
      +        "evaluatedAt",
      +        "profiles",
      +        "coverage"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ]
      +}
  9. Changed3 schema fields changed
    • addedInput schema / properties / constraint
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "Check one exact requirement against sourced facts. Unknown, stale or wrong-plan facts never pass. Automatically includes evidence.",
      +  "properties": {
      +    "criterion": {
      +      "enum": [
      +        "pricing",
      +        "free_trial",
      +        "integrations",
      +        "languages",
      +        "certifications",
      +        "data_training",
      +        "data_residency",
      +        "dpa",
      +        "api_access",
      +        "export_availability",
      +        "usage_limits",
      +        "required_plan"
      +      ],
      +      "type": "string"
      +    },
      +    "expected": {
      +      "anyOf": [
      +        {
      +          "maxLength": 160,
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        {
      +          "type": "boolean"
      +        },
      +        {
      +          "type": "number"
      +        }
      +      ]
      +    },
      +    "language": {
      +      "maxLength": 100,
      +      "minLength": 1,
      +      "type": "string"
      +    },
      +    "plan": {
      +      "maxLength": 100,
      +      "minLength": 1,
      +      "type": "string"
      +    },
      +    "region": {
      +      "maxLength": 100,
      +      "minLength": 1,
      +      "type": "string"
      +    },
      +    "volumeBasis": {
      +      "maxLength": 100,
      +      "minLength": 1,
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "criterion",
      +    "expected"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / properties / includeEvidence
      Added value: +{
      +  "description": "Include bounded reviewed task examples and scoped choice facts for the 12-tool pilot. No change to customer counts.",
      +  "type": "boolean"
      +}
    • addedOutput schema / properties / decisionEvidence
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "assessment": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "eligible": {
      +          "type": "boolean"
      +        },
      +        "evidence": {
      +          "items": {
      +            "additionalProperties": {},
      +            "properties": {},
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "reason": {
      +          "type": "string"
      +        },
      +        "status": {
      +          "enum": [
      +            "supported",
      +            "contradicted",
      +            "unknown",
      +            "stale",
      +            "conflicting"
      +          ],
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "status",
      +        "eligible",
      +        "reason",
      +        "evidence"
      +      ],
      +      "type": "object"
      +    },
      +    "evidence": {
      +      "anyOf": [
      +        {
      +          "additionalProperties": {},
      +          "properties": {
      +            "constraints": {
      +              "items": {
      +                "additionalProperties": {},
      +                "properties": {
      +                  "criterion": {
      +                    "type": "string"
      +                  },
      +                  "passage": {
      +                    "type": "string"
      +                  },
      +                  "sourceUrl": {
      +                    "type": "string"
      +                  },
      +                  "status": {
      +                    "type": "string"
      +                  },
      +                  "value": {
      +                    "anyOf": [
      +                      {
      +                        "type": "string"
      +                      },
      +                      {
      +                        "type": "number"
      +                      },
      +                      {
      +                        "type": "boolean"
      +                      },
      +                      {
      +                        "type": "null"
      +                      }
      +                    ]
      +                  }
      +                },
      +                "required": [
      +                  "criterion",
      +                  "value",
      +                  "status",
      +                  "passage",
      +                  "sourceUrl"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "productId": {
      +              "type": "string"
      +            },
      +            "status": {
      +              "enum": [
      +                "available",
      +                "unavailable"
      +              ],
      +              "type": "string"
      +            },
      +            "usages": {
      +              "items": {
      +                "additionalProperties": {},
      +                "properties": {
      +                  "passage": {
      +                    "type": "string"
      +                  },
      +                  "source": {
      +                    "additionalProperties": {},
      +                    "properties": {
      +                      "capturedAt": {
      +                        "type": "string"
      +                      },
      +                      "url": {
      +                        "type": "string"
      +                      }
      +                    },
      +                    "required": [
      +                      "url",
      +                      "capturedAt"
      +                    ],
      +                    "type": "object"
      +                  }
      +                },
      +                "required": [
      +                  "passage",
      +                  "source"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "status",
      +            "productId",
      +            "usages",
      +            "constraints"
      +          ],
      +          "type": "object"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    }
      +  },
      +  "required": [
      +    "evidence"
      +  ],
      +  "type": "object"
      +}
  10. Changed3 schema fields changed
    • changedOutput schema / properties / customers / properties / listed / items / properties / proof / description
      Previous value: -"Proof level, strongest first: CONFIRMED, OBSERVED, SIGNAL (a job post, the weakest)."New value: +"Proof level, strongest first: CONFIRMED, DECLARED (the company states it), OBSERVED, SIGNAL (a job post, the weakest)."
    • changedOutput schema / properties / customers / properties / listed / items / properties / proof / enum
      Previous value: -[
      -  "CONFIRMED",
      -  "OBSERVED",
      -  "SIGNAL"
      -]New value: +[
      +  "CONFIRMED",
      +  "DECLARED",
      +  "OBSERVED",
      +  "SIGNAL"
      +]
    • addedOutput schema / properties / customers / properties / mix / properties / declared
      Added value: +{
      +  "type": "number"
      +}
  11. Changed3 schema fields changed
    • addedInput schema / properties / offset
      Added value: +{
      +  "description": "Zero-based list offset. Follow pagination.nextOffset until null.",
      +  "maximum": 1000000,
      +  "minimum": 0,
      +  "type": "integer"
      +}
    • addedInput schema / properties / snapshot
      Added value: +{
      +  "description": "Pass pagination.snapshot on later pages. Restart if it expired.",
      +  "maxLength": 100,
      +  "type": "string"
      +}
    • addedOutput schema / properties / pagination
      Added value: +{
      +  "additionalProperties": {},
      +  "description": "List continuation; next is the REST URL for the same cached snapshot.",
      +  "properties": {
      +    "next": {
      +      "anyOf": [
      +        {
      +          "type": "string"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "nextOffset": {
      +      "anyOf": [
      +        {
      +          "type": "number"
      +        },
      +        {
      +          "type": "null"
      +        }
      +      ]
      +    },
      +    "offset": {
      +      "type": "number"
      +    },
      +    "snapshot": {
      +      "type": "string"
      +    }
      +  },
      +  "type": "object"
      +}
  12. First observed

TDQS

A4.1/5.0
Behavior5/5

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

Annotations already declare a read-only, idempotent query, and the description still adds substantial non-obvious behavior: server-side byte budgeting that can return fewer rows than limit, snapshot expiry, a 200-row public cap with a bulk-credential escalation path, and an explicit statement that no calibrated confidence score exists. The proof-level taxonomy and the SUBPROCESSOR_LIST caveat are exactly the kind of semantics structured fields cannot convey.

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

Conciseness3/5

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

The purpose is front-loaded, but the body is a dense block of caution clauses that repeat themselves — 'Capture and verification dates are checks, never adoption or source publication dates' is restated later as 'Source capture dates do not establish current deployment.' Several sentences read as output-formatting instructions to the caller rather than tool behavior, which inflates length without adding new information.

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 an 8-parameter, nested-object tool with an output schema, the definition covers what an agent needs before calling: proof ordering, pagination continuation, truncation, constraint eligibility, and the limits of capability evidence. Remaining gaps are minor — chiefly the absence of explicit routing against the sibling tools.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3, but the description still adds value: constraint 'automatically includes evidence' and that only assessment.eligible qualifies, includeCapabilities' separation of documentation from tested receipts, and the rule that a read test must not be generalized to writes. It adds interpretive meaning rather than restating field text.

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?

The opening sentence gives a specific verb and resource — companies that publicly use a tool — plus the ordering (strongest proof first) and the per-row payload (proof level, source page, first public proof date). It implicitly distinguishes itself from company_stack by inverting the subject (companies for a tool rather than tools for a company), but never names a sibling to make that contrast explicit.

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?

Strong task-level guidance: when to add includeEvidence or a structured constraint, when to use includeCapabilities, how to continue with pagination.nextOffset/snapshot, and that only assessment.eligible establishes a criterion. It stops short of saying when to prefer this over company_stack or shortlist_tools, so selection between siblings is still left to inference.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources