Skip to content

Platools - Your AI Arsenal

Platools is the open-source SDK for Platos, a managed agent platform. One decorator turns any backend function into an authenticated, monitored, MCP-compliant tool that an agent can call.

Stripe for AI tool calling. FastMCP is Flask; Platools is Heroku.

from platools import Platools
platools = Platools()
@platools.tool(auth="user", roles=["support"])
def process_refund(order_id: str, reason: str) -> RefundResult:
"""Process a refund for an order."""
return refund_service.process(order_id, reason)

Two products, one repo

  1. Platools SDK - Python (platools) and TypeScript (@platools/sdk) libraries. Decorate a function, get a typed MCP tool.
  2. Platos Platform - FastAPI backend + Next.js dashboard. Agent runtime, MCP gateway, memory layer, orchestration, monitoring. Ships as one docker compose up.

What the SDK gives you

  • Type-safe schemas. Pydantic (Python) or Zod (TypeScript) types are auto-converted to JSON Schema. No hand-written schema, no drift between your function and the MCP tool descriptor.
  • Auth + roles baked in. Every tool declares auth="none" | "user" | "admin" and an optional roles allowlist. The platform enforces them before your function runs.
  • Outbound-only transport. Your backend opens a WebSocket out to Platos. No open ports, no inbound holes in your network.
  • Doctor + test CLI. platools doctor statically analyzes your tool graph for unreachable params, type mismatches, permission gaps, and ambiguous outputs. platools test runs YAML-defined smoke tests with p50/p95 latency.
  • Local MCP mode. platools serve exposes the same tool registry over stdio or HTTP for Claude Desktop, Cursor, and other local MCP clients, with no platform round-trip.

What you’ll find here

Next steps

New here? Start with the Getting Started quickstart. Already have the SDK installed? Jump to the Python SDK or TypeScript SDK reference.