CrawlCheck

Registry · Capabilities · motherduck.com

Capability registry

What motherduck.com declares an agent can do

Measured 2026-10-04 05:20 UTC from the declarations the site publishes (record 52hxtg2nou). Each capability is shown as declared, under the policy class that decides whether anything may call it, beside what a call observed.

12declared
0public read-only
0called and verified
0declared ≠ observed
agent_skill, openapiprotocols
Identity and accounts: 9Metadata: 3
Identity and accounts 9 · Metadata 3

Declared versus observed

CapabilityPolicy classDeclaredObserved
ducklings-getDucklingConfigForUser
openapi · GET · https://api.motherduck.com/v1/users/{username}/instances
Identity and accounts
never called automatically
its name contains “user”
auth: http_bearer · required inputs: 1
not attempted
requires http_bearer: never called without the operator's own credentials
ducklings-setDucklingConfigForUser
openapi · PUT · https://api.motherduck.com/v1/users/{username}/instances
Identity and accounts
never called automatically
its name contains “user”
auth: http_bearer · required inputs: 2
not attempted
requires http_bearer: never called without the operator's own credentials
ducklings-getActiveAccounts
openapi · GET · https://api.motherduck.com/v1/active_accounts
Identity and accounts
never called automatically
its name contains “accounts”
auth: http_bearer · required inputs: 0
not attempted
requires http_bearer: never called without the operator's own credentials
users-createServiceAccount
openapi · POST · https://api.motherduck.com/v1/users
Identity and accounts
never called automatically
its name contains “users”
auth: http_bearer · required inputs: 1
not attempted
requires http_bearer: never called without the operator's own credentials
users-delete
openapi · DELETE · https://api.motherduck.com/v1/users/{username}
Identity and accounts
never called automatically
its name contains “users”
auth: http_bearer · required inputs: 1
not attempted
requires http_bearer: never called without the operator's own credentials
users-listTokens
openapi · GET · https://api.motherduck.com/v1/users/{username}/tokens
Identity and accounts
never called automatically
its name contains “users”
auth: http_bearer · required inputs: 1
not attempted
requires http_bearer: never called without the operator's own credentials
users-createToken
openapi · POST · https://api.motherduck.com/v1/users/{username}/tokens
Identity and accounts
never called automatically
its name contains “users”
auth: http_bearer · required inputs: 2
not attempted
requires http_bearer: never called without the operator's own credentials
users-deleteToken
openapi · DELETE · https://api.motherduck.com/v1/users/{username}/tokens/{token_id}
Identity and accounts
never called automatically
its name contains “users”
auth: http_bearer · required inputs: 2
not attempted
requires http_bearer: never called without the operator's own credentials
dashboards-createEmbedSession
openapi · POST · https://api.motherduck.com/v1/dives/{dive_id}/embed-session
Identity and accounts
never called automatically
its name contains “session”
auth: http_bearer · required inputs: 2
not attempted
requires http_bearer: never called without the operator's own credentials
llms-txt
agent_skill · https://motherduck.com/.well-known/agent-skills/llms-txt/SKILL.md
Metadata
never called automatically
an instruction file an agent reads; not an operation
auth: none
not attempted
metadata: describes a surface, is not itself an action
markdown-negotiation
agent_skill · https://motherduck.com/.well-known/agent-skills/markdown-negotiation/SKILL.md
Metadata
never called automatically
an instruction file an agent reads; not an operation
auth: none
not attempted
metadata: describes a surface, is not itself an action
api-and-mcp
agent_skill · https://motherduck.com/.well-known/agent-skills/api-and-mcp/SKILL.md
Metadata
never called automatically
an instruction file an agent reads; not an operation
auth: none
not attempted
metadata: describes a surface, is not itself an action

Where the declaration and the call disagree

None: every capability that was called answered as declared.

Signed certificate

This page’s rows, signed by the observer’s Ed25519 key: every capability’s id, endpoint, safety class, policy class and observed state, the declaration hashes and the record’s sealed manifest. The certificate is derived from the record alone, so the same record always yields the same id.

certificate_id ccap1:ce5cfa6a8c68eb468f93a5c6f9a8442d0c56829810fb0532652d11b5336f5537
alg Ed25519 · kid hcIAczGf-8EFBnkunmZlvFWnD2nHHeHeC9cM4BTiBVo
sig GSOCYysgTaVSGeMQ0Dt66_peilv9aJt0ze1_fBazsqPwK4Rtd9rkAfdZBQT92Jjrf7JZQJpu75FvXWU8-1Q4BA

The certificate as JSON · verify it now · the key directory · machine-readability certificate

To verify it yourself: SHA-256 the certificate object as canonical JSON (keys sorted, no whitespace); the hex digest must equal certificate_sha256 and the id; then check the Ed25519 signature over "crawlcheck-capability-certificate-v1\n" followed by that hex digest, with the key in the directory whose RFC 7638 thumbprint is the kid.

Policy classes

Policy classCalled automatically?Rule
Public read-only
public_read_only
yes, to verifyMay be called without credentials. CrawlCheck calls it only to check the declaration: GET with no input, on the scanned origin.
Authenticated read-only
authenticated_read_only
neverNever called by CrawlCheck. An agent needs the user's own credentials and consent.
Reversible write
reversible_write
neverNever invoked automatically. Needs the owner's written authorisation and a test account.
Irreversible write
irreversible_write
neverNever invoked automatically. Deletes or changes something that cannot be undone.
Financial
financial
neverNever invoked automatically. Moves money or creates a charge.
External communication
external_communication
neverNever invoked automatically. Sends a message, email or notification to someone.
Identity and accounts
identity
neverNever invoked automatically. Creates, signs in to or changes an account or credential.
Unknown
unknown
neverNever invoked. Its effect cannot be read from the declaration, so it is treated as the riskiest case.
Metadata
metadata
neverNothing to invoke: a listing, a server card or a skill file, not an operation.