Skip to main content
Glama

Server Details

The cross-LLM AI agent marketplace

Ownership verified
Status
Healthy
OAuth
Works in Glama
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4/5.0

Scored across 60 tools

Disambiguation3/5

Most tools have clearly distinct resource+action boundaries, and descriptions aggressively cross-reference near-neighbors (add vs attach KB, wizard vs submit, preflight vs status). The versioning cluster is the weak spot: bump_version, repull, reintrospect_mcp, and new_version all publish a new version, so an agent must read carefully to pick the right one.

Naming Consistency4/5

The dominant pattern is findagent_<verb>_<noun> in snake_case (list_kbs, create_org, add_kb_document), which is very predictable. It loses a point for outliers like whoami, preflight, earnings, skill_search, and new_version that don't follow the verb_noun convention.

Tool Count1/5

At 60 tools this is far beyond the typical well-scoped MCP surface, and the rubric treats 50+ as an extreme mismatch. Even though FindAgent spans many subdomains, the count is bloated by redundant versioning helpers and overlapping submission flow tools, making selection costly for an agent.

Completeness4/5

The surface covers the main lifecycles well: agent creation/submission/versioning/rollback/withdrawal, knowledge-base attach/detach/document management, org invites and roles, GitHub connect/import, and the request board. Minor gaps like no KB metadata update, no org delete/rename, and no explicit connector removal are workable, but not fatal.

Available Tools

60 tools
findagent_accept_org_inviteAInspect

Accept an organization invite using the token from an invite link. Binds to YOUR authenticated FindAgent email — a token sent to a different email (or an expired/reused token) is rejected.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenYesThe raw invite token.

Output Schema

ParametersJSON Schema
NameRequiredDescription
organizationNo

TDQS

A4.7/5.0
Behavior5/5

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

It discloses important behavioral constraints beyond the annotations: the token binds to the authenticated email, and tokens sent to other emails, expired tokens, or reused tokens are rejected. The readOnlyHint=false annotation is consistent with this mutating action.

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

Conciseness5/5

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

The description is two sentences with no filler. The primary action is front-loaded, and the critical constraint about email binding and token validity follows immediately.

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

Completeness5/5

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

For a one-parameter tool with an output schema, the description covers what the tool does, where the token comes from, and the key failure conditions. Nothing essential is missing for an agent to invoke it correctly.

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?

The schema already documents token with 100% coverage, but the description adds meaning by specifying it is the raw token from an invite link and by explaining validity constraints such as email binding and expiry/reuse rejection.

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

Purpose5/5

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

The description states a specific verb and resource: 'Accept an organization invite' using the invite token. It also adds a key scoping detail—binding to the authenticated FindAgent email—which distinguishes it clearly from sibling tools like invite_member or leave_org.

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?

The description makes the intended use clear: call this when you have a token from an organization invite link. It does not explicitly name alternatives or exclusions, but the action is unique enough among siblings that the context is sufficient.

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

findagent_add_connectorA
Read-only
Inspect

Add a published FindAgent agent you're ENTITLED to (free, or paid + purchased) as a hosted MCP connector. Returns the per-client connector config — the hosted server URL (mcp.findagent.cloud/agents/), a drop-in mcp.json block, a Claude Code command, and the one-time FindAgent sign-in steps. Free agents are always available; a paid agent you don't own returns purchase_required pointing at findagent_buy_agent. An unknown or unpublished slug returns a needs_input result pointing back to findagent_browse_agents. This returns config only — the actual install happens when you complete the sign-in in your client. If the slug is an MCP SERVER LISTING rather than an agent FindAgent runs, it returns status external_mcp_server with the PROVIDER's own connect details (their URL, or the command that starts the server on the user's machine) and no FindAgent sign-in — FindAgent is not in that connection.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe published agent slug (from findagent_browse_agents).

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
titleNo
statusNo
currencyNo
connectorNo
next_toolNo
connectionNo
price_typeNo
listing_urlNo
price_centsNo
price_labelNo
instructionsNo

TDQS

A4.8/5.0
Behavior5/5

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

Annotations declare readOnlyHint=true, and the description explains why that is truthful: it 'returns config only — the actual install happens when you complete the sign-in in your client.' It goes well beyond the annotations by enumerating the three distinct result statuses (purchase_required, needs_input, external_mcp_server), the hosted URL format, and the fact that FindAgent is not in the loop for external listings.

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

Conciseness4/5

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

Dense but front-loaded: capability first, then return payload, then failure modes, then the external-server caveat. Every sentence carries information, though the four-sentence run-on covering entitlement and error states could be tightened slightly for scanning.

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

Completeness5/5

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

Despite an output schema existing, the description still characterizes the returned config (hosted URL, mcp.json block, Claude Code command, sign-in steps) and all non-success statuses. Combined with readOnlyHint and openWorldHint annotations, an agent has everything needed to call this and interpret the result.

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% for the single slug parameter, so the baseline is 3, but the description adds real meaning: the slug must be a *published* agent slug, where to obtain it (findagent_browse_agents), and what each class of invalid slug produces. It stops short of any format/syntax guidance beyond that.

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

Purpose5/5

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

States a specific verb and resource ('Add a published FindAgent agent ... as a hosted MCP connector') and immediately scopes it by entitlement. It also names the sibling tools it is not (findagent_browse_agents for discovery, findagent_buy_agent for purchase), so an agent can route correctly without opening another schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit when-to-use and when-not-to-use: free agents always work, unowned paid agents return purchase_required pointing at findagent_buy_agent, unknown/unpublished slugs return needs_input pointing at findagent_browse_agents, and MCP server listings take a different path entirely. The alternative tool for each blocked case is named.

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

findagent_add_kb_documentAInspect

Puts CONTENT INTO a knowledge base. This is not the tool that makes a knowledge base reachable from an agent — that is findagent_attach_kb, which connects an existing base to an agent, department or organization. Add a text document to a knowledge base you own by pasting its content. It ingests asynchronously (parse → structure-aware chunk → embed with the KB’s bound key). Content is de-duplicated by hash: re-adding the exact same text is a no-op (the response deduped flag is true, no second document). Requires the KB to have an embedding key bound, or the document will not ingest. For files (PDF/markdown/docx), use the web Knowledge Base uploader.

ParametersJSON Schema
NameRequiredDescriptionDefault
textYesThe document content to add — paste the full text (plain text, max 1 MB).
kb_idYesThe knowledge base id (from findagent_list_kbs).
titleNoA short human-readable title for the document (shown in findagent_list_kb_documents). Optional — defaults to "Untitled document".

Output Schema

ParametersJSON Schema
NameRequiredDescription
documentNo
instructionsNo

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only say readOnlyHint=false and openWorldHint=false. The description goes well beyond them: asynchronous ingest pipeline (parse → structure-aware chunk → embed with the KB's bound key), hash-based de-duplication where re-adding is a no-op surfaced via the `deduped` flag, and the embedding-key precondition. This is exactly the extra behavioral context annotations cannot carry.

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

Conciseness4/5

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

Front-loaded with purpose and the primary disambiguation, and nearly every sentence carries a distinct fact (alternative tool, file path, async pipeline, dedup, prerequisite). Slight redundancy between the opening clause and 'Add a text document…' keeps it just short of 5.

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

Completeness5/5

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

For a write tool with an output schema already present, the description fills in what the structured fields do not: the async ingest model, dedup semantics and its response flag, the embedding-key precondition, and the file-vs-text boundary. Nothing needed to call it correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents text (plain text, max 1 MB), kb_id (from findagent_list_kbs), and the optional title default. The description adds no syntax or format detail beyond the schema, so the baseline of 3 applies.

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

Purpose5/5

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

States a specific verb and resource ('Puts CONTENT INTO a knowledge base' / 'Add a text document'), and explicitly names the sibling it is not — findagent_attach_kb — plus the file-upload path. An agent can distinguish this from attach_kb and the uploader without opening any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly covers when-not-to-use (findagent_attach_kb for reachability; web uploader for PDF/markdown/docx) and states the hard prerequisite that the KB must have an embedding key bound or ingest fails. This is a complete routing decision.

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

findagent_attach_kbAInspect

Connects an EXISTING knowledge base to something that will use it. It adds no content — for that use findagent_add_kb_document, which puts a document into the base itself. Attach a knowledge base you own to an agent or department you own, to an organization you administer (org KB — auto-available to every agent/department run for the org’s active members), or bind it as your personal KB. Identify an agent/department target by target_slug (recommended) or target_id from findagent_list_my_agents; identify an org target by its slug/id from findagent_list_orgs (you must be an org owner or admin). Choose mode: tool (the agent gets a search_knowledge tool), auto_inject (relevant passages are prepended before the call), or both. This is NOT part of the agent manifest, so updating the KB needs no agent re-publish.

ParametersJSON Schema
NameRequiredDescriptionDefault
modeNoHow the KB is used. Default tool.
kb_idYesThe knowledge base id (from findagent_list_kbs).
target_idNoThe agent/department id you own (findagent_list_my_agents) or the org id you administer (findagent_list_orgs). Alternative to target_slug. Omit for user_personal.
target_kindYesWhat to attach it to.
target_slugNoThe agent/department slug you own (findagent_list_my_agents) or the org slug you administer (findagent_list_orgs). Recommended over target_id. Omit for user_personal.

Output Schema

ParametersJSON Schema
NameRequiredDescription
attachmentNo
instructionsNo

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=false and openWorldHint=false, but the description adds substantial behavior: the authorization requirement for org targets, that org KBs are auto-available to every agent/department run for active members, what each mode actually does at runtime, and that attachments are not part of the agent manifest so updates need no re-publish. This is context an agent cannot get from the annotations.

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

Conciseness4/5

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

Front-loads the core action and the add_kb_document contrast, then handles targets, mode, and the manifest detail in a logical order. Slightly long, but nearly every sentence carries distinct operational value rather than padding.

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

Completeness5/5

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

An output schema exists, so return values need not be described, and the definition still covers authorization, target identification, mode semantics, and a non-obvious deployment caveat. Sufficient for an agent to invoke it correctly.

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 adds real meaning: it explains what each mode value does operationally (tool grants a search_knowledge tool, auto_inject prepends passages), recommends target_slug over target_id, and clarifies omission of target fields for user_personal. This goes beyond the terse enum labels.

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

Purpose5/5

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

States a specific verb (connects/attaches) and resource (an EXISTING knowledge base) and explicitly scopes it against the sibling findagent_add_kb_document, which handles content addition. An agent can differentiate this from add_kb_document without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives concrete when-to-use conditions: attach a KB you own to an agent/department you own, to an org you administer, or as a personal KB. Names the exact lookup tools for each target type (findagent_list_my_agents, findagent_list_orgs) and states the auth requirement (org owner/admin). Nothing is left to inference.

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

findagent_bind_kb_embedding_keyAInspect

Point an existing knowledge base at the embedding key this account has already stored, and re-queue the documents that failed only because there was no key. Use it when findagent_list_kbs shows embedding_key_bound:false, or when documents are stuck failed on a missing key — a KB created without bind_embedding_key ingests nothing until this runs. NO API KEY IS PASSED HERE: this selects the key the account already stored; adding a key is a web action, deliberately, so a secret never travels through a tool argument. If no key is stored, this changes nothing and says so rather than embedding at the platform's expense. Owner-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
kb_idYesThe knowledge base id, from findagent_list_kbs (it reports embedding_key_bound).

Output Schema

ParametersJSON Schema
NameRequiredDescription
kb_idNo
retriedNo
instructionsNo

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only supply readOnlyHint=false and openWorldHint=false; the description goes well beyond, disclosing the re-queue side effect, the deliberate no-secret-in-arguments design, the no-op-and-report behavior when no key is stored, and the owner-only permission requirement. These are exactly the traits an agent needs before invoking a mutation.

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

Conciseness4/5

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

Front-loads the action and its effect, then layers constraints in descending priority. The secret-handling point is restated across two sentences ('NO API KEY IS PASSED HERE' / 'a secret never travels through a tool argument'), which is mild redundancy, but every other sentence carries real information.

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

Completeness5/5

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

With an output schema present, return values need not be described, and the description covers the remaining gaps: prerequisite state, side effect, failure/no-op behavior, and permissions. Nothing needed to invoke this correctly is missing.

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

Parameters3/5

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

Schema coverage is 100% and the single kb_id parameter is fully documented in the schema, so the baseline is 3. The description confirms provenance (from findagent_list_kbs) but adds no format or syntax detail beyond the schema.

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

Purpose5/5

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

States a specific verb and resource — pointing an existing KB at the already-stored embedding key — plus a second concrete effect (re-queuing documents that failed on a missing key). This is clearly distinguishable from siblings like create_knowledge_base or add_kb_document, which create or populate rather than re-point.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit triggers ('when findagent_list_kbs shows embedding_key_bound:false', 'documents are stuck failed on a missing key') and names the sibling that reports the needed signal. It also states what this tool is NOT for — adding a key, which is a web action — routing the agent away from a wrong invocation.

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

findagent_browse_agentsA
Read-only
Inspect

Browse the PUBLISHED FindAgent marketplace catalogue WITH pricing — the same store listing the website shows. Returns each agent's slug, title, tagline, price_type (free|paid), price_cents (USD cents), category, rating, install count, and kind. Optional filters: query (text search), category_slug (from findagent_list_categories), price (free|paid). PAGINATED: pass offset (use the returned next_offset) to page through the FULL catalogue until has_more is false. Use findagent_get_agent for the full store view of one slug.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoOptional page size (default 20, max 100).
priceNoOptional price filter: only free, or only paid agents.
queryNoOptional free-text search over title/tagline/description.
offsetNoOptional pagination offset (default 0). Pass the response next_offset to fetch the next page; repeat until has_more is false to enumerate the whole catalogue.
category_slugNoOptional category slug from findagent_list_categories to filter by.

Output Schema

ParametersJSON Schema
NameRequiredDescription
countNo
limitNo
usageNo
agentsNo
offsetNo
has_moreNo
next_offsetNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so safety is covered. The description adds behavioral context: it is paginated, explains the offset/next_offset mechanism and has_more flag, and lists the exact return fields. It does not contradict annotations and discloses all relevant operational behavior without being redundant.

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

Conciseness4/5

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

The description is compact but information-dense, leading with the core purpose and then layering details. It is structured logically (scope, returns, filters, pagination, alternative) and avoids fluff, though it is slightly longer than the minimum needed.

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

Completeness5/5

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

An output schema exists, so return values are already defined. The description covers pagination, filters, and the relationship to sibling tools, leaving no missing operational guidance for a read-only listing tool. It is complete for an agent to call it correctly.

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

Parameters3/5

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

Schema coverage is 100% and each parameter already has a detailed description (e.g., offset explains pagination, category_slug references findagent_list_categories). The description repeats these details without adding new meaning, so it provides marginal value beyond the schema. Baseline 3 is appropriate.

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

Purpose5/5

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

The description states a specific action: browse the PUBLISHED catalogue with pricing, and clearly enumerates the returned fields and filters. It also distinguishes itself from sibling tools by referencing the website listing and explicitly naming findagent_get_agent for single-agent detail, making its scope unambiguous.

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?

It gives a clear alternative: 'Use findagent_get_agent for the full store view of one slug,' which tells the agent when to prefer another tool. It also references findagent_list_categories for category slugs, but does not enumerate other exclusions (e.g., when to use findagent_list_my_agents). This is clear context with a single explicit alternative, but not exhaustive guidance.

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

findagent_bump_versionAInspect

Publish a NEW version of YOUR OWN published doer/declarative agent for review. Pass the agent slug + a semver bump (patch|minor|major). You can fully EDIT the new version: system_prompt + example_prompts, AND (for a doer/recipe) the whole capability surface — pass tools (and optional credential_slots / guardrails) to add/remove/edit tools + action bindings + credential slots, and optional price_type/price_cents to change the price. Any capability change re-runs the same security scan + author-time auth_ref↔host check. changelog is optional when you edit tools (auto-drafted from the diff); otherwise pass 10–500 chars. The new version goes to admin review; your LIVE version keeps serving until it is approved (never auto-unpublished). A price change applies immediately (not retroactive). Owner-only. (Code-bundle agents re-version through the code wizard, not here.)

ParametersJSON Schema
NameRequiredDescriptionDefault
bumpYes
llmsNoTarget clients ⊂ {claude,chatgpt,gemini,cursor,vscode,custom}.
slugYesYour published agent slug (you must own it).
toolsNoOptional FULL doer tool set for the new version (web-builder parity). Presence REPLACES the agent's whole tool surface — pass the complete intended list (add/remove/edit); item shape is in `items`. auth_ref must match a credential_slots[].ref whose allowed_hosts cover the action host (audience binding — enforced). Omit to keep the stored tools (prompt-only edit).
changelogNoWhat changed (10–500 chars). Optional when you pass `tools` — then it is auto-drafted from the tool diff; supply your own to override.
guardrailsNoOptional declared guardrails for the new version (you can only TIGHTEN; the platform always applies its mandatory rails). An invalid block fails the bump.
price_typeNoOptional. Change the price alongside the bump. Applies immediately (audited, not retroactive — existing buyers keep access).
price_centsNoRequired when price_type=paid: positive integer of US cents, max 50000 ($500).
system_promptNoThe updated agent instructions. For a doer whose prompt isn't the authoring surface (mcp-tool / skills-bundle) you may omit it to keep the stored one; otherwise min 50 chars.
example_promptsNoUp to 5 concrete things a user can ask it to do.
credential_slotsNoOptional. The new version’s full credential-slot set when you pass `tools` — item shape is in `items`. DEFINITIONS ONLY — never send secret VALUES.

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
statusNo
versionNo
changelogNo
instructionsNo

TDQS

A4.7/5.0
Behavior5/5

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

The description adds significant behavioral context beyond the sparse annotations: the new version 'goes to admin review', the live version 'keeps serving until it is approved (never auto-unpublished)', capability changes 're-run the same security scan + auth_ref↔host check', and a price change 'applies immediately (not retroactive)'. It also warns that passing `tools` 'REPLACES the agent's whole tool surface'.

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

Conciseness4/5

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

The description is dense and front-loaded with the primary action, and every sentence carries operational constraints (review flow, price immediacy, owner-only, code-bundle exclusion). It is long and run-on, but the information density justifies the length.

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

Completeness5/5

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

For an 11-parameter mutation tool with nested objects, the description covers the approval lifecycle, security re-scan, auth binding requirements, tool-surface replacement semantics, pricing behavior, and owner authorization. Combined with the high schema coverage and output schema, an agent has everything needed to invoke it correctly.

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

Parameters5/5

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

With 91% schema coverage the schema already documents most parameters, and the description still adds meaning: `bump` is a semver patch/minor/major, `tools` means a full replacement rather than a delta, `changelog` is auto-drafted when tools change, and `credential_slots` are 'DEFINITIONS ONLY — never send secret VALUES'. This substantially helps an agent construct a correct call.

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

Purpose5/5

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

The description opens with a specific verb and resource — 'Publish a NEW version of YOUR OWN published doer/declarative agent for review' — and immediately identifies the actor ('YOUR OWN', 'Owner-only') and the semver bump. It also distinguishes itself from siblings by explicitly excluding code-bundle agents ('re-version through the code wizard, not here').

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?

It states clear context for use: publishing a new version, editing prompt/tools, and triggering re-review, and it gives one explicit exclusion (code-bundle agents use the code wizard). It does not enumerate alternative tools such as findagent_edit_price or findagent_rollback_version, so the when-not guidance is partial rather than exhaustive.

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

findagent_buy_agentAInspect

Get a browser checkout link to PURCHASE a paid FindAgent agent. Returns checkout_url — open it in a browser (signed in to FindAgent) and complete the purchase with the Buy button; payment is handled securely by Paddle in the browser. NEVER share card details here. A free agent returns already_free (just use findagent_add_connector); an agent you already own returns already_owned; if paid checkout is not live yet it returns checkout_not_live. After purchase settles, retry findagent_add_connector. An unknown or unpublished slug returns a needs_input result pointing back to findagent_browse_agents.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe published agent slug (from findagent_browse_agents).

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
titleNo
statusNo
currencyNo
next_toolNo
price_typeNo
price_centsNo
price_labelNo
checkout_urlNo
instructionsNo

TDQS

A4.9/5.0
Behavior5/5

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

The description goes well beyond the annotations, disclosing that payment is handled by Paddle in the browser, warning never to share card details, and enumerating possible return states such as already_free, already_owned, checkout_not_live, and needs_input. It also notes the authentication requirement (signed in to FindAgent), which is useful behavior context.

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

Conciseness5/5

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

Although the description is a single dense paragraph, every sentence contributes distinct information: the main purpose, return statuses, browser/payment behavior, security warning, follow-up action, and error case. The first sentence is front-loaded with the core action, and nothing is redundant or filler.

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

Completeness5/5

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

Given the tool's complexity, one required parameter, an output schema, and a large sibling set, the description is complete. It covers when to use it, what it returns, how payment works, security constraints, next steps after purchase, and fallback behavior for invalid slugs, so an agent has everything needed to invoke it correctly.

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?

The input schema already fully documents the slug parameter with 100% coverage, so the baseline is 3. The description adds extra meaning by specifying that an unknown or unpublished slug yields a needs_input result, and clarifies the slug should come from findagent_browse_agents, which enriches the schema's plain type description.

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

Purpose5/5

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

The description states a specific verb and resource: it gets a browser checkout link to purchase a paid FindAgent agent. It clearly distinguishes itself from related tools like findagent_add_connector and findagent_browse_agents by naming exactly what it returns and when it applies.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Usage is explicitly conditional: free agents route to findagent_add_connector, already-owned agents return already_owned, and unknown slugs point back to findagent_browse_agents. It also states what to do after purchase settles, leaving no ambiguity about when this tool should be invoked.

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

findagent_change_member_roleAInspect

Change a member's role in an organization (owner/admin only). Only an owner may grant or revoke ownership; admins can toggle admin↔member. The last owner cannot be demoted.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleYesThe new role. Granting/revoking owner requires you to be an owner; admins can only toggle admin↔member.
slugNoThe organization slug (alternative to org_id).
org_idNoThe organization id (from findagent_list_orgs).
user_idYesThe user id of the member to update (from findagent_list_members).

Output Schema

ParametersJSON Schema
NameRequiredDescription
memberNo

TDQS

A4.4/5.0
Behavior4/5

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

readOnlyHint=false already indicates mutation, and the description adds meaningful behavioral detail: ownership changes require an owner, admins can only toggle admin↔member, and the last owner is protected. This goes beyond the annotations and helps the agent anticipate access restrictions.

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

Conciseness5/5

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

Three short sentences with no filler. The primary action is front-loaded, followed by the most important permission rules and a key business constraint. Every sentence earns its place.

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?

The description covers the main operation, permission rules, and a critical invariant. An output schema exists so return values need not be described. One minor gap is that org_id/slug are optional in the schema and the description does not explicitly say one of them is required, but overall the tool is adequately specified.

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 description coverage is 100%, so the baseline is 3. The description adds value beyond the schema by explaining role constraints and who can set which role, which directly informs how to fill the 'role' parameter. It could be more explicit about needing one of org_id/slug, but the constraint semantics are valuable.

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

Purpose5/5

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

The description uses a specific verb ('Change') and resource ('a member's role in an organization'), and immediately distinguishes the operation from related tools like invite/remove/transfer by stating the permission model. The scope is clear even without inspecting the schema.

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?

The description gives clear context for when to use the tool: to change roles, with explicit permission constraints (owner vs admin) and an edge case (last owner cannot be demoted). It does not explicitly name alternative sibling tools or say when not to use it, but the usage context is strong.

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

findagent_check_slugA
Read-only
Inspect

Check whether an agent slug is well-formed AND available before findagent_create_draft. Returns { valid, available }. valid=false means the slug is malformed (must be kebab-case, 3–60 chars, no leading/trailing hyphen); available=false means it is already taken; available=null means the check was inconclusive (create_draft still enforces uniqueness). Prefer findagent_submission_wizard, which walks the user through this (it validates the slug for you at the basics step).

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe candidate agent slug (kebab-case, 3–60).

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
usageNo
validNo
availableNo

TDQS

A5/5.0
Behavior5/5

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

Annotations already state readOnlyHint=true, but the description goes far beyond that by specifying the exact return shape ({ valid, available }), the meanings of each value (valid=false for malformed, available=false for taken, available=null for inconclusive), and the note that create_draft still enforces uniqueness even when inconclusive. This discloses edge-case behavior that annotations cannot convey. There is no contradiction with annotations.

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

Conciseness5/5

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

The description is information-dense but well-structured: it leads with the core action and purpose, then explains the return contract, then the validation rules, then the preferred alternative. Every sentence earns its place; there is zero filler or repetition. The critical guidance is front-loaded, and the alternative is stated at the end without weakening the primary message.

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

Completeness5/5

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

For a single-parameter, read-only validation tool with a fully documented schema and an output schema, the description is complete. It covers the tool's purpose, the expected return values and their edge cases, and explicitly routes the user to the preferred alternative. There is nothing an agent needs to know to call this correctly that is missing.

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

Parameters5/5

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

The schema describes slug as a string with format 'kebab-case, 3–60', but the description expands on this with concrete validation rules: 'no leading/trailing hyphen' and explains how the slug's validity maps to the return values. This adds practical meaning beyond the schema's type constraints, showing the agent exactly what constitutes a valid input.

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

Purpose5/5

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

The description uses a specific verb ('Check'), a clear resource ('agent slug'), and the exact criteria ('well-formed AND available'). It explicitly distinguishes itself from siblings by stating it runs 'before findagent_create_draft' and naming the recommended alternative findagent_submission_wizard. An agent can immediately understand the tool's function without any ambiguity.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides explicit usage context: 'before findagent_create_draft' sets the timing, and 'Prefer findagent_submission_wizard' directly names the alternative and indicates it should be chosen over this tool in normal flows. This is a clear when-to-use and when-not-to-use directive, with a specific alternative named.

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

findagent_connect_githubA
Read-only
Inspect

Start connecting GitHub for the CALLER'S OWN FindAgent account so findagent_import_repo / findagent_list_repos can pull their repos. Returns whether GitHub is already connected plus a browser connect URL — the caller opens it, authorizes GitHub, and the token is stored server-side (this tool grants nothing itself; the actual connect happens in the browser). Call this first if import_repo or list_repos reports github not connected. The connection is scoped to THIS FindAgent account, so authorize on the same browser account. To switch GitHub accounts, use findagent_disconnect_github first.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
modeNo
accountNo
connectedNo
connect_urlNo
install_urlNo
instructionsNo

TDQS

A4.9/5.0
Behavior5/5

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

Goes well beyond the readOnlyHint annotation by explaining that the tool itself grants nothing, the actual connect happens in the browser, and the token is stored server-side. It also discloses account scoping, which is non-obvious behavioral context not visible in the schema or annotations.

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

Conciseness5/5

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

Every sentence earns its place: purpose, expected return, browser-based authorization flow, when to call, account scoping, and the disconnect alternative. Information is front-loaded and each clause adds distinct value.

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

Completeness5/5

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

For a zero-parameter tool with an output schema, the description fully covers the calling context, the browser flow, server-side token storage, account scoping, and prerequisite ordering. Nothing an agent needs to invoke this correctly is missing.

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?

The tool has zero parameters, so there is no parameter semantics to explain. The baseline for a zero-parameter tool is 4, and the description correctly focuses on behavior and usage rather than inventing parameter detail.

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

Purpose5/5

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

States a specific verb and resource ('Start connecting GitHub') and explicitly frames it as a prerequisite for findagent_import_repo / findagent_list_repos, which distinguishes it from those sibling tools. The mention of disconnecting also separates it from findagent_disconnect_github.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit when-to-use guidance: 'Call this first if import_repo or list_repos reports github not connected.' It also addresses a common alternative need by directing users to findagent_disconnect_github first when switching GitHub accounts.

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

findagent_create_code_draftAInspect

Persist a CODE-BUNDLE draft from YOUR OWN GitHub repo — for an agent that ships RUNNABLE code (use this when findagent_import_repo returned grounding.code_bundle). Pass the basics (title/slug/tagline/description/category_slug + example_prompts: 1-5 required) + the detected contract from import_repo's grounding.code_bundle (runtime, entrypoint {path,export}, mcp {mode,command,args}, ui {path}, allowed_hosts, credential_slots, skills), overriding any you want to correct. The server RE-PULLS the repo (your stored GitHub token — private repos work, server-side), snapshots + scans the code, validates the manifest, and creates a status=draft agent you own; then call findagent_submit_for_review IN THIS MCP CLIENT to set price + confirm originality/prohibited + submit it (the web is only an optional preview). IDEMPOTENT BY REPO: if you already have a draft for this repo, calling this again OVERWRITES that same draft (basics + manifest + a fresh re-pull/re-scan) instead of creating a duplicate — so iterate freely (the response updated flag is true on overwrite). NEVER send secret credential VALUES — credential_slots declare shape (ref/env/label/allowed_hosts/type) only. Building/running the code stays gated until an admin approves it.

ParametersJSON Schema
NameRequiredDescriptionDefault
uiNoOptional static UI: { path: bundle-relative index.html }.
mcpNoMCP exposure: { mode: 'wrap'|'native', command?, args? }. 'native' requires the command that starts the bundle's own MCP server. Defaults to wrap.
refNoOptional branch/tag/SHA. Defaults to the default branch HEAD.
llmsNoOptional target clients. Defaults to ['claude','chatgpt','gemini'] when omitted.
repoNoowner/repo or a github.com URL — YOUR repo (readable by your connected GitHub token). Re-pulled server-side, so private repos you own work.
slugNoPermanent URL slug, kebab-case (3–60, no leading/trailing hyphen). Verify with findagent_check_slug first.
tagsNoOptional (≤10). Free-form lowercase tags ([a-z0-9- ]).
titleNoAgent name (3–80 chars).
skillsNoOptional discovery metadata (the tools the agent exposes). Each: { id?, name, description? }. Never executed.
runtimeNoFrom grounding.code_bundle.runtime: { kind: 'node'|'python', version? }. Defaults to node.
taglineNoOne-line value prop (10–140).
languagesNoOptional (≤20). Language/Framework slugs from findagent_list_tech_facets (software-development discipline only).
entrypointNoFrom grounding.code_bundle.entrypoint: { path: bundle-relative module, export: handler name }.
descriptionNoWhat it does / who it is for (50–4000).
serve_modesNoHow the code runs when a buyer connects it. 'hosted' = FindAgent runs it in an isolated sandbox over the gateway (the DEFAULT — omit for this). 'local' = the buyer downloads and runs it on their OWN machine via @findagent/mcp so it can reach their localhost/local tools; FindAgent never runs it (the buyer trusts you, like a local MCP server). Pass ['hosted','local'] to offer BOTH. Only set this for an agent that must reach the buyer's own machine — an agent whose credential targets a localhost host CANNOT be served hosted. NOTE: this call OVERWRITES the draft's serve modes — when re-calling for an existing draft, re-send serve_modes to keep a prior 'local'/'both' choice (omitting it resets to hosted-only).
tech_domainsNoOptional (≤20). Tech Domain slugs from findagent_list_tech_facets (software-development discipline only).
allowed_hostsNoDefault-deny egress allowlist — the ONLY hosts the sandbox may reach. From grounding.code_bundle.allowed_hosts.
category_slugNoThe PRIMARY category: a TOP-LEVEL slug from findagent_list_categories (a discipline is required — usually 'software-development'). Put the required subdiscipline (and any industry + subindustry) in additional_category_slugs.
example_promptsNoREQUIRED — 1 to 5 concrete things a user can ask this agent to do (what a real user would type).
credential_slotsNoOptional. Each item declares the SHAPE of a secret (ref/env/label/allowed_hosts…) — see `items`. DEFINITIONS ONLY — no values.
additional_category_slugsNoOptional (≤12). Extra slugs from findagent_list_categories. For EVERY top-level you select you MUST include one of its OWN subcategories here: a subdiscipline under your discipline, and (optionally) an industry top-level plus one of its subindustries. This is also where a discipline goes if your primary is an industry.

Output Schema

ParametersJSON Schema
NameRequiredDescription
kindNo
slugNo
bundleNo
statusNo
accountNo
createdNo
updatedNo
next_toolNo
preview_urlNo
instructionsNo

TDQS

A4.9/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=false and destructiveHint=false, so the description carries the behavioral burden; it discloses server-side re-pull with the stored GitHub token, snapshot/scan/validation, status=draft ownership, idempotent overwrite with an 'updated' flag, and the admin-approval gate. It also clarifies that credential_slots only declare shape and never carry secret values, which is critical safety context. No contradictions with the annotations.

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

Conciseness5/5

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

Six dense sentences, each delivering a distinct fact: purpose/condition, payload composition, execution behavior, idempotency, secret policy, and gating. The description is front-loaded and free of filler; heavy use of caps and parentheses packs information efficiently. Given the tool's 21-parameter complexity and nested objects, the length is justified.

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

Completeness5/5

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

With 21 parameters, nested objects, and an output schema, no description can enumerate everything, but this one supplies the missing workflow glue: where input values come from, how to override them, the required next call, and the overwrite semantics. It even notes the 'updated' response flag. Nothing essential for correct invocation is absent.

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 description coverage is 100% with detailed per-parameter descriptions, so the baseline is 3. The description adds a valuable grouping (basics vs. the detected contract from import_repo's grounding.code_bundle) and the notion of overriding detected values, plus the 'example_prompts required' rule. This is meaningful but largely reinforces and organizes what the schema already states, so it does not reach 5.

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

Purpose5/5

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

The description opens with 'Persist a CODE-BUNDLE draft from YOUR OWN GitHub repo', a specific verb plus resource, and immediately ties it to the condition 'use this when findagent_import_repo returned grounding.code_bundle'. This clearly distinguishes it from the sibling findagent_create_draft and any generic draft tool. No interpretation is left to the agent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states when to use the tool (after import_repo returns grounding.code_bundle) and what to do next ('then call findagent_submit_for_review IN THIS MCP CLIENT'), including the idempotency-driven iteration workflow. It also gives safety guidance on when NOT to send secret values. The alternative for non-code-bundle drafts is implied rather than named, but the precondition is an unambiguous discriminator.

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

findagent_create_draftAInspect

Persist a DRAFT marketplace listing you wrote (from import_repo grounding). Creates a status=draft agent owned by you; then call findagent_submit_for_review IN THIS MCP CLIENT to set price + confirm originality/prohibited + submit it — the web is only an optional preview, not where you finish. Prefer findagent_submission_wizard to collect all of these fields step-by-step (one selectable question at a time) before calling this. Before calling: use findagent_check_slug to confirm the slug is free, and findagent_list_categories to pick the primary (top-level) category + a discipline. NEVER send secret credential VALUES — credential_slots declare the shape (ref/label/allowed_hosts/type) only.

ParametersJSON Schema
NameRequiredDescriptionDefault
kindNoOptional — usually INFERRED from whether you pass `tools` (tools present → 'mcp-tool' doer, else 'static-recipe' recipe). Declared so a manifest-shaped payload is accepted, not rejected.
llmsNoOptional target clients. Defaults to ['claude','chatgpt','gemini'] when omitted.
slugNoPermanent URL slug, kebab-case (3–60, no leading/trailing hyphen). Verify with findagent_check_slug first.
tagsNoOptional (≤10). Free-form lowercase tags ([a-z0-9- ]).
titleNoAgent name (3–80 chars). Alias accepted: `name`.
toolsNoOptional doer tools (full web-builder parity). Omit for a recipe agent. Each item's shape is defined in `items` — name/description/tool_type/action are the load-bearing fields; auth_ref must match a credential_slots[].ref whose allowed_hosts cover the action host (audience binding — enforced).
taglineNoOne-line value prop (10–140).
versionNoOptional semver release version for this listing (e.g. "1.0.0"). Self-described metadata only — the platform tracks the authoritative version separately.
metadataNoOptional professional listing metadata. { license?, homepage?, docs_url?, support_url?, support_email?, icon?, author?:{ name, url? }, maintainer?:{ name, url? } }. Every URL/icon must be https. An invalid block is dropped (not persisted).
changelogNoOptional human release notes for `version` (max 10000 chars).
languagesNoOptional (≤20). Language/Framework slugs from findagent_list_tech_facets (software-development discipline only).
guardrailsNoOptional declared guardrails (doer agents). { input?: { max_length?, deny_patterns?:string[], pii_redaction?:string[] }, output?: { schema? }, actions?: { [toolName]: { approval?:"none"|"human"|"human_strict", max_amount?, rate_limit?:"10/hour", idempotent?, requires?:string[] } } }. `human` confirms where the client can prompt and proceeds where it cannot; `human_strict` BLOCKS where it cannot — use it for anything irreversible. You can only TIGHTEN — the platform always applies its mandatory rails. An invalid block fails the draft.
price_typeNoOptional, default free. "paid" requires price_cents (charged only once Paddle is live).
descriptionNoWhat it does / who it is for (50–4000).
price_centsNoRequired when price_type=paid: a positive integer of US cents, max 50000 ($500).
tech_domainsNoOptional (≤20). Tech Domain slugs from findagent_list_tech_facets (software-development discipline only).
category_slugNoThe PRIMARY category: a TOP-LEVEL slug from findagent_list_categories. Alias accepted: `category`. At least one of {category_slug, additional_category_slugs} MUST be a discipline (category_type='discipline'), AND for EVERY top-level you select you MUST also include one of its OWN subcategories in additional_category_slugs.
system_promptNoThe agent instructions (50–20000 chars).
example_promptsNo2–5 concrete asks (required).
credential_slotsNoOptional. Each item declares the SHAPE of a secret (ref/label/allowed_hosts/auth_scheme…) — see `items`. DEFINITIONS ONLY — never send secret VALUES.
additional_category_slugsNoOptional (≤12). Extra slugs from findagent_list_categories. Include one subcategory under EVERY top-level you select (a subdiscipline under your discipline; a subindustry under any industry). Also where a discipline goes when the primary is an industry.

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
statusNo
accountNo
createdNo
next_toolNo
preview_urlNo
instructionsNo
slug_is_permanent_after_publishNo

TDQS

A4.8/5.0
Behavior5/5

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

Annotations declare readOnlyHint=false, consistent with 'Creates a status=draft agent' — no contradiction. The description adds non-obvious behavioral context beyond annotations: the draft is incomplete until submitted in this client, the web is not the finish point, credential_slots declare SHAPE only (never secret VALUES), and kind is inferred from whether `tools` is passed. This is rich, decision-relevant disclosure.

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

Conciseness4/5

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

A single dense paragraph, front-loaded with the core purpose before the workflow and security guidance. Every sentence earns its place and the structure (purpose → workflow → prerequisites → security warning) is logical. Slightly long, but the tool's 21-parameter complexity justifies the density.

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

Completeness5/5

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

Given the high complexity (21 params, nested objects) plus full schema coverage and an output schema (so return values needn't be explained), the description is complete. It covers the non-obvious workflow, prerequisites, security constraints on credentials, and routes to the right sibling tools. Nothing an agent needs to call it correctly is missing.

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 baseline is 3, and the schema descriptions are already thorough. The description adds workflow linkage beyond the schema: verify slug with check_slug, pick top-level category + discipline via list_categories, and the credential shape-only rule plus kind inference from `tools`. This is genuine added value over the schema alone, earning a 4.

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

Purpose5/5

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

Opens with a specific verb+resource ('Persist a DRAFT marketplace listing') and clarifies the outcome ('Creates a status=draft agent owned by you'). It also disambiguates from siblings by naming findagent_submit_for_review, findagent_submission_wizard, and findagent_check_slug, so an agent can tell this apart from related draft/submission tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives an explicit workflow: finish via findagent_submit_for_review IN THIS MCP CLIENT, prefer findagent_submission_wizard to collect fields step-by-step first, and run findagent_check_slug + findagent_list_categories before calling. It also states the web is only an optional preview, not where the agent finishes — clear when-to-use and routing with named alternatives.

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

findagent_create_knowledge_baseAInspect

Create a FindAgent Knowledge Base you own — a document + memory store an agent can be attached to and answer grounded in, with citations. Pick an embedding model (text-embedding-3-small default, or -large for higher quality). Set bind_embedding_key:true to bind your OpenAI vault key so documents can ingest ($0 to the platform — you use your own key); without a key, documents will not ingest. Optionally scope it to an organization you belong to.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe knowledge base name (1–120 chars).
org_idNoOptional — scope the KB to an organization you are a member of.
descriptionNoOptional short description.
embedding_modelNoThe embedding model, pinned at creation. Default text-embedding-3-small.
bind_embedding_keyNoBind your OpenAI vault key so documents can ingest. Default false.

Output Schema

ParametersJSON Schema
NameRequiredDescription
instructionsNo
knowledge_baseNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations only declare readOnlyHint=false, so the description carries the behavioral disclosure burden. It does well by warning that 'without a key, documents will not ingest' and noting the cost implication ('$0 to the platform — you use your own key'). This is valuable beyond the schema, although it does not cover all side effects (e.g., reversibility).

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

Conciseness5/5

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

The description is a compact three-sentence block with no filler. It front-loads the core purpose, then addresses model choice and the critical key-binding caveat, and ends with optional scoping. Every sentence contributes actionable guidance.

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

Completeness5/5

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

Given that an output schema exists and all five parameters are documented in the schema, the description only needs to add the operational context. It covers the essential decisions an agent must make (model selection, key binding, org scoping) and the critical consequence of skipping the key. Nothing needed for a correct invocation is missing.

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 description coverage is 100%, so the baseline is 3. The description adds meaningful context for embedding_model (small default, large for higher quality) and bind_embedding_key (necessary for ingestion), while also clarifying org_id scope. This goes beyond the schema's field descriptions without being redundant.

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

Purpose5/5

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

The description opens with a precise verb and object: 'Create a FindAgent Knowledge Base you own' and then clarifies what it is ('a document + memory store an agent can be attached to and answer grounded in, with citations'). This clearly distinguishes it from sibling operations like attach, add_document, list, or delete, so an agent can identify the correct tool.

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?

The description provides clear context for how to use the tool: choose an embedding model based on quality, bind your OpenAI key for ingestion, and optionally scope to an organization. It does not explicitly name alternatives or when-not-to-use, but the create operation is unique among siblings and the practical conditions are well explained.

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

findagent_create_orgAInspect

Create a FindAgent organization (a B2B workspace) — you become its owner. Provide a name and optionally a slug (3–40 chars, lowercase letters/digits/hyphens; derived from the name if omitted). Then invite teammates with findagent_invite_member. SLUG IS PERMANENT: the first call WITHOUT confirm_slug returns the exact org slug + a notice that its URL (/organizations/) can never change; re-call with confirm_slug set to that exact slug to acknowledge and create it (nothing is created until you confirm).

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe organization name (1–120 chars).
slugNoOptional URL slug (3–40 chars, kebab-case).
confirm_slugNoYour acknowledgement that the org's URL slug is PERMANENT. Must exactly match the resolved slug. Call without it first to see the exact slug + permanence notice, then re-call with confirm_slug set to that slug to create.

Output Schema

ParametersJSON Schema
NameRequiredDescription
instructionsNo
organizationNo

TDQS

A4.7/5.0
Behavior5/5

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

The description is unusually transparent about side effects and sequencing: the user becomes owner, the slug is permanent, the URL can never change, nothing is created until confirm_slug is provided, and the first call only returns the exact slug and a notice. This goes well beyond the minimal readOnlyHint=false annotation and prepares the agent for the two-call creation pattern.

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

Conciseness5/5

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

The description is information-dense but not bloated. It front-loads the core purpose, then covers the required parameters, the follow-up invite action, and the nuanced permanent-slug confirmation flow. Each sentence earns its place, and the prominent 'SLUG IS PERMANENT' warning prevents a consequential mistake.

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

Completeness5/5

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

For a creation tool with a nontrivial confirmation workflow, the description covers everything an agent needs: what to pass, what the first call returns, what the second call must contain, the permanent-URL consequence, and the next recommended tool (invite_member). The output schema exists and the input schema is fully documented, so no critical context is missing.

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 adds meaning: it explains that slug is derived from name when omitted and clarifies the exact role of confirm_slug in the two-step flow. While the schema already documents confirm_slug well, the description adds the derived-slug behavior and reinforces the required acknowledgement semantics.

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

Purpose5/5

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

The description states a specific verb and resource: 'Create a FindAgent organization (a B2B workspace) — you become its owner.' It distinguishes the tool's purpose from siblings like get_org, list_orgs, delete_draft, and invite_member by focusing on creation, ownership, and the subsequent invite step. The scope and intent are unambiguous.

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?

It gives clear in-flow guidance: create the org, then invite teammates with findagent_invite_member, and explicitly instructs the caller to first call without confirm_slug and then re-call with the exact slug. It does not explicitly describe when-not-to-use alternatives such as findagent_check_slug, but the workflow is clear enough to prevent misuse.

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

findagent_create_remote_mcpAInspect

List an EXTERNAL remote MCP server you run as a marketplace LISTING — for an MCP server hosted on YOUR OWN infrastructure that buyers connect their client straight to (FindAgent never proxies or runs it). Pass the listing basics (title/slug/tagline/description/category_slug + example_prompts: 1–5 required) and the remote endpoint as server_url (https) OR a parsed server.json object in server_json. The server's tools are auto-detected (a sandbox-gated live scan when available) — you can override with tools (name+description), transport (streamable-http|sse), and auth_note (what credential the server needs — NEVER a secret value). Creates a status=draft agent you own; then call findagent_submit_for_review IN THIS MCP CLIENT to submit it. The server URL is stored + displayed only; nothing executes on FindAgent. Before calling: findagent_check_slug + findagent_list_categories.

ParametersJSON Schema
NameRequiredDescriptionDefault
llmsNoOptional target clients. Defaults to ['claude','chatgpt','gemini'].
slugNoPermanent URL slug, kebab-case (3–60, no leading/trailing hyphen). Verify with findagent_check_slug.
tagsNoOptional (≤10). Free-form lowercase tags.
titleNoListing name (3–80 chars).
toolsNoOptional descriptive tools the server exposes ({ name, description }) — SEO/discovery only, no action. Auto-detected when omitted.
taglineNoOne-line value prop (10–140).
auth_noteNoOptional. What credential the server requires (e.g. "Requires a Bearer API key"). DEFINITION only — NEVER a secret value.
transportNoOptional MCP transport. Defaults to streamable-http (auto-detected from server.json).
server_urlNoThe remote MCP endpoint (https). Required unless server_json carries it.
descriptionNoWhat the server does / who it is for (50–4000).
server_jsonNoOptional parsed server.json (registry shape) — used INSTEAD of server_url.
category_slugNoThe PRIMARY category: a TOP-LEVEL slug from findagent_list_categories (≥1 discipline; put subcategories in additional_category_slugs).
example_promptsNoREQUIRED — 1 to 5 concrete things a user can ask this server to do.
additional_category_slugsNoOptional (≤12). Subcategory under every top-level you select.

Output Schema

ParametersJSON Schema
NameRequiredDescription
kindNo
slugNo
statusNo
accountNo
createdNo
next_toolNo
preview_urlNo
instructionsNo

TDQS

A4.9/5.0
Behavior5/5

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

Discloses material behaviors beyond the annotations: creates a status=draft agent, stores and displays the server URL only, never executes on FindAgent, auto-detects tools via a sandbox-gated live scan, and allows overrides. This is exactly the kind of mutation/side-effect context that annotations alone do not provide.

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

Conciseness4/5

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

The description is dense but appropriate for a 14-parameter tool with nested objects. It front-loads the core purpose and then flows through listing basics, endpoint/schema options, auto-detection behavior, and post-call steps; nearly every sentence adds operational value, though a bit of restructuring could reduce cognitive load.

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

Completeness5/5

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

Given the tool's complexity, the description covers the essential workflow, prerequisites, follow-up action, behavioral constraints, and parameter relationships. Since an output schema exists, return-value documentation is not required, and nothing an agent needs to call this tool correctly is missing.

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

Parameters5/5

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

Schema coverage is 100%, but the description adds meaningful cross-parameter guidance: example_prompts is required even though the schema lists no required fields, server_json is used instead of server_url, auth_note must never contain secrets, category_slug must be top-level, and transport defaults depend on server.json. This materially improves correct invocation beyond the schema.

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

Purpose5/5

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

The description uses a specific verb-plus-resource pattern: 'List an EXTERNAL remote MCP server you run as a marketplace LISTING,' and precisely scopes what the tool does versus what it does not do. It clearly differentiates this creation flow from siblings like findagent_create_draft by identifying the remote-server listing use case and naming the follow-up submit tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly tells the agent to call findagent_check_slug and findagent_list_categories before invoking, and to call findagent_submit_for_review afterward. It also defines the intended scenario — your own infrastructure, buyers connect directly — which helps an agent decide when this tool is appropriate rather than a generic draft-creation sibling.

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

findagent_create_requestAInspect

Post an agent request onto the PUBLIC FindAgent demand board AS the connected account — "I want an agent that does X". Others can upvote it and creators can build an agent that fulfils it. Provide a clear title (5–120 chars) + optional detail body (≤2000 chars). The text is moderated; a request always starts OPEN. Returns the new request id. Free — no payment.

ParametersJSON Schema
NameRequiredDescriptionDefault
bodyNoOptional detail: tools to connect, what a good result looks like (≤2000).
titleYesWhat the agent should do (5–120 characters).

Output Schema

ParametersJSON Schema
NameRequiredDescription
idNo
statusNo
next_toolNo
instructionsNo

TDQS

A4.5/5.0
Behavior5/5

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

Discloses significant behavior beyond annotations: the post is public, attributed to the connected account, moderated, initially OPEN, returns a new request id, and is free with no payment. This goes well beyond readOnlyHint=false and openWorldHint=false, and nothing contradicts the annotations.

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

Conciseness5/5

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

Every clause earns its place: action, audience/attribution, payload constraints, moderation, initial status, return value, and cost. The main operation is front-loaded in the first phrase, and the length is appropriate for the behavioral detail it conveys.

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

Completeness5/5

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

For a simple two-parameter create tool with an output schema, the description covers identity, audience, payload constraints, moderation, initial status, return value, and payment. Nothing essential is missing for an agent to invoke it correctly.

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

Parameters3/5

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

Schema coverage is 100%, and both parameters are already described in the input schema. The description repeats the 5–120 character title and ≤2000 character body limits without adding new semantic meaning; 'clear title' is only marginal quality guidance.

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

Purpose5/5

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

States the specific action ('Post an agent request onto the PUBLIC FindAgent demand board') and the purpose ('I want an agent that does X'), making it distinct from siblings like findagent_list_requests, findagent_vote_request, and findagent_withdraw_request. The verb and resource are unambiguous.

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?

Provides clear use context: use when the connected account wants to publish a demand on the public board, with title/body constraints and moderation noted. It does not explicitly name alternatives or say when not to use it, so it misses exclusionary guidance that would earn a 5.

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

findagent_delete_draftA
Destructive
Inspect

Discard YOUR OWN draft listing — a draft you never submitted, or one that was sent back for changes (needs-changes). This soft-deletes the whole listing and frees its slug for reuse. A PUBLISHED or in-review agent is NOT deletable here (a live agent is managed through its version lifecycle — findagent_rollback_version / findagent_bump_version). Owner-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
agentYesThe slug or id of YOUR draft (from findagent_list_my_agents). Must be a draft or a sent-back (needs-changes) agent.

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
deletedNo
instructionsNo

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, and the description adds meaningful behavioral context beyond that: this is a soft delete, the whole listing is discarded, and the slug is freed for reuse. It also repeats and enforces the owner-only constraint. It stops short of describing recoverability or audit effects, but the provided details substantially exceed annotation-only guidance.

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

Conciseness5/5

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

The description is compact and front-loaded: it states the action, scopes it to the user's own drafts, explains the effect, and lists exclusions with alternatives. Every sentence earns its place, and there is no filler or repetition beyond the helpful repeated emphasis on ownership.

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

Completeness5/5

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

For a one-parameter destructive tool with annotations and an output schema, this description covers everything an agent needs to select and invoke it correctly: what it operates on, when it applies, when it does not apply, the side effect, and the owner restriction. No important context is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3 even without extra parameter detail. The description reinforces that the agent must be a draft or needs-changes and your own, but this largely mirrors the schema's parameter description rather than adding new semantic information.

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

Purpose5/5

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

The description names a specific verb (discard/delete), a specific resource (YOUR OWN draft listing), and the exact states a draft must be in (never submitted or needs-changes). It distinguishes itself from live-agent lifecycle tools by explicitly stating that published/in-review agents are not deletable here and naming rollback_version/bump_version as the relevant alternatives.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives both positive conditions (draft or needs-changes) and exclusion conditions (published or in-review), making it unambiguous when to use the tool. It explicitly routes live-agent work to findagent_rollback_version / findagent_bump_version and states the owner-only restriction.

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

findagent_delete_kbA
Destructive
Inspect

Permanently delete an ENTIRE knowledge base you own, including all of its documents, chunks, structure, and attachments. Owner-gated (deleting a SHARED organization knowledge base requires an organization owner or admin). Any agent it was attached to loses access. This cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
kb_idYesThe knowledge base id to delete (from findagent_list_kbs).

Output Schema

ParametersJSON Schema
NameRequiredDescription
deletedNo
instructionsNo

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already mark destructiveHint=true and readOnlyHint=false, but the description adds valuable context: what gets destroyed (documents, chunks, structure, attachments), that attached agents lose access, and that the operation cannot be undone. It also explains the owner/admin privilege requirement.

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

Conciseness5/5

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

Three dense sentences with no redundancy. The deletion scope is front-loaded, followed by authorization, side effects on attached agents, and irreversibility. Every sentence earns its place.

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

Completeness5/5

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

For a single-parameter destructive operation with an output schema, the description fully covers what is deleted, who is allowed to delete, the consequence for attached agents, and the fact that it cannot be undone. No essential invocation information is missing.

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

Parameters3/5

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

The only parameter, kb_id, is fully documented in the schema with 'The knowledge base id to delete (from findagent_list_kbs).' Since schema description coverage is 100%, the description needing to add no parameter detail matches the baseline of 3.

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

Purpose5/5

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

The description states a specific action and object: 'Permanently delete an ENTIRE knowledge base you own.' It clearly distinguishes itself from sibling delete_kb_document by emphasizing the entire KB, including documents, chunks, structure, and attachments.

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?

Usage context is explicit: the user must own the KB, and deleting a shared organization KB requires org owner/admin rights. It does not explicitly name an alternative for deleting a single document, but the scope and ownership requirements make the intended use unambiguous.

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

findagent_delete_kb_documentA
Destructive
Inspect

Permanently delete one document (and its chunks) from a knowledge base you own — get the document_id from findagent_list_kb_documents. Owner-gated; remaining documents are unaffected. This cannot be undone.

ParametersJSON Schema
NameRequiredDescriptionDefault
document_idYesThe document id (from findagent_list_kb_documents).

Output Schema

ParametersJSON Schema
NameRequiredDescription
deletedNo
instructionsNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already include destructiveHint=true, but the description adds valuable context: the deletion is permanent and cannot be undone, it is owner-gated, and other documents remain unaffected. These details go beyond the annotation and inform the agent about side effects and authorization requirements.

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

Conciseness5/5

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

The description is two sentences with no fluff. The first sentence front-loads the action, scope, and ownership, and the second emphasizes irreversibility. Every word contributes to understanding the tool's purpose and constraints, making it highly efficient.

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

Completeness4/5

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

For a simple delete operation with a single parameter and an output schema present, the description covers the essential prerequisites (document_id source), ownership requirement, scope, and irreversibility. It does not explain error cases or the response format, but the output schema likely covers that. The completeness is strong but not exhaustive.

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

Parameters3/5

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

The schema provides 100% coverage for the single parameter document_id, including the instruction to source it from findagent_list_kb_documents. The description repeats this guidance but adds no new parameter-specific meaning beyond what the schema already conveys, so the baseline of 3 applies.

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

Purpose5/5

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

The description states a specific verb ('permanently delete'), a specific resource ('one document (and its chunks) from a knowledge base you own'), and clearly distinguishes it from siblings like findagent_delete_kb which deletes the whole KB. The scope and ownership constraint are explicit, making the tool's purpose unambiguous.

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?

The description provides clear usage context: it requires the document_id from findagent_list_kb_documents, is owner-gated, and affects only the specified document. It implies the appropriate use case is single-document deletion. While it doesn't explicitly name an alternative for bulk deletion, the one-document framing makes the distinction clear.

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

findagent_detach_kbA
Destructive
Inspect

Detach a knowledge base from an agent, department, or your personal binding by attachment_id (from findagent_list_kb_attachments). This removes only that one binding — the knowledge base itself and any other attachments are unchanged. Owner-gated.

ParametersJSON Schema
NameRequiredDescriptionDefault
attachment_idYesThe attachment id (from findagent_list_kb_attachments).

Output Schema

ParametersJSON Schema
NameRequiredDescription
detachedNo
instructionsNo

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already flag this as destructive and non-read-only, and the description adds valuable context: it removes exactly one binding, leaves the knowledge base and other attachments untouched, and is 'Owner-gated.' This goes beyond the annotation hints to clarify both the scope of destruction and access control.

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

Conciseness5/5

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

Two sentences with no filler: the first states the action and the required parameter source, and the second tightens the scope with a clear 'only that one binding' qualifier plus the ownership gate. Every word earns its place.

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

Completeness5/5

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

For a single-required-parameter tool with an output schema and full schema documentation, this description is complete. It tells the agent what resource to target, where to get the ID, what will and will not be affected, and the authorization requirement—there is no meaningful gap.

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

Parameters3/5

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

The schema already documents attachment_id with a description that names findagent_list_kb_attachments as its source; the description repeats that same provenance. With 100% schema coverage, the baseline of 3 applies because the description does not add meaning beyond what the input schema provides.

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

Purpose5/5

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

The description opens with a precise verb-resource pair: 'Detach a knowledge base from an agent, department, or your personal binding.' It further differentiates the operation by clarifying that only the specified binding is removed, not the knowledge base itself or other attachments, which distinguishes it from delete_kb and similar tools.

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?

The description tells the agent to supply attachment_id from findagent_list_kb_attachments, providing the correct source for the required parameter. It also gives scope guidance by explicitly stating what is not affected, but it does not name alternative sibling tools or list explicit when-not conditions, so it falls just short of a 5.

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

findagent_disconnect_githubA
Idempotent
Inspect

Disconnect / switch GitHub account: drops the caller's stored GitHub connection (best-effort revoking the GitHub-side grant first) so a reconnect can authorize a DIFFERENT GitHub account. Idempotent — returns disconnected:true even if nothing was connected. After this, call findagent_connect_github to connect the new account.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
disconnectedNo
instructionsNo

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already provide idempotentHint and readOnlyHint, and the description adds meaningful behavioral context: it drops the stored connection, best-effort revokes the GitHub-side grant, and returns disconnected:true even when nothing was connected. This fully explains the operation's side effects and edge case behavior.

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

Conciseness5/5

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

Three tightly written sentences: the core action, the behavioral notes, and the follow-up step. No filler or redundant restatement of the title.

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

Completeness5/5

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

For a zero-parameter action with an output schema, the description covers the operation's effect, idempotency, return behavior, and next step. Nothing an agent needs to invoke it correctly is missing.

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?

The tool takes zero parameters, so the schema has nothing to document. The description correctly requires no parameter explanation, and the baseline of 4 applies because there is no parameter burden to compensate for.

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

Purpose5/5

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

The description states a specific action ('Disconnect / switch GitHub account') and resource ('stored GitHub connection'), clearly distinguishing it from findagent_connect_github. It also explains the purpose of disconnecting so a different GitHub account can be authorized.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit sequencing: after disconnecting, call findagent_connect_github to connect the new account. It also clarifies the idempotent nature, so the agent knows it is safe to call even when nothing is connected.

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

findagent_earningsA
Read-only
Inspect

Read YOUR OWN creator earnings — your withdrawable balance, in-flight (pending) and settled (paid) totals, lifetime earnings, and your most recent earning transactions. READ-ONLY: this never moves money. Withdrawals/payouts are set up in your FindAgent dashboard (KYC/owner-gated) and are not available as a tool. Amounts are in the currency's minor units (US cents for USD).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
currencyNo
paid_centsNo
instructionsNo
pending_centsNo
lifetime_centsNo
available_centsNo
recent_transactionsNo

TDQS

A4.9/5.0
Behavior5/5

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

Beyond the readOnlyHint annotation, the description explicitly states 'READ-ONLY: this never moves money' and adds meaningful context: payouts are KYC/owner-gated and handled outside the tool. It also clarifies currency units are minor units, which is valuable behavioral/output context.

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

Conciseness5/5

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

The description is concise: three sentences with no wasted words. It front-loads the core purpose, states the read-only nature, explains the payout exclusion, and provides the currency-unit detail. Every sentence earns its place.

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

Completeness5/5

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

For a zero-parameter tool with an output schema, the description is complete: it identifies exactly what data the agent will receive, the read-only safety profile, the payout exclusion, and the unit convention. There are no missing behavioral or usage details needed to call this tool correctly.

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?

The tool has zero parameters, so there are no parameter semantics to document. The baseline of 4 applies because the description correctly avoids inventing parameters and instead clarifies the meaning of the returned amounts (minor units), which is useful given the empty input schema.

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

Purpose5/5

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

The description uses a specific verb ('Read') with a clear resource ('YOUR OWN creator earnings') and enumerates the exact data returned. It further distinguishes itself from any potential payout/withdrawal tools by explicitly stating those are not available as a tool.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly states when to use it: to read the caller's own earnings, balances, and recent transactions. It also gives an explicit when-not and alternative path: withdrawals/payouts are handled through the FindAgent dashboard, not through this tool.

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

findagent_edit_departmentA
Idempotent
Inspect

Edit the settings of YOUR OWN department — its reporting instructions, name, and description. report_instructions is the department's behavioural lever: it is prepended to EVERY member's (and the orchestrator's) prompt on every run, so it is how you tell the whole team how to work and how to report, without editing any member agent. Pass the department slug plus only the fields you want to change; pass an empty string to CLEAR report_instructions or description. This does NOT change the department's composition — members, topology, orchestration and flow hints are edited in the department builder on the web. Owner-only, personal departments only (an org department is edited from the org workspace). Call findagent_list_my_agents to see the departments you own.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameNoNew department name (3–80 chars).
departmentYesThe slug of a department you own (from findagent_list_my_agents).
descriptionNoNew description (10–2000 chars). Pass an empty string to remove it.
report_instructionsNoStanding instructions prepended to every member's and the orchestrator's prompt at run time — e.g. how to report, what to prioritise, what house style to use. Pass an empty string to remove it. Checked on save against a prompt-injection deny-list and scanned for leaked secrets; the save is rejected on a hit.

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
statusNo
instructionsNo
report_instructions_setNo

TDQS

A4.9/5.0
Behavior5/5

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

Annotations provide readOnlyHint=false and idempotentHint=true, but the description adds critical behavioral context beyond that: report_instructions is prepended to EVERY member's and the orchestrator's prompt on every run, empty strings clear fields, and saves are checked against a prompt-injection deny-list and secret scan (rejected on a hit). It also states authorization constraints and explicitly lists what it does NOT change. No contradiction with annotations.

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

Conciseness5/5

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

Every sentence earns its place: the main purpose, the key side effect of report_instructions, the usage pattern, exclusions, authorization constraints, and a pointer to the discovery tool. It is front-loaded with the primary action and keeps all additions relevant. No fluff or repetition.

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

Completeness5/5

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

The description is complete for a tool with a full 4-parameter schema and an output schema. It covers scope, permissions, side effects, exclusions, and related tool guidance. The only thing not explained is the return value, but the output schema presumably handles that. Nothing an agent needs to select and invoke it correctly is missing.

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. The description adds value beyond the schema by clarifying the partial-update pattern ('pass... only the fields you want to change'), the clearing behavior for empty strings, and the strategic role of report_instructions as a team-wide behavioral lever. These semantics are not fully covered by the schema's parameter descriptions, though the schema is already quite detailed.

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

Purpose5/5

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

The description states a specific verb and resource: 'Edit the settings of YOUR OWN department — its reporting instructions, name, and description.' It enumerates the exact fields and clarifies what it does not do ('does NOT change the department's composition'), which distinguishes it from sibling tools like findagent_edit_metadata and the web builder. An agent can immediately identify this tool's unique scope.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit when/when-not guidance: 'Owner-only, personal departments only (an org department is edited from the org workspace)' and 'composition... edited in the department builder on the web.' It also tells the agent to call findagent_list_my_agents to discover owned departments, and describes the partial-update pattern ('pass only the fields you want to change'). No ambiguity remains about when to use this tool.

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

findagent_edit_metadataA
Idempotent
Inspect

Edit the DISPLAY metadata of YOUR OWN PUBLISHED agent — title, tagline, description, example output, category (+ subcategories), and tags. Pass the agent slug + only the fields you want to change. This does NOT change what the agent can DO: its tools/actions/credentials/prompts are unchanged (those re-version through your agent's own flow + admin review — findagent_bump_version for a doer/recipe, findagent_repull for a code-bundle/skills-bundle, findagent_reintrospect_mcp for an external MCP listing), so a metadata edit goes live immediately without re-review. Owner-only. Existing buyers are unaffected. Use findagent_list_categories for valid category slugs.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesYour published agent slug (you must own it).
tagsNoReplace the free-form lowercase tags (≤10).
titleNoNew agent name (3–80 chars). Alias accepted: `name`.
taglineNoNew one-line value prop (10–140 chars).
descriptionNoNew description (50–4000 chars).
category_slugNoNew PRIMARY category: a TOP-LEVEL slug from findagent_list_categories. Alias accepted: `category`. When changing categories you must keep ≥1 discipline and a subcategory under every selected top-level (put the rest in additional_category_slugs).
example_outputNoA real example of what this agent produces, shown on the listing labeled as creator-provided (markdown supported, ≤4000 chars). Optional; pass an empty string to remove it. This is a display example, not a live run.
additional_category_slugsNoReplace the non-primary category memberships (≤12 slugs).

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
updatedNo
next_toolNo
ignored_noteNo
instructionsNo

TDQS

A4.7/5.0
Behavior5/5

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

Beyond the annotations (readOnly=false, idempotent=true, destructive=false), the description adds crucial behavioral context: it explicitly does NOT change agent capabilities, it goes live immediately, it is owner-only, and existing buyers are unaffected. This surpasses the baseline and fully discloses the non-destructive, partial-update behavior.

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

Conciseness5/5

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

Despite being a bit long, every sentence serves a purpose: purpose, scope, exceptions, ownership, effect, and validation source are all packed efficiently. The critical distinction from capability toggles is front-loaded, and there is no redundant filler.

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

Completeness5/5

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

Given the tool's complexity and the existence of an output schema, the description covers all necessary context: it clarifies boundaries with other tools, ownership constraints, immediate effect, and how to obtain valid categories. It also notes that existing buyers are unaffected, which is vital for an agent deciding to invoke this mutation tool.

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

Parameters3/5

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

Schema coverage is 100% with each parameter already described (including constraints like ≤10 tags, character ranges, and aliases). The description adds minimal parameter-level detail beyond the schema, but it does reinforce the partial-update pattern and the category rules. Since the schema does the heavy lifting, a baseline of 3 is appropriate.

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

Purpose5/5

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

The description explicitly states the tool edits display metadata of one's own published agent, enumerates the exact fields (title, tagline, description, example output, category, tags), and distinguishes it from capability-modifying tools by naming siblings like findagent_bump_version, findagent_repull, and findagent_reintrospect_mcp. This leaves no ambiguity about scope or intent.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It clearly specifies that metadata edits go live immediately without re-review and that other tools (bump_version, repull, reintrospect_mcp) handle capability changes with admin review. It also notes owner-only access, the finger on how to pass only changed fields, and directs to findagent_list_categories for valid slugs, providing both when-to-use and when-not-to-use guidance.

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

findagent_edit_priceA
Idempotent
Inspect

Change the price of YOUR OWN agent (the audited price-edit). Pass the agent slug + price_type ('free' or 'paid') and, when paid, price_cents (US cents, max 50000 / $500). The change is owner-gated and recorded to an audit log. NOT retroactive: existing buyers keep their access. Only the agent's owner can call this; the change goes through the same validated path as the web price editor.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesYour agent slug (you must own it).
price_typeYes'free' or 'paid'.
price_centsNoRequired when paid — integer US cents (1–50000). Ignored for free.

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
changedNo
price_typeNo
price_centsNo
price_labelNo
instructionsNo

TDQS

A4.5/5.0
Behavior5/5

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

Annotations already mark this as non-read-only and non-destructive, and the description adds materially: owner-gating, audit-log recording, non-retroactivity, and that existing buyers keep access. This goes beyond the structured fields and tells the agent exactly what side effects to expect.

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

Conciseness5/5

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

Four sentences, each carrying a distinct constraint (ownership, price rules, non-retroactivity, validation path), with the main action front-loaded. No filler or repetition.

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

Completeness5/5

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

For a mutation tool with an output schema and full parameter coverage, the description provides all needed context: owner prerequisite, price bounds, enum semantics, and downstream impact on existing buyers. An agent can invoke it correctly without additional assumptions.

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

Parameters3/5

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

Input schema covers all three parameters with descriptions and enums, so the baseline is 3. The description reinforces the 50000-cent cap and 'ignored for free' behavior, but does not add meaning beyond what the schema already states.

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

Purpose5/5

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

The opening sentence names a specific verb ('Change') and resource ('price of YOUR OWN agent'), and adds the qualifier 'audited price-edit', making the operation unmistakable. This naturally separates it from nearby tools like findagent_edit_metadata and findagent_buy_agent.

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?

The description clearly scopes when the tool applies: only the agent's owner may use it, and it is the validated equivalent of the web price editor. It does not explicitly name alternative tools or say when not to use this one, so it misses the top bar but is well above vague.

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

findagent_get_agentA
Read-only
Inspect

Get the full store view of ONE published FindAgent marketplace agent by slug — mirrors the website's agent detail page. Returns title, tagline, description, price_type/price_cents/currency, category list, rating, install count, kind, a summary of its tools/skills, example prompts, and a connect hint. is_mcp_server_listing says whether this row is an MCP server FindAgent merely LISTS (connect your client straight to the provider — see connection, hosted or local) rather than an agent FindAgent runs; kind is mcp-tool for both, so it cannot tell them apart. That field is OMITTED when it could not be determined — read its absence as unknown, never as false. A paid agent's tools/skills stay hidden until purchase. An unknown or unpublished slug returns a needs_input result pointing back to findagent_browse_agents.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe published agent slug (from findagent_browse_agents).

Output Schema

ParametersJSON Schema
NameRequiredDescription
kindNo
slugNo
titleNo
toolsNo
ratingNo
skillsNo
taglineNo
categoryNo
currencyNo
categoriesNo
connectionNo
price_typeNo
descriptionNo
price_centsNo
price_labelNo
connect_hintNo
review_countNo
install_countNo
example_promptsNo
is_mcp_server_listingNo
paid_capabilities_gatedNo

TDQS

A4.4/5.0
Behavior5/5

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

Annotations only declare readOnlyHint and openWorldHint; the description adds substantial context beyond them: the is_mcp_server_listing field semantics (omitted when unknown, absence must not be read as false), the fact that kind is mcp-tool for both listed and run agents, that paid agents hide tools/skills until purchase, and the needs_input fallback for bad slugs. These are exactly the behavioral traits an agent needs and could not infer.

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

Conciseness4/5

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

Front-loads the core purpose in the first sentence and packs edge cases into a dense but information-dense paragraph. Nearly every clause earns its place, though the packed clauses about is_mcp_server_listing/kind make it heavier to parse than it needs to be.

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

Completeness5/5

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

With an output schema present the description needn't enumerate return fields, yet it still summarizes them and covers the tricky cases an agent must handle: undetermined listing flag, paid-content hiding, and unknown-slug behavior. Nothing an agent needs to call this correctly is missing.

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

Parameters3/5

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

Schema coverage is 100% with a single well-described slug parameter, so the schema already carries the parameter meaning. The description reinforces the slug's provenance ('from findagent_browse_agents') but adds no syntax or format detail beyond the schema. Baseline 3 is appropriate.

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

Purpose5/5

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

States a specific verb (Get) and resource (full store view of ONE published FindAgent marketplace agent by slug), and implicitly distinguishes itself from the plural sibling findagent_browse_agents by emphasizing 'ONE'. An agent can tell exactly what it retrieves without opening the schema.

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?

Tells the agent the tool mirrors the website's agent detail page and that an unknown/unpublished slug returns a needs_input result pointing back to findagent_browse_agents, effectively routing to that sibling for discovery. It stops short of an explicit 'use this when / not when' framing, but the context is clear.

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

findagent_get_orgA
Read-only
Inspect

Get one organization you belong to by slug — its id, name, slug, your own role (owner/admin/member), and seat count. The single-org companion to findagent_list_orgs. Only an organization you are an active member of is returned. READ-ONLY.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe organization slug (from findagent_list_orgs).

Output Schema

ParametersJSON Schema
NameRequiredDescription
organizationNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the read-only nature is covered. The description adds value by noting the active-membership filtering behavior, which is not visible in annotations or schema, and by outlining the returned fields. No contradiction with annotations.

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

Conciseness5/5

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

Three short sentences with no filler. The primary action, resource, and return set are front-loaded, and the sibling relationship and membership constraint follow economically.

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

Completeness5/5

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

For a one-parameter read-only tool with an output schema, the description is complete: it explains what is fetched, how it is identified, what is returned, the visibility constraint, and the relationship to the sibling listing tool. No missing information an agent needs to invoke it correctly.

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

Parameters3/5

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

Schema coverage for the single slug parameter is 100%, including the note that it comes from findagent_list_orgs. The description reinforces the slug-based lookup but does not add substantial parameter meaning beyond what the schema already provides, so the baseline holds.

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

Purpose5/5

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

The description states a specific verb and resource: 'Get one organization you belong to by slug.' It lists the returned fields (id, name, slug, role, seat count) and differentiates itself as 'The single-org companion to findagent_list_orgs,' so an agent can distinguish it from siblings.

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?

It gives clear context: used to fetch a single organization by slug, only returns organizations where the caller is an active member, and is explicitly the single-org counterpart to findagent_list_orgs. It does not explicitly state when-not to use it (e.g., 'use list_orgs for all organizations'), but the relationship is clear enough.

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

findagent_import_repoA
Read-only
Inspect

Pull the CALLER'S OWN GitHub repo (via their connected token) and return deterministic grounding (basics, languages, tech domains, detected tools + the hosts they reach) plus a field contract. Use the grounding as the basis, then run findagent_submission_wizard to walk the user through the listing step-by-step and finalize with findagent_create_draft — your own model does the synthesis (no FindAgent LLM cost). Read-only: nothing is persisted or executed. Works for PRIVATE repos: the pull runs server-side with your stored GitHub token, so your AI client never needs repo access.

ParametersJSON Schema
NameRequiredDescriptionDefault
refNoOptional branch/tag/SHA. Defaults to the default branch HEAD.
repoYesowner/repo or a github.com URL (must be readable by your connected GitHub token). Private repos you own work — the pull is server-side.

Output Schema

ParametersJSON Schema
NameRequiredDescription
repoNo
commitNo
groundingNo
instructionsNo
field_contractNo
already_importedNo

TDQS

A4.6/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=true, and the description adds valuable behavioral context: nothing is persisted or executed, the pull runs server-side with a stored GitHub token, private repos are supported, and the AI client never needs repo access. This goes beyond the annotation and clarifies side effects, auth, and privacy.

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

Conciseness4/5

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

The description is dense but focused: three sentences front-load the core purpose, then add workflow, cost rationale, and privacy/read-only facts. Slightly long due to embedded pipeline details, but every clause contributes useful information.

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

Completeness5/5

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

With an output schema present, the description does not need to explain return values. It covers the input constraints, expected workflow, read-only behavior, private repo handling, and server-side token use. Nothing essential for correct invocation is missing.

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 description coverage is 100%, so the baseline is 3, but the description adds meaningful access semantics: the repo must be readable by the connected GitHub token, private repos work because the pull is server-side, and refs default appropriately. This helps the agent choose parameter values correctly.

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

Purpose5/5

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

The description states a precise verb and resource: pull the caller's own GitHub repo via their connected token and return deterministic grounding plus a field contract. It enumerates the specific outputs (basics, languages, tech domains, detected tools and hosts) and distinguishes the tool from its siblings by naming the downstream workflow (findagent_submission_wizard, findagent_create_draft).

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?

The description gives explicit workflow guidance: use the grounding as the basis, then run findagent_submission_wizard and finalize with findagent_create_draft. It also explains that the agent's own model does synthesis, avoiding FindAgent LLM cost. It does not spell out when-not-to-use conditions or alternatives, but the placement in the pipeline is clear.

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

findagent_invite_memberAInspect

Invite a teammate to an organization by email (owner/admin only). Role is admin or member (default member) — ownership is transferred separately, never invited. Returns a single-use, expiring accept_url; the invitee must sign in to FindAgent with that email to accept.

ParametersJSON Schema
NameRequiredDescriptionDefault
roleNoThe role to grant on acceptance: admin (can manage members/roles) or member (default). Ownership is transferred separately, never invited.
slugNoThe organization slug (alternative to org_id).
emailYesThe teammate's email address. They must sign in to FindAgent with THIS email to accept — the invite binds to the authenticated account.
org_idNoThe organization id (from findagent_list_orgs).

Output Schema

ParametersJSON Schema
NameRequiredDescription
inviteNo
instructionsNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations indicate readOnlyHint=false (mutation) and openWorldHint=false, but the description adds meaningful behavior beyond that: the return of a single-use, expiring accept_url, the requirement that the invitee sign in with the same email, and the permission level required. No contradiction with annotations, and the additional context is valuable for the agent.

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

Conciseness5/5

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

Two crisp sentences that front-load the main action, include the permission constraint and return behavior, and clarify edge cases. No wasted words; every clause adds value.

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

Completeness5/5

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

Given the tool's moderate complexity, the description covers all critical aspects: what it does, who can use it, what it returns (accept_url), the email-binding requirement, and the role options. The output schema exists, so return details are handled there. Nothing an agent needs to call it correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents every parameter (email, role, slug, org_id) with clear explanations. The description repeats some of this (e.g., role default, ownership separate) but adds no new parameter-level information beyond what the schema provides. Baseline 3 is appropriate given the high schema coverage.

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

Purpose5/5

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

The description states exactly what the tool does: invite a teammate by email with a role, and explicitly distinguishes it from ownership transfer. The scope (owner/admin only) is also clear, so an agent can easily tell it apart from related sibling tools like findagent_transfer_org_ownership or findagent_change_member_role.

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?

The description includes a permission prerequisite (owner/admin only) and states that ownership is transferred separately and never invited, which implies using a different tool for ownership changes. However, it doesn't explicitly name the alternative tool, though the sibling list contains findagent_transfer_org_ownership. It's clear enough for an agent to infer when to use this tool vs alternatives.

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

findagent_leave_orgAInspect

Leave an organization you belong to (removes your OWN membership). The last owner cannot leave — transfer ownership first with findagent_transfer_org_ownership.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugNoThe organization slug (alternative to org_id).
org_idNoThe organization id (from findagent_list_orgs).

Output Schema

ParametersJSON Schema
NameRequiredDescription
leftNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations mark readOnlyHint=false, which already flags mutation. The description adds meaningful behavioral context: it removes only the caller's membership and enforces a last-owner constraint. It does not fully discuss reversibility, but for a simple leave operation with output schema present, this is solid.

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

Conciseness5/5

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

Two sentences, no filler. The main behavior is front-loaded, and the important exception/alternative is stated immediately after. Every sentence earns its place.

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

Completeness5/5

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

For a simple two-optional-parameter tool with an output schema, the description covers the key facts: scope of effect, owner exception, and routing to the transfer tool. Nothing needed to call or interpret the tool is missing.

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

Parameters3/5

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

Schema description coverage is 100%, and both slug and org_id parameters are already described in the input schema. The tool description adds no parameter-specific guidance beyond what the schema provides, so the baseline 3 score applies.

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

Purpose5/5

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

The description states a specific verb and resource: 'Leave an organization you belong to' and clarifies it 'removes your OWN membership.' This clearly distinguishes it from member-management tools like findagent_remove_member, which affect other users' memberships.

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?

The description indicates the tool is for your own membership and explicitly names the alternative for owners: 'The last owner cannot leave — transfer ownership first with findagent_transfer_org_ownership.' It does not explicitly say 'use remove_member for others,' but 'removes your OWN membership' implies the exclusion, so usage context is clear.

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

findagent_list_categoriesA
Read-only
Inspect

List the active FindAgent marketplace categories as a TREE: each top-level category with its category_type ('industry'|'discipline') and subcategories. Call this before drafting a listing. The create_draft primary category_slug must be a TOP-LEVEL slug, the selected set MUST include at least one discipline, AND for EVERY top-level you select you MUST also include one of its OWN subcategories (a subdiscipline under the discipline; a subindustry under any industry) — put the extra slugs in additional_category_slugs[]. Prefer findagent_submission_wizard to walk the user through category selection step-by-step.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
usageNo
categoriesNo

TDQS

A4.8/5.0
Behavior5/5

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

Beyond the readOnlyHint annotation, the description discloses the tree-shaped output, the category_type facet, and critical validation rules about top-level slugs, discipline requirements, and mandatory subcategory inclusion. These constraints materially affect how the agent should use the returned data and are not inferable from annotations alone.

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

Conciseness4/5

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

The description is dense but not bloated; every clause contributes necessary information. It front-loads the core purpose before diving into constraints, though the long run-on sentence with uppercase emphasis could be structured more cleanly. Still, efficiency is good for the complexity it conveys.

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

Completeness5/5

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

For a zero-parameter read-only list tool with an output schema, the description is complete: it explains what will be returned, when to call it, and how to interpret the result for the downstream create_draft flow. There are no apparent missing details an agent would need to invoke this tool correctly.

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?

This tool has zero parameters and the schema coverage is 100%, so there is no parameter gap to fill. The description adds value by referencing downstream parameters (category_slug and additional_category_slugs) that the caller will need when drafting a listing, which is useful semantic context even though those parameters belong to another tool.

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

Purpose5/5

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

The description clearly states a specific action ('List the active FindAgent marketplace categories as a TREE') and specifies what the output includes: top-level categories, category_type values, and subcategories. It also distinguishes its role in the workflow by saying 'Call this before drafting a listing,' which separates it from listing-related siblings and drafting tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states when to use the tool ('Call this before drafting a listing') and names a preferred alternative for a different flow ('Prefer findagent_submission_wizard to walk the user through category selection step-by-step'). This gives the agent clear context for choosing between this tool and a sibling.

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

findagent_list_invitesA
Read-only
Inspect

An organization's outstanding invites (owner/admin only — a pending invitee's email belongs to someone who has not joined, so this is not member-readable). Includes EXPIRED invites: they cannot be accepted but still block a new invite to the same address, and this is the only way to see and clear one. No accept links are returned — only a hash of each token is stored.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugNoThe organization slug (alternative to org_id).
org_idNoThe organization id (from findagent_list_orgs).

Output Schema

ParametersJSON Schema
NameRequiredDescription
invitesNo
instructionsNo

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already establish readOnlyHint=true, but the description adds substantial non-obvious behavior: the auth requirement, that expired invites are included and still block new invites, and that no accept links are returned because only token hashes are stored. This is exactly the kind of security/side-effect context annotations don't carry.

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

Conciseness4/5

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

A single dense paragraph with zero filler, and the most decision-relevant facts (permission scope, expired-invite inclusion) are front-loaded. It is packed but no sentence is wasted.

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

Completeness5/5

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

With an output schema present, return format needn't be re-explained, and the description fully covers permissions, the expired-invite edge case, and the token-security caveat. Nothing needed to call it correctly is missing.

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

Parameters3/5

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

Schema coverage is 100%; both slug and org_id are fully documented there, including that they are alternatives and that org_id comes from findagent_list_orgs. The description adds no parameter detail, so the baseline 3 is appropriate.

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

Purpose5/5

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

States a specific verb+resource (lists an organization's outstanding invites) and immediately scopes it to owner/admin, which distinguishes it from the member-readable list siblings like findagent_list_members. An agent can tell what it returns and who may call it without opening the schema.

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?

Provides clear permission context (owner/admin only) and the key usage fact that this is the only way to see and clear an expired invite. It stops short of explicitly naming the alternative actions (findagent_resend_invite, findagent_revoke_invite) an agent might reach for, so it's clear context without explicit routing.

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

findagent_list_kb_attachmentsA
Read-only
Inspect

List where a knowledge base you own is attached (agent / department / personal), each with its attachment id and mode (tool | auto_inject | both). Use an attachment id with findagent_detach_kb to remove that one binding. READ-ONLY.

ParametersJSON Schema
NameRequiredDescriptionDefault
kb_idYesThe knowledge base id (from findagent_list_kbs).

Output Schema

ParametersJSON Schema
NameRequiredDescription
usageNo
attachmentsNo

TDQS

A4.5/5.0
Behavior4/5

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

The description confirms the read-only behavior already present in annotations and adds meaningful context: the KB must be owned, the result includes attachment ids and modes, and the identifier is intended for detaching a binding. This goes beyond the annotation flags without contradicting them.

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

Conciseness5/5

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

Two sentences carry the entire message: the first states the operation and output shape, the second links the output to the relevant sibling. There is no filler or repetition of schema fields.

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

Completeness5/5

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

With a single parameter, a clear output schema, and read-only annotations, this description covers everything an agent needs to select and call the tool correctly. It also provides the cross-reference to detach, which completes the workflow context.

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?

The only parameter, kb_id, is fully documented in the schema with 100% coverage and its source (findagent_list_kbs). The description adds the ownership requirement ('a knowledge base you own') and clarifies what the returned attachment ids are for, giving the parameter practical context beyond the raw type.

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

Purpose5/5

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

The description opens with a specific verb ('List') and a precise resource ('where a knowledge base you own is attached'), then names the three attachment targets (agent / department / personal) and what each row contains (attachment id, mode). This differentiates it from sibling tools like findagent_attach_kb and findagent_detach_kb without needing their schemas.

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?

It states the tool's scope ('knowledge base you own') and explicitly ties the returned attachment id to findagent_detach_kb, giving a concrete follow-up use. It does not spell out exclusion criteria versus all siblings, but the purpose is clear enough that an agent can infer when it applies.

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

findagent_list_kb_documentsA
Read-only
Inspect

List the documents in a knowledge base you own, each with its ingest status — 'parsing'/'embedding' (in flight), 'ready' (searchable), or 'failed' (with an error) — plus title, source kind, size, and id. Use the id with findagent_delete_kb_document to remove one. This is the per-document detail behind findagent_list_kbs's aggregate document_count. READ-ONLY.

ParametersJSON Schema
NameRequiredDescriptionDefault
kb_idYesThe knowledge base id (from findagent_list_kbs).

Output Schema

ParametersJSON Schema
NameRequiredDescription
usageNo
documentsNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already mark readOnlyHint true; the description reinforces that with READ-ONLY and adds meaningful context about ingest lifecycle ('parsing'/'embedding' in flight, 'ready' searchable, 'failed' with error) and the ownership constraint. No contradiction with annotations.

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

Conciseness5/5

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

Three tight sentences: purpose and statuses are front-loaded, downstream usage is one actionable clause, and the read-only flag is a deliberate final signal. Every sentence earns its place without redundancy.

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

Completeness5/5

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

With a single well-documented parameter, an output schema present, and safe read annotations, the description covers the full operational contract: what is listed, what the statuses mean, how it relates to aggregate listing, and how returned ids are used downstream. Nothing essential for correct invocation is missing.

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

Parameters3/5

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

The only parameter, kb_id, is already fully documented in the schema as coming from findagent_list_kbs, so the description adds no new format or syntax detail. The 'you own' qualifier is a mild additional constraint but does not materially expand parameter semantics beyond the schema.

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

Purpose5/5

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

The description uses a specific verb and resource ('List the documents in a knowledge base you own'), enumerates return fields and exact ingest statuses, and distinguishes itself from findagent_list_kbs and findagent_delete_kb_document. An agent can immediately tell this is the per-document listing tool.

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?

It clearly frames this tool as the per-document detail behind findagent_list_kbs's aggregate document_count and instructs using the returned id with findagent_delete_kb_document. It does not explicitly enumerate when not to use it, but the sibling relationships and read-only scoping provide enough guidance.

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

findagent_list_kbsA
Read-only
Inspect

List the knowledge bases you own (and any organization KBs you belong to), each with its embedding model, whether an embedding key is bound, document count, and how many agents/departments it is attached to. READ-ONLY.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
knowledge_basesNo

TDQS

A4.3/5.0
Behavior3/5

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

readOnlyHint=true already communicates the safety profile, and the description reinforces it with 'READ-ONLY.' It adds useful context about visibility (own KBs plus organization KBs) and the data returned, but it does not disclose behaviors such as pagination, auth requirements, or response size limits. This matches the level of a simple list tool whose annotations already cover side effects.

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

Conciseness5/5

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

A single front-loaded sentence states the action, scope, and returned fields with no filler. The 'READ-ONLY' flag is appended as a clear safety signal, and every clause earns its place.

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

Completeness5/5

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

For a parameterless read-only list operation with an output schema available, the description covers everything needed: what is listed, whose KBs are included, and what attributes are returned. There are no parameters to document and no hidden invocation requirements to infer.

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?

The tool has zero parameters, so the baseline is 4; there is nothing for the description to add about argument semantics. The schema already records an empty parameter set with 100% coverage.

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

Purpose5/5

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

The description uses a specific verb ('List'), names the resource ('knowledge bases'), and sharply defines scope: KBs you own plus organization KBs you belong to. It also enumerates the returned fields, which distinguishes it from sibling tools like findagent_list_kb_documents and findagent_list_kb_attachments.

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?

The description makes the applicability clear by stating the ownership/membership scope, so an agent knows exactly what set of knowledge bases this tool covers. It does not explicitly name alternatives or state when-not-to-use it, but for a read-only listing tool with distinctive scope this is sufficient.

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

findagent_list_membersA
Read-only
Inspect

List an organization's members (user id, role, status, joined date). Any active member may read the roster. Identify the org by org_id or slug. READ-ONLY.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugNoThe organization slug (alternative to org_id).
org_idNoThe organization id (from findagent_list_orgs).

Output Schema

ParametersJSON Schema
NameRequiredDescription
membersNo

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already supply readOnlyHint=true; the description adds useful context beyond that by noting that active membership is the access requirement, and that org identification can be via org_id or slug. This goes beyond the structured annotation without contradicting it.

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

Conciseness5/5

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

Three short sentences carry all essential information with no filler. The primary action and returned fields are front-loaded, with access and identification details placed afterward.

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

Completeness4/5

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

With an output schema present and read-only annotations set, the description covers the main behavioral requirements. A small gap: the schema marks both params as optional, but logically at least one of org_id or slug must be supplied; the description does not explicitly state this precondition.

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

Parameters3/5

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

Schema coverage is 100% with both parameters already described in the input schema. The description's note to identify the org by org_id or slug merely restates that guidance, adding no new semantic value.

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

Purpose5/5

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

States a specific verb ('List'), resource ('an organization's members'), and the returned fields (user id, role, status, joined date). This cleanly distinguishes it from member-mutating siblings like findagent_change_member_role and findagent_remove_member.

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?

Clearly scopes when to use the tool: reading an org roster, with the permission note that any active member may read it. It does not explicitly name alternatives or when not to use it, but the resource and verb make the context unambiguous.

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

findagent_list_my_agentsA
Read-only
Inspect

List the agents that are YOURS, in either sense. scope:"created" (the default) returns agents you CREATED — id + slug + name + kind + status + any in-flight re-version status — plus your personal departments; call it FIRST when you need a slug for a lifecycle tool (findagent_edit_price / findagent_bump_version / findagent_withdraw_version / findagent_edit_metadata / findagent_rollback_version), to submit a draft (findagent_submit_for_review — a draft/needs_changes agent is submittable), or to attach a knowledge base (findagent_attach_kb). scope:"acquired" returns agents you BOUGHT or INSTALLED — your library — which is what to call when a buyer asks what they have access to; those are not yours to edit. scope:"all" returns both. Essential after reconnecting in a new session, when you no longer have the slug of something you created or acquired earlier. READ-ONLY.

ParametersJSON Schema
NameRequiredDescriptionDefault
scopeNoWhich sense of "mine": created (default — agents you authored, editable via the lifecycle tools), acquired (agents you bought or installed, read-only to you), or all.

Output Schema

ParametersJSON Schema
NameRequiredDescription
agentsNo
acquiredNo
departmentsNo
instructionsNo

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already carry readOnlyHint=true, but the description adds substantial context: what fields are returned per scope, that acquired agents are 'not yours to edit', and the re-version status inclusion. This is behavioral info beyond the annotation layer.

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

Conciseness4/5

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

It is front-loaded with the core distinction and every clause earns its place, but the long parenthetical chains and stacked tool name lists make it dense and slightly run-on.

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

Completeness5/5

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

With an output schema present, return values need not be detailed, yet the description still summarizes them. For a single-enum-param listing tool, nothing an agent needs to call it correctly is missing.

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% and the enum is documented in the schema, so baseline is 3. The description goes further by tying each scope to its purpose (editable via lifecycle tools vs. read-only library vs. both), adding meaning beyond the enum labels.

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

Purpose5/5

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

The description states a specific verb+resource (list your agents) and immediately disambiguates 'yours' into created vs. acquired vs. all. It clearly separates itself from siblings like findagent_browse_agents and findagent_get_agent by scoping to ownership.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit when-to-use routing: 'call it FIRST when you need a slug' for five named lifecycle tools, use scope:acquired when a buyer asks what they have access to, and use it after reconnecting in a new session. Alternatives and conditions are named directly.

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

findagent_list_orgsA
Read-only
Inspect

List the organizations you are an active member of, with your own role (owner/admin/member) and seat count in each. READ-ONLY.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
organizationsNo

TDQS

A4.3/5.0
Behavior3/5

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

Annotations already provide readOnlyHint and openWorldHint, so the READ-ONLY note adds little new information. The description contributes the 'active member' filter and role/seat-count fields, which is useful context, but it does not disclose pagination, ordering, or failure behavior. This is acceptable for a zero-parameter read-only list but not rich behavioral disclosure.

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

Conciseness5/5

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

The description is a single front-loaded sentence that states the action, scope, and returned fields with no filler. The redundant READ-ONLY note does not meaningfully hurt conciseness.

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

Completeness5/5

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

With zero parameters and an output schema handling return values, the description covers everything an agent needs in order to invoke the tool correctly. It specifies what entities are listed, the membership criterion, and the key fields returned.

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?

The input schema has zero parameters, so the baseline is 4; the description has no parameter semantics to add. There is nothing unclear about invocation inputs.

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

Purpose5/5

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

Uses a specific verb ('List') and resource ('organizations you are an active member of'), and adds concrete output details: role and seat count. The 'active member' scope also clearly differentiates it from related tools like findagent_get_org or findagent_list_members.

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?

The description makes the context clear: use this when you need a read-only view of your active org memberships with your role and seat usage. It does not explicitly name alternatives or exclusion conditions, but the scope is evident enough for an agent to distinguish it from sibling org-related tools.

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

findagent_list_reposA
Read-only
Inspect

List the CALLER'S OWN GitHub repos so you can pick one to import. Returns each repo's full_name (owner/repo), default_branch, and private flag. Pass a chosen full_name to findagent_import_repo. If GitHub is not connected it returns connected:false pointing at findagent_connect_github; in GitHub-App mode with no repos granted it returns needs_install with an install URL. Never returns your GitHub token.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
reposNo
connectedNo
next_toolNo
install_urlNo
instructionsNo
needs_installNo

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare readOnlyHint and openWorldHint, but the description adds substantial context: it guarantees the tool never returns the GitHub token, and it discloses the two failure/edge-case responses (connected:false and needs_install). This provides valuable behavioral transparency beyond the annotations.

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

Conciseness5/5

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

The description is compact yet information-dense: purpose is front-loaded, followed by return fields, the next step, edge cases, and a security note. Every sentence adds value with no redundancy.

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

Completeness5/5

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

For a zero-parameter, read-only tool, the description covers all necessary aspects: what it returns, how to proceed, error cases, and a security guarantee. It is complete enough for an agent to call it correctly and interpret the response.

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?

The input schema has zero parameters, so there is nothing to document. The description does not repeat schema info but instead focuses on output fields (full_name, default_branch, private flag) and behaviors. Given the baseline for zero parameters is 4, this is appropriate.

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

Purpose5/5

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

The description clearly states the verb (list), resource (the caller's own GitHub repos), and the intended purpose (to pick one to import). It also differentiates from siblings like findagent_connect_github and findagent_import_repo by explicitly mentioning the import flow.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly says to pass the chosen full_name to findagent_import_repo, establishing the workflow. It also provides guidance for edge cases: if GitHub is not connected, it points to findagent_connect_github; if no repos are granted, it mentions needs_install with an install URL. This helps the agent decide when to use this tool and what to do next.

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

findagent_list_requestsA
Read-only
Inspect

Read the PUBLIC FindAgent Agent Request Board — the community demand board of "I want an agent that does X" requests buyers have posted (the same board the website /requests page shows). Returns each request's title, body, status (open|planned|fulfilled|declined|duplicate), upvote count, requester handle, and the slug of a fulfilling agent when one is linked. A creator can build an agent that fulfils an OPEN request. Pass mine:true to list ONLY YOUR OWN requests instead (includes ones you withdrew / an admin removed, each flagged — withdraw a still-live one with findagent_withdraw_request). Filters: status, sort (top by upvotes | new). PAGINATED via offset. READ-ONLY.

ParametersJSON Schema
NameRequiredDescriptionDefault
mineNoWhen true, return ONLY the connected account's own requests (author-scoped, incl. withdrawn/removed rows) instead of the public board. Ignores status.
sortNoSort by upvote count (top) or recency (new). Default top.
limitNoOptional page size (default 30, max 100).
offsetNoOptional pagination offset (default 0).
statusNoOptional status filter for the public board (default: all live requests). Ignored when mine:true.

Output Schema

ParametersJSON Schema
NameRequiredDescription
countNo
usageNo
has_moreNo
requestsNo
next_offsetNo

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=true, and the description reinforces this with 'READ-ONLY.' It adds meaningful behavioral detail: mine:true includes withdrawn/removed rows that are flagged, status is ignored in mine:true mode, and the board matches the website /requests page. This goes well beyond structured fields.

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

Conciseness5/5

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

The description is dense but every sentence carries information: resource, return fields, workflow, mine variant, filters, pagination, and read-only status. It is front-loaded with the most important scoping information and contains no filler.

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

Completeness5/5

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

Given the output schema exists, the description fully covers what the tool returns and all key behaviors. It explains the public vs. mine distinction, filtering options, pagination, and the relation to withdrawal. Nothing an agent needs to use it correctly seems missing.

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 a baseline of 3 applies. The description adds extra semantic value by explaining the mine:true behavior (including withdrawn/removed rows) and tying pagination to offset. Some details duplicate schema text, but the additional context earns a 4.

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

Purpose5/5

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

The description names a specific verb ('Read'), a precise resource ('PUBLIC FindAgent Agent Request Board'), and explains the board's nature with an example. It clearly distinguishes this from sibling tools by specifying the board scope and contrasting public vs. mine view.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly describes when to use the public board vs. mine:true, and even points to findagent_withdraw_request for a related action. The context for filtering, sorting, and pagination is directly actionable without requiring inference.

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

findagent_list_tech_facetsA
Read-only
Inspect

List the controlled Tech Domain and Language/Framework vocabularies (the software-development discipline facets). Pass chosen slugs as create_draft tech_domains[] / languages[]. Read-only; these are enrichment facets (unknown slugs are dropped). Prefer findagent_submission_wizard to walk the user through the tech step-by-step.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
usageNo
languagesNo
tech_domainsNo

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false. The description adds meaningful behavioral context beyond those: the vocabularies are controlled and enrichment-oriented, and unknown slugs are silently dropped. This helps the agent understand consequences without contradicting the annotations.

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

Conciseness5/5

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

The description is compact and front-loaded: it states the core purpose in the first sentence, then gives usage instructions and alternatives in two short follow-up sentences. Every sentence earns its place with no wasted words.

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

Completeness5/5

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

Given the zero-parameter signature, the read-only annotations, the existence of an output schema, and the presence of a named wizard alternative, the description covers everything an agent needs to decide to call it and to use its results correctly.

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?

The tool has zero parameters and schema description coverage is 100%, so there is no parameter detail to document. The description still adds semantic value by explaining how returned slugs should be used in create_draft, which aids the agent even without parameters.

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

Purpose5/5

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

The description starts with a specific verb and resource: 'List the controlled Tech Domain and Language/Framework vocabularies'. It identifies the exact content of the tool—software-development discipline facets—making its purpose unmistakable and distinguishing it from generic listing tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives explicit usage direction: 'Pass chosen slugs as create_draft tech_domains[] / languages[]'. It also names a preferred alternative, findagent_submission_wizard, and clarifies that unknown slugs are dropped, which tells the agent when to use this tool versus a guided walkthrough.

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

findagent_new_versionAInspect

Publish a NEW VERSION of YOUR OWN agent — whichever kind it is. Call this when a creator asks to update, re-publish, re-pull, re-scan or bump their agent; you do NOT need to know which mechanism its kind uses, because this routes on the agent's own published manifest using the same classifier the web dashboard branches on. A hand-edited recipe or doer is re-versioned from the fields you pass (system_prompt / tools / guardrails / example_prompts / llms / credential_slots, exactly as findagent_bump_version takes them); a code-bundle or skills-bundle is re-pulled from its connected GitHub repo (optional ref); an mcp-server listing the buyer reaches over the network is re-scanned at that endpoint, while one the buyer runs on their own machine has no endpoint to scan and is re-versioned from the fields you pass, like a doer. Pass bump (patch|minor|major, default patch) and a changelog where the kind takes one; the bump is applied to the LISTING's current version, never to a version declared in a repo — the listing owns its own version line, so a hand-edited repo version does not change what publishes here. Owner-only; the new version enters the normal review gate. PREFER THIS over findagent_bump_version / findagent_repull / findagent_reintrospect_mcp — those still work and each refuses a kind it does not handle, which is the mistake this tool removes.

ParametersJSON Schema
NameRequiredDescriptionDefault
refNocode-bundle / skills-bundle only: a branch, tag or commit sha to re-pull. Ignored for other kinds.
bumpNoSemver step. Default patch.
slugYesYour agent slug (you must own it).
changelogNoWhat changed (10-500 chars), for the kinds that take one.

Output Schema

ParametersJSON Schema
NameRequiredDescription
instructionsNo

TDQS

A4.5/5.0
Behavior5/5

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

Annotations only carry readOnlyHint=false and openWorldHint=false, so the description carries the full burden of behavioral disclosure. It delivers rich context: owner-only access, entry into the normal review gate, the listing-owned version rule ('never to a version declared in a repo'), and per-kind handling (re-pull, re-scan, re-version). This goes well beyond the sparse annotations.

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

Conciseness4/5

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

The description is long but well-structured, front-loading purpose and usage before detailed per-kind behavior and parameter notes. Most sentences earn their place, though the extraneous mention of non-schema fields adds noise and the length could be tightened without losing meaning.

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

Completeness4/5

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

For a multi-kind, owner-only mutation tool, the description covers routing, ownership, review gate, version ownership, and sibling preference; output schema and full parameter descriptions fill the rest. The only substantial gap is the discrepancy between mentioned fields and the actual schema, which leaves a minor hole in the invocation contract.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents each parameter. The description adds useful conditionality (ref only for code-bundle/skills-bundle, changelog 'where the kind takes one', bump default patch) but also references fields (system_prompt, tools, guardrails, etc.) that are not present in the input schema. This mismatch can mislead an agent into attempting unsupported parameters, offsetting the added value.

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

Purpose5/5

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

The description opens with a clear verb-resource statement ('Publish a NEW VERSION of YOUR OWN agent') and immediately establishes scope by covering all agent kinds. It explicitly names and contrasts with sibling tools (findagent_bump_version, findagent_repull, findagent_reintrospect_mcp), so an agent can disambiguate this tool without inspecting schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit when-to-call guidance ('Call this when a creator asks to update, re-publish, re-pull, re-scan or bump their agent') and explains the key simplification ('you do NOT need to know which mechanism its kind uses'). It also explicitly states preference over three alternatives and the reason they are inferior, making the routing decision unambiguous.

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

findagent_preflightA
Idempotent
Inspect

Validate YOUR OWN draft BEFORE submitting it — the same checks the submit gate enforces, surfaced up front so you can fix issues first. Returns blocking issues (must fix before you can submit) and advisory warnings (recommended). For a CODE agent it also runs a build dry-run in the sandbox to catch a too-large bundle / missing dependency / build error before submit — that build is asynchronous (minutes), so the result shows build_status: 'building' while it runs; re-call this tool to see the final pass/fail. Optionally pass smoke: true to ALSO run your code agent once in the sandbox (after the build passes) to confirm it actually responds with the credentials you saved — the verdict comes back in smoke and is advisory (it never blocks submit). Pass agent (the slug or id of your draft from findagent_create_draft / findagent_create_code_draft). Submit (findagent_submit_for_review) is blocked server-side until this passes and, for a code agent, the build passes.

ParametersJSON Schema
NameRequiredDescriptionDefault
agentYesThe slug or id of YOUR draft (from findagent_create_draft / findagent_create_code_draft).
smokeNoOptional. Set true to also run ONE tool once in the sandbox on your OWN code agent (after the build passes) to confirm it responds. Advisory only — the result is in `smoke` and never blocks submit.

Output Schema

ParametersJSON Schema
NameRequiredDescription
okNo
smokeNo
advisoryNo
blockingNo
next_toolNo
size_bytesNo
build_statusNo
instructionsNo
heaviest_depsNo

TDQS

A4.8/5.0
Behavior5/5

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

The description discloses the asynchronous build ('build_status: 'building''), the need to re-call for final results, the advisory non-blocking nature of smoke, and the server-side blocking behavior. These details go well beyond the annotations and are consistent with readOnlyHint=false, idempotentHint=true, and destructiveHint=false; no contradiction exists.

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

Conciseness4/5

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

The description is dense but front-loaded with the core purpose and returns. It earns most of its length by explaining asynchronous behavior, smoke semantics, and blocking rules, though the single long paragraph is slightly run-on and repeats some smoke wording already present in the schema.

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

Completeness5/5

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

For a complex gating tool, this description is complete: it explains where the tool fits in the workflow, what blocking vs advisory means, how async builds behave, how smoke is gated on build success, and what prerequisite input is required. The output schema covers return-value details, so nothing material is missing.

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?

The input schema already documents both parameters, so the baseline is 3. The description adds useful context beyond the schema: it emphasizes that the draft must be YOUR OWN, and it clarifies that smoke exists to confirm the agent 'actually responds with the credentials you saved' after the build passes.

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

Purpose5/5

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

The description starts with a specific verb and resource: 'Validate YOUR OWN draft BEFORE submitting it' and ties the tool to the submit gate. It clearly distinguishes preflight from submit and status siblings by explaining it surfaces the same checks before they would block submission.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It explicitly states when to use the tool ('BEFORE submitting', 'fix issues first') and the consequence of skipping it: 'Submit ... is blocked server-side until this passes.' It also gives granular usage conditions, such as the code-agent build path, optional smoke runs, and the need to pass a draft slug or id.

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

findagent_reintrospect_mcpAInspect

Publish a NEW version of YOUR OWN published EXTERNAL MCP-server listing by RE-INTROSPECTING its remote endpoint. FindAgent re-lists the remote server's current tools (over a sandbox-gated, SSRF-hardened scan), compares them to your live listing, and — if the tool surface CHANGED — submits a new version for admin review with an auto-drafted changelog. Your LIVE listing keeps serving until the new version is approved (never auto-unpublished). If the tools are unchanged it is a no-op. If your server has started REQUIRING AUTHENTICATION, the tools can't be re-listed but the listing's 'needs your own credentials' disclosure is corrected in a new version, with your tool list left unchanged. If the remote can't be reached or the scan is unavailable, nothing changes (reported back). Pass the listing slug (you must own it); optional bump (patch|minor|major, default patch) + changelog override. The server URL is read from your stored listing — nothing executes on FindAgent. Owner-only; for external mcp-server listings only (code agents use the code wizard, doers use findagent_bump_version).

ParametersJSON Schema
NameRequiredDescriptionDefault
bumpNoOptional semver bump for the new version. Defaults to patch.
slugYesYour published mcp-server listing slug (you must own it).
changelogNoOptional changelog override (≤500 chars). Defaults to an auto-drafted line from the tool diff.

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
statusNo
changedNo
scannedNo
versionNo
changelogNo
scan_noteNo
server_urlNo
tool_countNo
instructionsNo
auth_disclosure_changedNo

TDQS

A4.8/5.0
Behavior5/5

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

Annotations already declare readOnlyHint=false, destructiveHint=false, and openWorldHint=true, but the description adds substantial behavioral context: the sandbox-gated SSRF-hardened scan, the fact that the live listing keeps serving until approval, the no-op on unchanged tools, the auth-required disclosure correction, and the 'nothing executes on FindAgent' safety note. This goes well beyond what annotations provide.

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

Conciseness4/5

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

The description is dense but well-organized, front-loading the core action and then covering edge cases. Every sentence earns its place, though the length is substantial. It could be slightly trimmed, but the density is justified by the tool's complexity.

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

Completeness5/5

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

Given the tool's complexity, the description covers all critical behaviors: the scan, the comparison, the version submission, the no-op case, the auth-required case, the unreachable-remote case, ownership, and the distinction from siblings. The output schema exists, so return values need not be described. Nothing an agent needs to call this correctly is missing.

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 schema already documents all three parameters. The description adds value by explaining the default bump (patch), the changelog override limit (≤500 chars), and the ownership requirement for slug. It doesn't add syntax details, but the schema already covers those; the description's extra context earns a 4.

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

Purpose5/5

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

The description states a specific verb ('Publish a NEW version... by RE-INTROSPECTING its remote endpoint'), names the resource (your own published external MCP-server listing), and clearly distinguishes it from siblings like findagent_bump_version and findagent_repull. It also explains the no-op case and the auth-required case, so an agent can tell exactly what this tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly says when to use it (owner-only, external mcp-server listings only) and when not to (code agents use the code wizard, doers use findagent_bump_version). It also states the optional parameters and the default behavior, leaving no ambiguity about selection.

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

findagent_remove_memberA
Destructive
Inspect

Remove a member from an organization (owner/admin only; only an owner may remove an admin or owner). The last owner cannot be removed.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugNoThe organization slug (alternative to org_id).
org_idNoThe organization id (from findagent_list_orgs).
user_idYesThe user id of the member to remove (from findagent_list_members).

Output Schema

ParametersJSON Schema
NameRequiredDescription
removedNo

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already mark this as destructive (destructiveHint=true, readOnlyHint=false), and the description aligns with that. Beyond annotations, it adds meaningful behavioral context: permission requirements, role-based removal restrictions, and the last-owner safeguard, which help the agent anticipate failure cases.

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

Conciseness5/5

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

The entire description is a single, tight sentence with parenthetical constraints that carry high-signal information. Every phrase earns its place: the action, the permission gate, and the critical edge case.

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

Completeness5/5

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

For a destructive membership-removal tool with an output schema and complete parameter documentation, the description covers the key operational constraints: who may act, who may be removed, and the protected last-owner case. Nothing an agent needs to invoke this correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all three parameters and their sources. The description does not add parameter-level detail beyond that, which is acceptable given the schema's completeness; baseline 3 applies.

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

Purpose5/5

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

The description clearly states the action ('Remove a member') and the object ('from an organization'), which immediately distinguishes this from sibling tools like invite_member or change_member_role. It also adds precise access constraints that clarify the tool's specific scope.

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?

The description gives clear context on when this tool applies by specifying owner/admin permissions and noting that only an owner may remove an admin or owner. It also gives an exclusion, 'last owner cannot be removed'. However, it does not explicitly name alternative sibling tools or state when to prefer them over this one.

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

findagent_repullAInspect

Publish a NEW version of YOUR OWN published CODE-BUNDLE or SKILLS-BUNDLE agent by RE-PULLING your OAuth-connected GitHub repo. FindAgent re-fetches your repo (at an optional branch/tag/commit ref, default = the latest commit on your stored branch), re-snapshots + re-scans it (a code bundle also re-builds), diffs it against your live version, and — if it CHANGED — submits a new version for admin review with an auto-drafted changelog. Your LIVE version keeps serving until the new one is approved (never auto-unpublished). If the source is unchanged it is a no-op. Pass the agent slug (you must own it) + optional ref. Owner-only; the repo is pinned to your agent's own prior import (arbitrary-repo ingest is not available here). VERSION NUMBER: the new version is computed from the LISTING's current version plus bump, NOT from any version in your repo (package.json / manifest) — the listing owns its own version line, so hand-editing a version in the repo does not change what gets published here, and the two can legitimately differ. For code-bundle / skills-bundle only — doers/recipes re-version via findagent_bump_version, external mcp-server listings via findagent_reintrospect_mcp.

ParametersJSON Schema
NameRequiredDescriptionDefault
refNoOptional branch, tag, or commit SHA to pull. Defaults to the latest commit on your stored branch.
bumpNoVersion bump for this re-version — patch (default), minor (a feature release, e.g. 0.1.x → 0.2.0), or major. Omit for patch. Applied to the LISTING's current version, not to any version declared in the repo.
slugYesYour published code-bundle or skills-bundle agent slug (you must own it).

Output Schema

ParametersJSON Schema
NameRequiredDescription
kindNo
slugNo
statusNo
changedNo
versionNo
changelogNo
scan_statusNo
instructionsNo

TDQS

A4.8/5.0
Behavior5/5

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

The description discloses the full pipeline: re-fetch, re-snapshot, re-scan, rebuild for code bundles, diff against live version, submit for review if changed, no-op if unchanged, and 'Your LIVE version keeps serving until the new one is approved (never auto-unpublished).' It also explains the non-obvious version-numbering rule (listing version + bump, not repo version), going well beyond the readOnly/destructive hints.

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

Conciseness4/5

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

The description is long but dense; the core action and scope are front-loaded in the first sentence, and the later paragraphs cover genuinely non-obvious behavior (version numbering, admin review, no-op). A small amount of ref/slug detail duplicates the schema, so it is not maximally concise.

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

Completeness5/5

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

For a mutation tool with an output schema and 100% parameter coverage, the description supplies everything an agent needs: ownership requirements, source pinning, branch/ref handling, no-op case, review flow, and version semantics. It also names the sibling tools for other listing types, so no critical decision context is missing.

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, and the description adds extra meaning beyond the schema: bump is explicitly 'Applied to the LISTING's current version, not to any version declared in the repo,' and ref is tied to the stored branch default. Slug semantics largely repeat the schema, so not a 5.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Publish a NEW version ... by RE-PULLING your OAuth-connected GitHub repo.' It names the exact bundle types (code-bundle or skills-bundle) and explicitly contrasts with findagent_bump_version and findagent_reintrospect_mcp, making the tool's purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives explicit when-to-use and when-not-to-use guidance: 'For code-bundle / skills-bundle only — doers/recipes re-version via findagent_bump_version, external mcp-server listings via findagent_reintrospect_mcp.' It also states owner-only and pinned-repo constraints so an agent can decide correctly before calling.

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

findagent_resend_inviteAInspect

Send an organization invite again, for one that expired or was never received (owner/admin only). This mints a NEW link and KILLS the previous one — the original cannot be re-sent because only a hash of it is stored. Counts against the same seat cap as inviting. Get invite_id from findagent_list_invites.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugNoThe organization slug (alternative to org_id).
org_idNoThe organization id (from findagent_list_orgs).
invite_idYesThe invite id, from findagent_list_invites.

Output Schema

ParametersJSON Schema
NameRequiredDescription
inviteNo
instructionsNo

TDQS

A4.5/5.0
Behavior5/5

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

Annotations mark readOnlyHint=false, and the description substantially enriches that with mutation behavior: it mints a NEW link and KILLS the previous one, explains why (only a hash is stored), and discloses the side effect that it counts against the same seat cap as inviting. This is exactly the beyond-annotation context that matters for a destructive-ish write.

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

Conciseness5/5

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

Three dense sentences, front-loaded with the action and condition, then the destructive-link behavior, then the parameter source. Zero filler; every clause carries information an agent needs.

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

Completeness5/5

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

Output schema exists, so return values need not be explained. Combined with complete schema coverage and annotations, the description covers purpose, prerequisites, side effects, and parameter sourcing, leaving no meaningful gap for correct invocation.

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

Parameters3/5

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

Schema description coverage is 100%, so all three parameters including invite_id, slug, and org_id are already documented. The description restates the invite_id source ('from findagent_list_invites') in line with the schema, adding no new syntactic or semantic detail. Baseline 3 applies.

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

Purpose5/5

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

States a specific verb and resource ('Send an organization invite again') and clearly distinguishes this from siblings like invite_member and revoke_invite by framing it as a re-send of an existing invite. An agent can tell what it does and when it applies without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives the triggering condition clearly ('for one that expired or was never received') and the permission prerequisite ('owner/admin only'). It notes the original cannot be re-sent (only a hash is stored), which explains the constraint, though it doesn't explicitly name a sibling alternative for the invite-creation case.

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

findagent_revoke_inviteAInspect

Cancel an outstanding organization invite (owner/admin only). Its link stops working and the email address becomes invitable again — the fix for an invite sent to the wrong address, which otherwise blocks the right one indefinitely. Get invite_id from findagent_list_invites.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugNoThe organization slug (alternative to org_id).
org_idNoThe organization id (from findagent_list_orgs).
invite_idYesThe invite id, from findagent_list_invites.

Output Schema

ParametersJSON Schema
NameRequiredDescription
revokedNo
instructionsNo

TDQS

A4.3/5.0
Behavior4/5

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

Goes beyond the annotations by disclosing the permission gate (owner/admin only) and the concrete effects: the link stops working and the address becomes invitable again. It does not explicitly state irreversibility or that other pending invites are untouched, but the effect description is unusually informative for a mutation tool.

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

Conciseness5/5

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

Three tight sentences, front-loaded with the action and permission requirement, followed by effect and ID sourcing. No filler or restatement of the title.

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

Completeness5/5

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

With an output schema present and annotations covering the safety profile, the description supplies everything else an agent needs: authorization requirement, the observable consequences of the call, and where to obtain the required identifier.

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

Parameters3/5

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

Schema coverage is 100% and the schema already documents slug, org_id, and invite_id with their sources. The description only repeats the invite_id provenance already present in the schema, adding no new parameter meaning, so the baseline 3 applies.

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

Purpose5/5

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

States a specific verb and resource ('Cancel an outstanding organization invite') plus scope qualifier ('outstanding'). This clearly separates it from siblings like findagent_resend_invite and findagent_invite_member without needing to open any schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a concrete when-to-use scenario (invite sent to the wrong address that otherwise blocks the correct one indefinitely) and states the owner/admin prerequisite. It stops short of explicitly contrasting with findagent_resend_invite, the nearest alternative, so an agent must infer that distinction.

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

findagent_rollback_versionA
Idempotent
Inspect

Roll YOUR OWN PUBLISHED agent BACK to a prior version (any kind). Pass the agent slug; OMIT version to LIST the prior published versions you can roll back to, then call again with version set to one of them. The live agent immediately serves that earlier (already-reviewed) version again — only a version that was published before can be a target (so it never serves unreviewed content). Existing buyers keep their access (entitlement is per purchase, not per version). Owner-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesYour published agent slug (you must own it).
versionNoThe semver of a PRIOR published version to revert to (from available_versions). Omit to list the eligible targets first.

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
rolled_backNo
instructionsNo
current_versionNo
available_versionsNo

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the annotations, the description discloses the key observable behavior: the live agent immediately serves the earlier version, existing buyers retain access because entitlement is per purchase not per version, and unreviewed content can never be served. It also states the owner-only authorization requirement. This adds strong context that annotations alone do not provide.

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

Conciseness4/5

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

The description is front-loaded with the core action and packs the important procedural and safety guidance into three sentences. There is slight redundancy around 'published' and 'already-reviewed,' but every sentence contributes necessary information and there is no filler.

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

Completeness5/5

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

For a two-parameter tool with a 100% schema description, an output schema, and clear annotations, the description covers the complete call flow, ownership constraint, eligibility rule, and side-effect behavior. An agent has everything needed to invoke the tool correctly in both of its modes.

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

Parameters3/5

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

Schema description coverage is 100%, so the baseline is 3. The description's workflow instructions, such as 'OMIT `version` to LIST the prior published versions,' largely restate what the version parameter schema already says ('Omit to list the eligible targets first'). It adds safety context about prior published versions, but this does not substantially deepen the meaning of the individual parameters beyond the schema.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Roll YOUR OWN PUBLISHED agent BACK to a prior version.' It clearly identifies the operation, the required ownership, and the distinction between listing candidate versions and performing the rollback. No sibling tool matches this exact purpose, so it is sufficiently differentiated.

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?

The description gives a clear two-step usage pattern: omit `version` to list eligible targets, then call again with `version` set to one of them. It also states when-not: only previously published versions are valid targets, and only the owner can perform the action. It does not explicitly name alternative sibling tools such as bump or withdraw, so it falls short of a 5, but the guidance is otherwise explicit and actionable.

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

findagent_set_agent_stateA
Destructive
Inspect

Take YOUR OWN live agent DOWN from the marketplace, or put a withdrawn one back UP. action:"withdraw" unlists a PUBLISHED agent and stops the gateway serving it, leaving the published version itself untouched; action:"restore" puts that same previously-approved version back up with no new review. Owner-only. This is the LIVE listing — distinct from findagent_withdraw_version, which withdraws a version still awaiting review and never touches what is live.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesYour agent slug (you must own it).
actionYeswithdraw = take the live listing down. restore = put a withdrawn one back up.

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
statusNo
instructionsNo

TDQS

A4.8/5.0
Behavior5/5

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

Annotations declare destructiveHint=true and readOnlyHint=false, and the description goes well beyond that: it says withdraw stops gateway serving while leaving the published version untouched, restore requires no new review, and the operation is owner-only. Reversibility, blast radius, and auth requirement are all disclosed.

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

Conciseness4/5

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

The primary action is front-loaded and the disambiguation against the sibling is held to the final sentence. Some ALL-CAPS emphasis and parenthetical restatement ('This is the LIVE listing') add slight bulk without new information.

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

Completeness5/5

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

An output schema exists so return values need not be explained. Ownership requirement, action semantics, side effects, and the nearest alternative are all covered, leaving nothing an agent needs in order to invoke this correctly.

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 enum values are already documented; baseline would be 3. The description adds real meaning on top — what 'withdraw' does to serving and that the underlying version survives — which the schema text alone does not convey.

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

Purpose5/5

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

States a specific verb+resource pair ('take YOUR OWN live agent DOWN... or put a withdrawn one back UP') with the two action modes named. It explicitly distinguishes itself from the sibling findagent_withdraw_version, so an agent can route correctly without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives explicit per-action conditions: withdraw applies to a PUBLISHED listing, restore applies to a previously-withdrawn one. It also names the alternative tool and the exact condition that selects it ('withdraws a version still awaiting review and never touches what is live').

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

findagent_submission_statusA
Read-only
Inspect

Check the review status of YOUR OWN agent and WHY it is where it is — the missing companion to findagent_submit_for_review. Pass the agent slug/id. Returns the status (draft | pending_review | needs_changes | published | rejected), the in-flight version, the reviewer's needs-changes reason when one was given, and the security-scan findings (severity + a creator-safe description). Use this after submitting to see whether it was approved, is still in review, or was sent back — and exactly what to fix. Owner-only. READ-ONLY.

ParametersJSON Schema
NameRequiredDescriptionDefault
agentYesThe slug or id of YOUR agent (from findagent_list_my_agents / findagent_create_draft).

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
statusNo
instructionsNo
pending_versionNo
security_findingsNo
needs_changes_reasonNo
security_scan_statusNo
security_scan_subjectNoWHICH version security_scan_status describes. A pending code-bundle carries its own scan verdict; a declarative pending version has none, so the published verdict is reported and this says so.

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare readOnlyHint and openWorldHint; the description goes well beyond them by disclosing the owner-only access constraint, the exact status enum values, and the three concrete pieces of data returned (in-flight version, reviewer's needs-changes reason, security-scan findings with severity). It also pre-empts the obvious safety question by stating READ-ONLY outright.

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

Conciseness4/5

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

The lead sentence is front-loaded with the core purpose and the alternative-tool framing, and the return payload is enumerated compactly. It is slightly redundant in restating the status outcomes twice ('draft | pending_review | needs_changes | published | rejected' then 'approved, is still in review, or was sent back'), which costs it a point.

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

Completeness5/5

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

An output schema exists, so return values need not be spelled out, yet the description still summarizes the meaningful fields. Combined with owner-only scope, the status enum, and the submit-after framing, an agent has everything needed to decide when and how to call it.

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% and the schema already documents the single 'agent' parameter, so the baseline is 3. The description adds real meaning by stressing the parameter must be YOUR agent and by cross-referencing where the slug/id comes from (findagent_list_my_agents / findagent_create_draft), which scopes the value beyond the schema text.

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

Purpose5/5

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

The description states a specific verb and resource ('Check the review status of YOUR OWN agent') and immediately adds the differentiator ('WHY it is where it is'). It explicitly positions itself as 'the missing companion to findagent_submit_for_review', separating it from siblings like findagent_get_agent or findagent_submission_wizard without the agent needing to open any schema.

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?

'Use this after submitting to see whether it was approved, is still in review, or was sent back' gives a clear trigger condition and ties it to the submit workflow. It also states the owner-only restriction. It stops short of explicitly excluding the closest alternatives (e.g., when to prefer findagent_get_agent), so it is strong but not fully exhaustive.

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

findagent_submission_wizardA
Read-only
Inspect

READ-ONLY: returns the next QUESTION to ask, and writes nothing. This is not the tool that submits — when the answers are collected, findagent_submit_for_review is what actually submits. Start a guided, step-by-step submission wizard — returns the ordered steps + the selectable choices (category tree + tech facets inlined); ask the user ONE step at a time as a numbered/selectable menu, validate (slug via findagent_check_slug), then advance, and finalize with findagent_create_draft. Prefer this over asking for all listing fields at once. Optional repo/source hints are echoed back (it does not pull a repo — that is findagent_import_repo).

ParametersJSON Schema
NameRequiredDescriptionDefault
repoNoOptional owner/repo hint (where the listing is being imported from).
sourceNoOptional source hint (e.g. github, json) — echoed back only.

Output Schema

ParametersJSON Schema
NameRequiredDescription
repoNo
stepsNo
sourceNo
wizardNo
instructionsNo
finalize_toolNo
field_contractNo

TDQS

A4.8/5.0
Behavior5/5

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

Adds substantial context beyond annotations: it is read-only and 'writes nothing' (reinforcing readOnlyHint), it clarifies the tool does NOT submit, does NOT pull a repo, and the repo/source params are 'echoed back only.' That is exactly the kind of behavioral clarification that prevents miscalls on a wizard entry point.

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

Conciseness4/5

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

Front-loads the READ-ONLY guarantee and the not-a-submitter clarification, which is well-prioritized. Sentences are slightly dense but every clause carries routing or behavioral info; nothing is wasted.

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

Completeness5/5

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

Given a wizard entry point with an output schema (ordered steps + choices) and strong annotations, the description covers what an agent needs: flow (ask one step at a time, validate slug, advance), finalization path (findagent_create_draft), and what will not happen. Complete for this complexity.

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. The description goes further by stating the hints are 'echoed back' and that it 'does not pull a repo,' which disambiguates the params' actual effect — useful beyond the schema's 'hint' wording.

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

Purpose5/5

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

States a specific verb+resource with explicit scope: 'Start a guided, step-by-step submission wizard — returns the ordered steps + selectable choices.' It also proactively distinguishes itself from multiple siblings (findagent_submit_for_review, findagent_import_repo, findagent_create_draft), so an agent can route correctly without opening schemas.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicit when-to-use guidance: 'Prefer this over asking for all listing fields at once,' plus named alternatives for adjacent tasks (submission via findagent_submit_for_review, repo pull via findagent_import_repo, slug validation via findagent_check_slug). It delineates what this tool is not, which is rare and valuable.

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

findagent_submit_for_reviewA
Idempotent
Inspect

WRITES: this is the tool that actually SUBMITS, and the draft enters human review. Not to be confused with findagent_submission_wizard, which only returns the next question to ask and changes nothing. Submit YOUR OWN draft listing for review — the final step that reaches full parity with the web submit wizard (set price, confirm originality + prohibited content, submit). Auto-detects whether the draft is a declarative (recipe / doer) or a code-bundle agent and finalizes it the same way the web wizard does: it flips your draft to pending_review (NOT published — an admin reviews it, and for a code agent a security scan must pass, before it goes live). Pass agent (the slug or id of your draft, created via findagent_create_draft / findagent_create_code_draft), price_type/price_cents, the LLMs it targets, and BOTH confirmations. confirm_original + confirm_not_prohibited are YOUR attestation that this is your original work and avoids prohibited content (malware, illegal, or disallowed use) — both must be true, exactly like the web wizard's checkboxes. SLUG IS PERMANENT: the first time you call this WITHOUT confirm_slug it returns the exact final slug + a notice that the public URL can never change after publish; re-call it with confirm_slug set to that exact slug to acknowledge and proceed (this mirrors the web wizard's permanence confirm — you never lock a slug you didn't see).

ParametersJSON Schema
NameRequiredDescriptionDefault
llmsYesThe clients/LLMs this agent targets (at least one).
agentYesThe slug or id of YOUR draft (from findagent_create_draft / findagent_create_code_draft).
price_typeNoDefault free. "paid" requires price_cents (charged once Paddle is live).
price_centsNoRequired when price_type=paid: a positive integer of US cents, max 50000 ($500).
confirm_slugNoYour acknowledgement that the listing's public URL slug is PERMANENT after publish. Must exactly match the draft's slug. Call this tool WITHOUT it first to see the exact slug + permanence notice, then re-call with confirm_slug set to that slug to publish.
thumbnail_urlNoOptional. Accepted ONLY if already hosted on FindAgent assets; otherwise ignored (upload a thumbnail in the web wizard — off-site image URLs are not fetched).
confirm_originalYesRequired true — your attestation that this listing is your original work.
confirm_not_prohibitedYesRequired true — your attestation that it avoids prohibited content (no malware, illegal, or disallowed use).

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
statusNo
accountNo
submittedNo
review_urlNo
instructionsNo
thumbnail_noteNo

TDQS

A4.8/5.0
Behavior5/5

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

Annotations mark it as a non-read-only, idempotent, non-destructive write, and the description goes well beyond that: it discloses the draft flips to pending_review and is NOT published, that an admin review and (for code agents) a security scan must pass, that slug is permanent, and that off-site thumbnail URLs are ignored. These are meaningful behavioral traits not captured by the annotations.

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

Conciseness4/5

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

Front-loads the crucial 'WRITES / this actually submits' signal and organizes the rest around the flow, but it is dense and includes some repetition (the web-wizard parity and permanence points are restated). Every sentence carries information, though it could be trimmed modestly.

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

Completeness5/5

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

Given an 8-parameter mutation tool with an output schema and annotations, the description covers the safety profile, the side effects, the required attestations, the slug-permanence protocol, and the failure/prerequisite context. Nothing an agent needs to invoke it correctly is missing.

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 adds real meaning: confirm_original/confirm_not_prohibited are framed as the user's attestation, confirm_slug is explained as a two-call acknowledgement of slug permanence, and the auto-detection of declarative vs code-bundle drafts is clarified. It goes beyond restating the schema.

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

Purpose5/5

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

Opens with a specific verb+resource ('WRITES: this is the tool that actually SUBMITS, and the draft enters human review') and explicitly distinguishes itself from findagent_submission_wizard, which it names as the non-submitting alternative. An agent can tell exactly what this does versus its nearest sibling without opening a schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

States when to use it (final step of the submit flow), when not to (not the wizard, which only returns the next question), the prerequisite (a draft from findagent_create_draft / findagent_create_code_draft), and the required two-call confirm_slug sequence. Alternatives and preconditions are all explicit.

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

findagent_transfer_org_ownershipAInspect

Transfer ownership of an organization to another active member (owner only). You stay on as an admin.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugNoThe organization slug (alternative to org_id).
org_idNoThe organization id (from findagent_list_orgs).
user_idYesThe user id of the active member to make the new owner (from findagent_list_members).

Output Schema

ParametersJSON Schema
NameRequiredDescription
transferredNo
instructionsNo

TDQS

A4/5.0
Behavior4/5

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

Annotations only indicate the tool is not read-only, so the description carries the burden for conveying mutation effects. It usefully discloses a non-obvious consequence: the transferring owner stays on as an admin, preventing an assumption that they are removed. It does not cover reversibility or downstream permission impacts, but this is solid given annotation coverage.

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

Conciseness5/5

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

The description is a single front-loaded sentence with no filler. Every phrase—'active member,' 'owner only,' and 'stay on as an admin'—adds meaningful operational context.

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

Completeness4/5

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

For a high-stakes ownership mutation, the description covers who may call it, who receives ownership, and the caller's resulting role. With complete schema parameter descriptions and an output schema present, no critical invocation detail is missing; the only minor omission is explicit guidance about the slug/org_id identifier alternatives, which the schema already documents.

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

Parameters3/5

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

Schema description coverage is 100%, so the parameters are already well documented: slug and org_id are alternative organization identifiers, and user_id is sourced from findagent_list_members. The description adds no extra parameter-level meaning beyond confirming the transfer direction, so the baseline 3 is appropriate.

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

Purpose5/5

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

The description opens with a specific verb-resource pair ('Transfer ownership of an organization') and specifies the recipient ('another active member') plus a key precondition ('owner only'). This clearly differentiates it from role-management siblings like change_member_role or remove_member.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description states who is allowed to use it ('owner only') and the required target state ('active member'), which implies valid usage. However, it gives no explicit guidance on when to prefer this tool over the closely related findagent_change_member_role or when it should not be used.

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

findagent_vote_requestAInspect

Upvote an agent request on the PUBLIC FindAgent demand board AS the connected account — signal that you also want the agent described by request_id (get ids from findagent_list_requests). Idempotent: voting again does not double-count. Returns the fresh upvote total. Free — no payment.

ParametersJSON Schema
NameRequiredDescriptionDefault
request_idYesThe id of the request to upvote (from findagent_list_requests).

Output Schema

ParametersJSON Schema
NameRequiredDescription
votedNo
upvotesNo
request_idNo
instructionsNo

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the sparse annotations, the description discloses key behavioral facts: the action is performed as the connected account, the operation is idempotent ('voting again does not double-count'), it returns the fresh upvote total, and it is free. This substantially exceeds the annotation coverage and gives the agent important expectations about side effects and response.

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

Conciseness5/5

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

Three concise sentences, each carrying distinct value: the core action and scope, the idempotency guarantee, and the return value/cost. The most important information is front-loaded, with no filler or redundant detail.

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

Completeness5/5

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

For a one-parameter mutation tool with an output schema, the description covers everything needed to invoke it correctly: where to get the ID, what the action means, side-effect safety through idempotency, return behavior, and cost. There is no significant missing context.

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

Parameters3/5

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

Schema coverage is 100%: the single request_id parameter already includes a description pointing to findagent_list_requests. The tool description repeats that source but adds no new semantic information beyond the schema, so it meets the baseline without going higher.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Upvote an agent request on the PUBLIC FindAgent demand board AS the connected account.' This clearly distinguishes the tool from siblings like findagent_create_request, findagent_withdraw_request, and findagent_list_requests. It also explains the underlying intent: 'signal that you also want the agent described by request_id.'

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?

The description tells the agent when to use the tool: to signal support for an existing public request, and it directs the agent to findagent_list_requests for valid IDs. It does not explicitly contrast this with findagent_create_request or findagent_withdraw_request, so the guidance is strong but not fully explicit about alternatives.

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

findagent_whoamiA
Read-only
Inspect

Report which FindAgent account this AI client is acting as (the account you authorized the connector with) plus whether GitHub is connected. Use this if a draft you created here is missing when you open it in a browser, or GitHub shows as not connected — your MCP work is scoped to THIS account, so you must be signed in to the same FindAgent account in the browser to see it.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
accountNo
instructionsNo
github_connectedNo

TDQS

A4.9/5.0
Behavior5/5

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

Annotations already signal readOnlyHint=true and openWorldHint=false, and the description adds substantial behavioral context: account scoping of MCP work, the need to match browser sign-in, and coverage of both account identity and GitHub connection status. This goes beyond what annotations alone convey and is fully consistent with them.

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

Conciseness5/5

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

The description is two sentences with no filler. The purpose is stated first, followed immediately by concrete usage triggers and a clarifying caveat. Every clause earns its place and the length is appropriate for the tool's simplicity.

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

Completeness5/5

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

Given zero parameters, an output schema, and read-only annotations, the description covers everything an agent needs: what it reports, when to use it, and why the account-scoping behavior matters. There are no meaningful gaps for correct invocation.

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?

The tool has zero parameters, so there is nothing to document; the baseline of 4 applies. The description still clarifies what the tool reports, which is the only semantic context an agent needs, and no param descriptions are required.

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

Purpose5/5

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

The description opens with a specific verb and resource: 'Report which FindAgent account this AI client is acting as' plus GitHub connection status. This is immediately distinguishable from all 49 sibling tools, none of which provide identity/connection introspection. No ambiguity about what the tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly tells the agent when to invoke it: 'Use this if a draft you created here is missing when you open it in a browser, or GitHub shows as not connected.' It also explains the underlying reason, that MCP work is scoped to the authorized account, which helps the agent decide in related scenarios.

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

findagent_withdraw_requestAInspect

Withdraw (retract) YOUR OWN agent request from the PUBLIC FindAgent demand board AS the connected account — the request drops off the public board and can no longer be upvoted (it is NOT hard-deleted). You can only withdraw a request you posted (get the id from findagent_list_requests with mine:true). Idempotent: withdrawing an already-withdrawn own request succeeds. Free — no payment.

ParametersJSON Schema
NameRequiredDescriptionDefault
request_idYesThe id of YOUR request to withdraw (from findagent_list_requests with mine:true).

Output Schema

ParametersJSON Schema
NameRequiredDescription
next_toolNo
withdrawnNo
request_idNo
instructionsNo
already_withdrawnNo

TDQS

A4.7/5.0
Behavior5/5

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

Annotations provide readOnlyHint=false, but the description adds substantial behavioral detail beyond that: the request drops off the public board, can no longer be upvoted, is NOT hard-deleted, is idempotent (withdrawing an already-withdrawn request succeeds), and is free. This gives the agent a clear mental model of side effects, which is especially valuable for a mutation.

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

Conciseness5/5

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

The description is concise but packed with value. The first sentence states the action and key effects, then it adds ownership and idempotency details in subsequent sentences without fluff. It is well-structured and front-loaded with the most important information.

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

Completeness5/5

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

The description is fully self-contained for a mutation with one parameter. It covers the ownership rule, idempotency, the soft-delete behavior, and cost. There is an output schema present, so return details are not required in the description. No critical information is missing.

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%, with request_id described fully. The description adds meaning by specifying that the id must come from findagent_list_requests with mine:true, and that it must be your own request. This goes beyond the schema's simple 'id of YOUR request' phrasing, providing a retrieval source and constraint.

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

Purpose5/5

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

The description states a specific verb ('withdraw/retract'), a specific resource ('YOUR OWN agent request from the PUBLIC FindAgent demand board'), and the scope ('AS the connected account'). It clearly distinguishes itself from siblings like findagent_create_request, findagent_vote_request, and findagent_list_requests by emphasizing the 'withdraw' action and the ownership constraint.

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?

It provides clear context on when to use (retracting your own request) and a prerequisite (get the id from findagent_list_requests with mine:true). It does not explicitly mention alternatives, but there are no direct sibling competitors for this action. The guidance to only withdraw requests you posted is a useful exclusion.

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

findagent_withdraw_versionA
Idempotent
Inspect

Withdraw YOUR OWN still-pending version of an agent (so you can submit a fresh one when a prior bump is stuck in review). Pass the agent slug. NEVER touches the live published version — only a version awaiting review is withdrawn. Owner-only.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesYour agent slug (you must own it).

Output Schema

ParametersJSON Schema
NameRequiredDescription
slugNo
withdrawnNo
version_idNo
instructionsNo

TDQS

A4.3/5.0
Behavior4/5

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

Beyond the annotations, the description adds precise behavioral context: it touches only the pending version and NEVER the live published version, and it requires ownership. This clarifies exactly what is withdrawn and what is preserved, complementing the destructiveHint=false annotation.

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

Conciseness5/5

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

The description is two sentences with no filler: the main action is front-loaded, the motivating scenario is parenthetical, and the critical safety limitation is stated explicitly. Every clause earns its place.

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

Completeness5/5

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

For a single-parameter tool with a full input schema, an output schema, and relevant annotations, the description covers the action, preconditions, ownership, and side-effect boundary. Nothing an agent needs to know in order to call it correctly is missing.

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

Parameters3/5

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

Schema description coverage is 100%, and the description only restates that the agent slug should be passed. The ownership requirement is already in the schema description, so the tool description adds no meaningful parameter-level semantics beyond the schema.

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

Purpose5/5

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

The description opens with a specific verb and resource: withdraw your own still-pending version of an agent. It explicitly distinguishes this from the live published version and from related approval workflows, so an agent can tell it apart from siblings like bump_version or rollback_version.

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?

The description gives a clear trigger scenario: use it when a prior bump is stuck in review and you want to submit a fresh version. It also states the owner-only constraint and that only pending versions are affected, though it does not explicitly name sibling alternatives for resubmission or live-version management.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool update
    • Changedfindagent_repull1 field changed
      • changedInput schema / properties / bump / description
        Previous value: -"Version bump for this re-version — patch (default), minor (a feature release, e.g. 0.1.x → 0.2.0), or major. Omit for patch."New value: +"Version bump for this re-version — patch (default), minor (a feature release, e.g. 0.1.x → 0.2.0), or major. Omit for patch. Applied to the LISTING's current version, not to any version declared in the repo."
  2. 1 tool update
    • Addedfindagent_edit_department
  3. 2 tool updates
    • Changedfindagent_add_connector4 fields changed
      • addedOutput schema / properties / connection
        Added value: +{
        +  "enum": [
        +    "hosted",
        +    "local"
        +  ],
        +  "type": "string"
        +}
      • changedOutput schema / properties / connector / type
        Previous value: -"object"New value: +[
        +  "object",
        +  "null"
        +]
      • addedOutput schema / properties / listing_url
        Added value: +{
        +  "type": "string"
        +}
      • changedOutput schema / properties / status / enum
        Previous value: -[
        -  "entitled",
        -  "purchase_required"
        -]New value: +[
        +  "entitled",
        +  "purchase_required",
        +  "external_mcp_server"
        +]
    • Changedfindagent_get_agent2 fields changed
      • addedOutput schema / properties / connection
        Added value: +{
        +  "enum": [
        +    "hosted",
        +    "local"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / is_mcp_server_listing
        Added value: +{
        +  "type": "boolean"
        +}
  4. 1 tool update
    • Changedfindagent_submission_status1 field changed
      • addedOutput schema / properties / security_scan_subject
        Added value: +{
        +  "description": "WHICH version security_scan_status describes. A pending code-bundle carries its own scan verdict; a declarative pending version has none, so the published verdict is reported and this says so.",
        +  "enum": [
        +    "published_version",
        +    "pending_version"
        +  ],
        +  "type": "string"
        +}
  5. 1 tool update
    • Addedfindagent_new_version
  6. 3 tool updates
    • Addedfindagent_bind_kb_embedding_key
    • Changedfindagent_list_my_agents2 fields changed
      • addedInput schema / properties / scope
        Added value: +{
        +  "description": "Which sense of \"mine\": created (default — agents you authored, editable via the lifecycle tools), acquired (agents you bought or installed, read-only to you), or all.",
        +  "enum": [
        +    "created",
        +    "acquired",
        +    "all"
        +  ],
        +  "type": "string"
        +}
      • addedOutput schema / properties / acquired
        Added value: +{
        +  "items": {
        +    "type": "object"
        +  },
        +  "type": "array"
        +}
    • Addedfindagent_set_agent_state
  7. 3 tool updates
    • Addedfindagent_list_invites
    • Addedfindagent_resend_invite
    • Addedfindagent_revoke_invite
  8. 1 tool update
    • Changedfindagent_reintrospect_mcp1 field changed
      • addedOutput schema / properties / auth_disclosure_changed
        Added value: +{
        +  "type": "boolean"
        +}
  9. 5 tool updates
    • Changedfindagent_add_connector1 field changed
      • addedOutput schema / properties / price_label
        Added value: +{
        +  "type": "string"
        +}
    • Changedfindagent_browse_agents1 field changed
      • addedOutput schema / properties / agents / items / properties / price_label
        Added value: +{
        +  "type": "string"
        +}
    • Changedfindagent_buy_agent1 field changed
      • addedOutput schema / properties / price_label
        Added value: +{
        +  "type": "string"
        +}
    • Changedfindagent_edit_price1 field changed
      • addedOutput schema / properties / price_label
        Added value: +{
        +  "type": "string"
        +}
    • Changedfindagent_get_agent1 field changed
      • addedOutput schema / properties / price_label
        Added value: +{
        +  "type": "string"
        +}
  10. 1 tool update
    • Changedfindagent_create_draft1 field changed
      • changedInput schema / properties / guardrails / description
        Previous value: -"Optional declared guardrails (doer agents). { input?: { max_length?, deny_patterns?:string[], pii_redaction?:string[] }, output?: { schema? }, actions?: { [toolName]: { approval?:\"none\"|\"human\", max_amount?, rate_limit?:\"10/hour\", idempotent? } } }. You can only TIGHTEN — the platform always applies its mandatory rails. An invalid block fails the draft."New value: +"Optional declared guardrails (doer agents). { input?: { max_length?, deny_patterns?:string[], pii_redaction?:string[] }, output?: { schema? }, actions?: { [toolName]: { approval?:\"none\"|\"human\"|\"human_strict\", max_amount?, rate_limit?:\"10/hour\", idempotent?, requires?:string[] } } }. `human` confirms where the client can prompt and proceeds where it cannot; `human_strict` BLOCKS where it cannot — use it for anything irreversible. You can only TIGHTEN — the platform always applies its mandatory rails. An invalid block fails the draft."
  11. 1 tool update
    • Changedfindagent_repull1 field changed
      • addedInput schema / properties / bump
        Added value: +{
        +  "description": "Version bump for this re-version — patch (default), minor (a feature release, e.g. 0.1.x → 0.2.0), or major. Omit for patch.",
        +  "enum": [
        +    "patch",
        +    "minor",
        +    "major"
        +  ],
        +  "type": "string"
        +}
  12. 1 tool update
    • Addedfindagent_skill_search
  13. 52 tool updates
    • First observedfindagent_accept_org_invite
    • First observedfindagent_add_connector
    • First observedfindagent_add_kb_document
    • First observedfindagent_attach_kb
    • First observedfindagent_browse_agents
    • First observedfindagent_bump_version
    • First observedfindagent_buy_agent
    • First observedfindagent_change_member_role
    • First observedfindagent_check_slug
    • First observedfindagent_connect_github
    • First observedfindagent_create_code_draft
    • First observedfindagent_create_draft
    • First observedfindagent_create_knowledge_base
    • First observedfindagent_create_org
    • First observedfindagent_create_remote_mcp
    • First observedfindagent_create_request
    • First observedfindagent_delete_draft
    • First observedfindagent_delete_kb
    • First observedfindagent_delete_kb_document
    • First observedfindagent_detach_kb
    • First observedfindagent_disconnect_github
    • First observedfindagent_earnings
    • First observedfindagent_edit_metadata
    • First observedfindagent_edit_price
    • First observedfindagent_get_agent
    • First observedfindagent_get_org
    • First observedfindagent_import_repo
    • First observedfindagent_invite_member
    • First observedfindagent_leave_org
    • First observedfindagent_list_categories
    • First observedfindagent_list_kb_attachments
    • First observedfindagent_list_kb_documents
    • First observedfindagent_list_kbs
    • First observedfindagent_list_members
    • First observedfindagent_list_my_agents
    • First observedfindagent_list_orgs
    • First observedfindagent_list_repos
    • First observedfindagent_list_requests
    • First observedfindagent_list_tech_facets
    • First observedfindagent_preflight
    • First observedfindagent_reintrospect_mcp
    • First observedfindagent_remove_member
    • First observedfindagent_repull
    • First observedfindagent_rollback_version
    • First observedfindagent_submission_status
    • First observedfindagent_submission_wizard
    • First observedfindagent_submit_for_review
    • First observedfindagent_transfer_org_ownership
    • First observedfindagent_vote_request
    • First observedfindagent_whoami
    • First observedfindagent_withdraw_request
    • First observedfindagent_withdraw_version

Related MCP Connectors

Related MCP Servers

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources