Skip to content

Frameworks

TapPass works with any framework that speaks OpenAI or Anthropic protocol. Most integrations are a single environment variable. The rest are a few lines of code.

Framework Language Method Setup time
OpenAI SDK Python, Node, Go, Ruby, … Env var 30s
Anthropic SDK Python, Node Env var 30s
LangChain Python guard_agent() 2 min
CrewAI Python guard_crew() 2 min
LlamaIndex Python Env var 30s
Pydantic AI Python Env var 30s
Google ADK Python guard_adk_agent() 2 min
FastAPI Python Middleware 3 min
Vercel AI SDK TypeScript Env var 30s
MCP Any MCP server 5 min

Any OpenAI- or Anthropic-compatible tool works without a code change:

Terminal window
# OpenAI-compatible (Cursor, Copilot, LangChain, LlamaIndex, CrewAI, Pydantic AI, …)
export OPENAI_BASE_URL=https://tappass.example.com/v1
export OPENAI_API_KEY=tp_...
# Anthropic-compatible (Claude Code, Cline, Anthropic SDK)
export ANTHROPIC_BASE_URL=https://tappass.example.com
export ANTHROPIC_API_KEY=tp_...
import tappass
from tappass import Agent, AsyncAgent
agent = Agent("https://tappass.example.com", "tp_...")
# Governed chat
response = agent.chat("What are the GDPR requirements?")
# Streaming
for chunk in agent.stream("Write a compliance report"):
print(chunk, end="", flush=True)
# Wrap existing tools (LangChain / CrewAI / LlamaIndex / Pydantic AI tools)
governed_tools = tappass.govern(
[search, send_email, query_db],
url="https://tappass.example.com",
api_key="tp_...",
mode="enforce",
)
# Async
async with AsyncAgent("https://tappass.example.com", "tp_...") as agent:
response = await agent.chat("Analyze the data")
async for chunk in agent.stream("Summarize"):
print(chunk, end="", flush=True)

See the SDK Reference for the full surface.

Working end-to-end examples for every framework live in tappass/tappass-examples.