Stripe Agent Toolkit
Stripe Agent Toolkit permite a los marcos de agentes más populares, incluyendo OpenAI's Agent SDK, LangChain, CrewAI, Vercel's AI SDK y Model Context Protocol (MCP), integrarse con las APIs de Stripe a través de llamadas a funciones. La librería no es exhaustiva de toda la API de Stripe. Incluye soporte para Python y TypeScript y está construida directamente sobre los SDKs de Stripe Python y Node.
A continuación se incluyen instrucciones básicas, pero consulte los paquetes Python y TypeScript para obtener más información.
Python
Instalación
No necesitas este código fuente a menos que quieras modificar el paquete. Si sólo quieres usar el paquete ejecuta
pip install stripe-agent-toolkit
Requisitos
- Python 3.11+
Uso
La librería necesita ser configurada con la clave secreta de tu cuenta que está disponible en tu Stripe Dashboard.
from stripe_agent_toolkit.openai.toolkit import StripeAgentToolkit stripe_agent_toolkit = StripeAgentToolkit( secret_key="sk_test_...", configuration={ "actions": { "payment_links": { "create": True, }, } }, )
El kit de herramientas funciona con el SDK de agente de OpenAI, LangChain y CrewAI y se puede pasar como una lista de herramientas. Por ejemplo
from agentes import Agente stripe_agent = Agente( name="Agente Stripe", instructions="Eres un experto en integración con Stripe", tools=stripe_agent_toolkit.get_tools() )
En /examples se incluyen ejemplos para el SDK de agente de OpenAI,LangChain y CrewAI.
Contexto
En algunos casos querrás proporcionar valores que sirvan como predeterminados al realizar peticiones. Actualmente, el valor de contexto de cuenta
le permite realizar llamadas a la API para sus cuentas conectadas.
stripe_agent_toolkit = StripeAgentToolkit( secret_key="sk_test_...", configuration={ "contexto": { "account": "acct_123" } } )
TypeScript
Instalación
No necesitas este código fuente a menos que quieras modificar el paquete. Si sólo quieres usar el paquete ejecuta
npm install @stripe/agent-toolkit
Requisitos
- Nodo 18+
Uso
La librería necesita ser configurada con la clave secreta de tu cuenta que está disponible en tu Stripe Dashboard. Además, la configuración
le permite especificar los tipos de acciones que se pueden realizar utilizando el kit de herramientas.
import { StripeAgentToolkit } from "@stripe/agent-toolkit/langchain"; const stripeAgentToolkit = new StripeAgentToolkit({ secretKey: process.env.STRIPE_SECRET_KEY!, configuration: { actions: { paymentLinks: { create: true, }, }, })
Herramientas
El kit de herramientas funciona con LangChain y Vercel's AI SDK y puede pasarse como una lista de herramientas. Por ejemplo
import { AgentExecutor, createStructuredChatAgent } from "langchain/agents"; const tools = stripeAgentToolkit.getTools(); const agent = await createStructuredChatAgent({ llm, tools, prompt, }); const agentExecutor = new AgentExecutor({ agent, tools, })
Contexto
En algunos casos querrás proporcionar valores que sirvan como predeterminados al realizar peticiones. Actualmente, el valor de contexto de cuenta
le permite realizar llamadas a la API para sus cuentas conectadas.
const stripeAgentToolkit = new StripeAgentToolkit({ secretKey: process.env.STRIPE_SECRET_KEY!, configuration: { context: { cuenta: "acct_123", }, }, })
Facturación con contador
Para el SDK AI de Vercel, puede utilizar middleware para enviar eventos de facturación por uso. Todo lo que se requiere es el ID del cliente y los contadores de entrada/salida a facturar.
import { StripeAgentToolkit } from "@stripe/agent-toolkit/ai-sdk"; import { openai } from "@ai-sdk/openai"; import { generateText, experimental_wrapLanguageModel as wrapLanguageModel, } from "ai"; const stripeAgentToolkit = new StripeAgentToolkit({ secretKey: process.env.STRIPE_SECRET_KEY!, configuration: { actions: { paymentLinks: { create: true, }, }, }, }); const model = wrapLanguageModel({ model: openai("gpt-4o"), middleware: stripeAgentToolkit.middleware({ billing: { cliente: "cus_123", contadores: { entrada: "input_tokens", output: "output_tokens", }, }, }), })
Protocolo de contexto de modelo
Stripe aloja un servidor MCP remoto en https://mcp.stripe.com.
Consulte la documentación aquí.
El Stripe Agent Toolkit también soporta el Protocolo de Contexto de Modelo (MCP). Para ejecutar un servidor local MCP de Stripe utilizando npx, utilice el siguiente comando:
npx -y @stripe/mcp --tools=all --api-key=TU_STRIPE_SECRET_KEY
Sustituye YOUR_STRIPE_SECRET_KEY
por tu clave secreta de Stripe. También puedes establecer STRIPE_SECRET_KEY en tus variables de entorno.
Alternativamente, puedes configurar tu propio servidor MCP. Por ejemplo
import { StripeAgentToolkit } from "@stripe/agent-toolkit/modelcontextprotocol"; import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js"; const server = new StripeAgentToolkit({ secretKey: process.env.STRIPE_SECRET_KEY!, configuration: { actions: { paymentLinks: { crear: true, }, productos: { create: true, }, prices: { create: true, }, }, }, }); async function main() { const transport = new StdioServerTransport(); await server.connect(transport); console.error("Servidor MCP de Stripe ejecutándose en stdio"); } main().catch((error) => { console.error("Error fatal en main():", error); process.exit(1); })
Métodos de la API admitidos
- Cancelar una suscripción
- Crear un cupón
- Crear un cliente
- Crear un enlace de pago
- Crear un precio
- Crear un producto
- Crear un reembolso
- Crear una partida de factura
- Crear una factura
- Finalizar una factura
- Listar todos los cupones
- Listar todos los clientes
- Listar todos los litigios
- Listar todos los precios
- Listar todos los productos
- Listar todas las suscripciones
- Recuperar el saldo
- Actualizar un litigio
- Actualizar una suscripción