Skip to main content
Praxa can sit behind an existing agent loop without moving provider credentials or action authority into that loop. Your application supplies a short-lived delegated Praxa token. The Integration Gateway still enforces tenant, scope, consent, purpose, target, budget, idempotency, and revocation checks on the server.
Framework approval prompts are defense in depth. They do not replace Praxa’s server-side authorization, and a tool description never grants action authority.

Create the shared client and tools

createPraxaAgentTools() binds each framework-neutral JSON Schema definition to a PraxaClient method. Keep this client on a trusted server. Do not send the delegated token to browser code.

Vercel AI SDK

Wrap the Praxa definitions with the AI SDK’s tool() helper. Keep framework-level approval enabled for mutations.

OpenAI Responses or Agents

Remote MCP is the smallest integration when your runtime supports it. Require approval for every remote call unless your application has a narrower reviewed policy.
For a function-calling loop, import PRAXA_OPENAI_FUNCTION_TOOLS, then dispatch returned calls to the matching definition from createPraxaAgentTools(praxa).

LangChain

Adapt the same executable definitions with LangChain’s tool() helper:

Codex, Claude Code, Cursor, and VS Code

Run the project installer instead of maintaining client configuration by hand:
Review the generated .praxa/SETUP.md, provide a delegated token through the documented environment seam, restart the client, and list available tools before invoking a mutation. The installer writes no access token or provider key.

Choose the narrowest integration

Use MCP contracts when you need protocol metadata without an executor. Use the PraxaClient reference when you want direct HTTP and SSE control instead of a model-facing tool layer.
Last modified on August 14, 2026