{
 "protocolVersion": "0.3.0",
 "name": "Toolwork",
 "description": "Agent-first index of AI tools: search by job, transparent scores, auth/side-effect facts, health checks, change alerts.",
 "url": "https://mcp.toolwork.org/mcp",
 "preferredTransport": "JSONRPC",
 "version": "0.2.0",
 "provider": {
  "organization": "Toolwork",
  "url": "https://toolwork.org"
 },
 "capabilities": {
  "streaming": false,
  "pushNotifications": false
 },
 "defaultInputModes": [
  "application/json"
 ],
 "defaultOutputModes": [
  "application/json"
 ],
 "skills": [
  {
   "id": "search_tools",
   "name": "search_tools",
   "description": "Call this FIRST when you need a tool, API, SDK, CLI or MCP server for a task you can't do yet: describe the task in plain words (job) and get one best_pick with a paste-ready use_it snippet (MCP client config JSON, install command, or API base URL + docs). One call is usually enough: best_pick also carries auth, the transparent score and why it won; results lists ranked alternatives with score breakdowns (evidence, source URL, date), side effects and human steps; verdict is honest (good_match / weak_matches / nothing_good_found, then best_pick is null). Free, no key. Returns a top-level report_token for optional feedback.",
   "tags": [
    "discovery",
    "tools",
    "mcp"
   ]
  },
  {
   "id": "get_tool",
   "name": "get_tool",
   "description": "Full Agent Tool Card for one ID (usually not needed: search_tools already returns best_pick.use_it to set it up). Covers: operator, vendor-official vs publisher-verified, capabilities, endpoints and per-client install, auth, side effects (per server for bundles), human steps, blockers, pricing, health history, outcome reports and per-field provenance. Unknown IDs return isError with error_code not_found.",
   "tags": [
    "discovery",
    "tools",
    "mcp"
   ]
  },
  {
   "id": "resolve_tool",
   "name": "resolve_tool",
   "description": "Use when you already know a tool's URL (remote endpoint, website, docs), GitHub repo, package (npm:/pypi:/oci: or bare name) or registry name and need its Toolwork ID; returns IDs, not a setup snippet. To find what to use for a task, call search_tools instead. ID scheme: mcp:<registry name>, mcp:docker/<key>, api:<apis.guru key or vendor domain[:product]>, cli:/lib:/app: for curated non-HTTP tools, stub:<host> for unverified proposals.",
   "tags": [
    "discovery",
    "tools",
    "mcp"
   ]
  },
  {
   "id": "compare_tools",
   "name": "compare_tools",
   "description": "Compare 2-5 tools (IDs from search_tools) side by side for a job: best pick now and why, transparent scores, and the tradeoffs that differ (auth, side effects, health, official, human steps).",
   "tags": [
    "discovery",
    "tools",
    "mcp"
   ]
  },
  {
   "id": "get_playbook",
   "name": "get_playbook",
   "description": "What agents of a given type typically need at a lifecycle stage, with recommended categories, known blockers and live top picks.",
   "tags": [
    "discovery",
    "tools",
    "mcp"
   ]
  },
  {
   "id": "check_stack",
   "name": "check_stack",
   "description": "Health, risks and better alternatives for the tools your agent currently uses.",
   "tags": [
    "discovery",
    "tools",
    "mcp"
   ]
  }
 ],
 "additionalInterfaces": [
  {
   "url": "https://mcp.toolwork.org/mcp",
   "transport": "MCP-StreamableHTTP"
  },
  {
   "url": "https://toolwork.org/mcp",
   "transport": "MCP-StreamableHTTP"
  },
  {
   "url": "https://api.toolwork.org",
   "transport": "HTTP+JSON"
  }
 ]
}