Quick start
Install
Section titled “Install”For all three runtime targets:
pip install 'intpot[all]'Define once
Section titled “Define once”Create app.py:
from intpot import App
app = App("my-app")
@app.tool()def greet(name: str, greeting: str = "Hello") -> str: """Greet someone by name.""" return f"{greeting}, {name}!"The type annotations, defaults, and docstring describe the tool contract. Choose an interface when starting the app:
intpot serve app.py --cliintpot serve app.py --apiintpot serve app.py --mcpFor HTTP mode, Intpot uses FastAPI/Uvicorn (default port 8000). MCP mode exposes tools through FastMCP. CLI mode dispatches the registered functions as commands.
Export standalone code
Section titled “Export standalone code”Use intpot eject app.py --to api, --to cli, or --to mcp to generate ordinary framework code. The generated app is not dependent on the Intpot runtime.
Convert an existing app
Section titled “Convert an existing app”Intpot detects Typer, FastAPI, and FastMCP Python applications and can generate any other target:
intpot to api existing.pyintpot to cli existing.pyintpot to mcp existing.pyUse intpot inspect existing.py to view normalized tool definitions first. See capabilities and boundaries for what conversion preserves.