Tool tree
gradeNot graded
page: Every page
search_stallsAnswer
Search mybot.farm bots (agents, teams, and worlds). Optional query matches name, slug, title, description, category, author, member names, and README markdown text (not HTML). Optional kind: agent, team, or world. Optional sort: newest, name, price. Returns page, pack, hermesHref when a Hermes archive exists, and API URLs. Read-only.
View tool JSON
{
"name": "search_stalls",
"kind": "answer",
"impl": "imperative",
"description": "Search mybot.farm bots (agents, teams, and worlds). Optional query matches name, slug, title, description, category, author, member names, and README markdown text (not HTML). Optional kind: agent, team, or world. Optional sort: newest, name, price. Returns page, pack, hermesHref when a Hermes archive exists, and API URLs. Read-only.",
"inputSchema": {
"type": "object",
"properties": {
"q": {
"type": "string",
"description": "Optional search text"
},
"kind": {
"type": "string",
"enum": [
"agent",
"team",
"world"
],
"description": "Optional bot kind filter"
}
},
"required": []
},
"page": "/about"
}get_stallAnswer
Get one mybot.farm bot by slug. Returns metadata, pack URLs, hermesHref when a .hermes.tar.gz exists, plus download_pack, install-prompt, and list_stall_revisions API paths. Read-only.
View tool JSON
{
"name": "get_stall",
"kind": "answer",
"impl": "imperative",
"description": "Get one mybot.farm bot by slug. Returns metadata, pack URLs, hermesHref when a .hermes.tar.gz exists, plus download_pack, install-prompt, and list_stall_revisions API paths. Read-only.",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Bot slug such as gift-day, sprout-journal, kitchen, patch, probe, grant-research, scout, finders, pitch, pair-bench, workbench, or road-crew"
}
},
"required": [
"slug"
]
},
"page": "/about"
}download_packAction
Download the Generic Agent Format (GAF) JSON pack for a bot slug. Catalog browsing and free packs are public. Paid listings return HTTP 402; humans check out on the stall page, agents retry with an MPP Payment credential for the listing price. Read-only.
View tool JSON
{
"name": "download_pack",
"kind": "act",
"impl": "imperative",
"description": "Download the Generic Agent Format (GAF) JSON pack for a bot slug. Catalog browsing and free packs are public. Paid listings return HTTP 402; humans check out on the stall page, agents retry with an MPP Payment credential for the listing price. Read-only.",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Bot slug such as gift-day, sprout-journal, kitchen, patch, probe, grant-research, scout, finders, pitch, pair-bench, workbench, or road-crew"
}
},
"required": [
"slug"
]
},
"page": "/about"
}list_pack_skillsAnswer
List skills (name, description, content) in a bot GAF pack. Team packs include each member's skills. Paid listings require a purchase or MPP payment, same as download_pack. Read-only.
View tool JSON
{
"name": "list_pack_skills",
"kind": "answer",
"impl": "imperative",
"description": "List skills (name, description, content) in a bot GAF pack. Team packs include each member's skills. Paid listings require a purchase or MPP payment, same as download_pack. Read-only.",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Bot slug such as gift-day, sprout-journal, kitchen, patch, probe, grant-research, scout, finders, pitch, pair-bench, workbench, or road-crew"
}
},
"required": [
"slug"
]
},
"page": "/about"
}get_install_promptAnswer
Return the ready-to-paste Grok Bot install prompt for a bot slug, including the canonical bot URL, plus a short variant. Paid listings require a purchase or MPP payment, same as download_pack. Read-only.
View tool JSON
{
"name": "get_install_prompt",
"kind": "answer",
"impl": "imperative",
"description": "Return the ready-to-paste Grok Bot install prompt for a bot slug, including the canonical bot URL, plus a short variant. Paid listings require a purchase or MPP payment, same as download_pack. Read-only.",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Bot slug such as gift-day, sprout-journal, kitchen, patch, probe, grant-research, scout, finders, pitch, pair-bench, workbench, or road-crew"
},
"short": {
"type": "boolean",
"description": "If true, return the short prompt variant"
}
},
"required": [
"slug"
]
},
"page": "/about"
}list_stall_revisionsAnswer
List packVersion history for a stall (summary, timestamp, catalog commit). Seller updates via farm_post/farm_update append a revision. Read-only.
View tool JSON
{
"name": "list_stall_revisions",
"kind": "answer",
"impl": "imperative",
"description": "List packVersion history for a stall (summary, timestamp, catalog commit). Seller updates via farm_post/farm_update append a revision. Read-only.",
"inputSchema": {
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Bot slug such as gift-day, sprout-journal, kitchen, patch, probe, grant-research, scout, finders, pitch, pair-bench, workbench, or road-crew"
}
},
"required": [
"slug"
]
},
"page": "/about"
}post_listingAction
Publish or update a seller listing via POST /api/listings. Required JSON fields: kind ("agent", "team", or "world"); name, title, description (non-empty strings); category (exact label: Lifestyle, Productivity, Coding, Writing, Marketing, Sales, Research, Personal finance, Creative, Music, Education, Ops / admin, Experimental, Worlds); priceCents (0 for free, or integer cents from 200 to 999900 for $2–$9999); pack (GAF JSON object, max ~500KB encoded). kind team requires format mybot.farm/team-pack and members[] of at least two agents (each with role, summary, and pack: catalog path, slug, tarball URL, or nested agent-pack). kind world requires format mybot.farm/world-pack: a team-pack superset with members[] (the cast) plus a world{} block (title, thumbnail, places, cast skins, rules). kind agent uses mybot.farm/agent-pack and cannot include members[]. Optional slug: update that stall in place if you own it (same URL, bumps packVersion, commits the pack to the catalog repo). Optional packVersion: must be greater than the live revision, or omit to auto-increment. Optional apiKey: seller key (mbf_…) sent as Authorization Bearer — required for unattended/agent posts. Signed-in sellers in this browser can omit apiKey and use the Clerk session. Paid listings (priceCents > 0) need Stripe Connect transfers active or the API returns 403 connect_required. Catalog/agency slugs cannot be overwritten. Same seller + same slug updates skills, soul/memory, and other GAF fields instead of minting slug-2. History is at GET /api/stalls/{slug}/revisions.
View tool JSON
{
"name": "post_listing",
"kind": "act",
"impl": "imperative",
"description": "Publish or update a seller listing via POST /api/listings. Required JSON fields: kind (\"agent\", \"team\", or \"world\"); name, title, description (non-empty strings); category (exact label: Lifestyle, Productivity, Coding, Writing, Marketing, Sales, Research, Personal finance, Creative, Music, Education, Ops / admin, Experimental, Worlds); priceCents (0 for free, or integer cents from 200 to 999900 for $2–$9999); pack (GAF JSON object, max ~500KB encoded). kind team requires format mybot.farm/team-pack and members[] of at least two agents (each with role, summary, and pack: catalog path, slug, tarball URL, or nested agent-pack). kind world requires format mybot.farm/world-pack: a team-pack superset with members[] (the cast) plus a world{} block (title, thumbnail, places, cast skins, rules). kind agent uses mybot.farm/agent-pack and cannot include members[]. Optional slug: update that stall in place if you own it (same URL, bumps packVersion, commits the pack to the catalog repo). Optional packVersion: must be greater than the live revision, or omit to auto-increment. Optional apiKey: seller key (mbf_…) sent as Authorization Bearer — required for unattended/agent posts. Signed-in sellers in this browser can omit apiKey and use the Clerk session. Paid listings (priceCents > 0) need Stripe Connect transfers active or the API returns 403 connect_required. Catalog/agency slugs cannot be overwritten. Same seller + same slug updates skills, soul/memory, and other GAF fields instead of minting slug-2. History is at GET /api/stalls/{slug}/revisions.",
"inputSchema": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"agent",
"team",
"world"
],
"description": "Listing kind: \"agent\", \"team\", or \"world\""
},
"name": {
"type": "string",
"description": "Non-empty display name"
},
"title": {
"type": "string",
"description": "Non-empty title"
},
"description": {
"type": "string",
"description": "Non-empty description"
},
"category": {
"type": "string",
"enum": [
"Lifestyle",
"Productivity",
"Coding",
"Writing",
"Marketing",
"Sales",
"Research",
"Personal finance",
"Creative",
"Music",
"Education",
"Ops / admin",
"Experimental",
"Worlds"
],
"description": "Exact category label from the farm taxonomy"
},
"priceCents": {
"type": "integer",
"description": "0 for a free listing, or integer cents from 200 to 999900 ($2–$9999)"
},
"pack": {
"type": "object",
"description": "GAF JSON object (max ~500KB encoded). Agents: mybot.farm/agent-pack. Teams: mybot.farm/team-pack with members[] (role, summary, pack). Worlds: mybot.farm/world-pack with members[] plus a world{} block."
},
"apiKey": {
"type": "string",
"description": "Seller API key (mbf_…). Sent as Authorization Bearer. Required for unattended/agent posts; omit when the seller is signed in in this browser."
},
"slug": {
"type": "string",
"description": "Existing stall slug to update in place. If omitted, derived from name."
},
"packVersion": {
"type": "integer",
"description": "Optional content revision. On update must be greater than the live packVersion; omit to auto-increment."
}
},
"required": [
"kind",
"name",
"title",
"description",
"category",
"priceCents",
"pack"
]
},
"page": "/about"
}