Extend AI Toolkit MCP Server

MIT License
15
  • Apple
Integrations
  • Enables CrewAI agents to interact with Extend's platform for managing virtual cards, viewing credit cards, and checking transactions.

  • Offers toolkit integration with LangChain, supporting virtual card and spend management functionalities through Extend's API endpoints.

  • Provides tools for OpenAI's frameworks to interact with Extend APIs, enabling agents to manage virtual cards, credit cards, and transactions.

Ampliar el kit de herramientas de IA

Descripción general

El kit de herramientas de Extend AI proporciona una implementación de herramientas basada en Python para la integración con las API de Extend para múltiples marcos de IA, como el Protocolo de Contexto de Modelo (MCP) de Anthropic, OpenAI , LangChain y CrewAI . Permite a los usuarios delegar ciertas acciones en el flujo de gestión de gastos a agentes de IA o clientes compatibles con MCP, como Claude Desktop.

Estas herramientas están diseñadas para usuarios de Extend con claves API. Si aún no está registrado en Extend y desea obtener más información sobre nuestra plataforma de gestión de tarjetas y gastos virtuales, moderna y fácil de usar, para pequeñas y medianas empresas, puede visitar paywithextend.com .

Características

  • Compatibilidad con múltiples marcos de IA : funciona con el protocolo de contexto de modelo antrópico, agentes OpenAI, LangChain LangGraph y ReAct, y marcos CrewAI
  • Conjunto de herramientas integral : compatible con todas las principales funcionalidades de API de Extend, que abarcan nuestros puntos finales de gestión de tarjetas de crédito, tarjetas virtuales, transacciones y gastos.

Instalación

No necesitas este código fuente a menos que quieras modificar el paquete. Si solo quieres usarlo, ejecuta:

pip install extend_ai_toolkit

Requisitos

  • Python : versión 3.10 o superior
  • Ampliar clave API : Regístrese en paywithextend.com para obtener una clave API
  • Requisitos específicos del marco :
    • LangChain: paquetes langchain y langchain-openai
    • OpenAI: paquete openai
    • CrewAI: paquete de crewai
    • Antrópico: paquete anthropic (para Claude)

Configuración

La biblioteca debe configurarse con su clave API Extend y API, ya sea a través de variables de entorno o argumentos de línea de comando:

--api-key=your_api_key_here --api-secret=your_api_secret_here

o mediante variables de entorno:

EXTEND_API_KEY=your_api_key_here EXTEND_API_SECRET=your_api_secret_here

Herramientas disponibles

El kit de herramientas proporciona un conjunto completo de herramientas organizadas por funcionalidad:

Tarjetas virtuales

  • get_virtual_cards : Obtener tarjetas virtuales con filtros opcionales
  • get_virtual_card_detail : Obtenga información detallada sobre una tarjeta virtual específica

Tarjetas de crédito

  • get_credit_cards : Lista todas las tarjetas de crédito
  • get_credit_card_detail : Obtenga información detallada sobre una tarjeta de crédito específica

Actas

  • get_transactions : Obtener transacciones con varios filtros
  • get_transaction_detail : Obtener información detallada sobre una transacción específica
  • update_transaction_expense_data : Actualizar los datos relacionados con los gastos de una transacción

Gestión de gastos

  • get_expense_categories : Lista todas las categorías de gastos
  • get_expense_category : Obtener detalles de una categoría de gasto específica
  • get_expense_category_labels : Obtener etiquetas para una categoría de gasto
  • create_expense_category : Crea una nueva categoría de gastos
  • create_expense_category_label : Agregar una etiqueta a una categoría de gasto
  • update_expense_category : Modificar una categoría de gasto existente
  • create_receipt_attachment : Cargar un recibo (y, opcionalmente, adjuntarlo a una transacción)
  • automatch_receipts : Iniciar un trabajo asincrónico para hacer coincidir automáticamente los recibos cargados con las transacciones
  • get_automatch_status : Obtener el estado de un trabajo de coincidencia automática
  • send_receipt_reminder : envía un recordatorio (por correo electrónico) para una transacción que no tiene recibo

Ejemplos de uso

Protocolo de contexto modelo

El kit de herramientas proporciona recursos en el paquete extend_ai_toolkit.modelcontextprotocol para ayudarlo a construir un servidor MCP.

Desarrollo

Pruebe extender el servidor MCP localmente usando MCP Inspector:

npx @modelcontextprotocol/inspector python extend_ai_toolkit/modelcontextprotocol/main.py --tools=all
Integración de escritorio de Claude

Agregue esta herramienta como un servidor MCP a Claude Desktop editando el archivo de configuración:

En MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json En Windows: %APPDATA%/Claude/claude_desktop_config.json

Si desea utilizar la herramienta create_receipt_attachment con Claude Desktop, deberá instalar el servidor mcp del sistema de archivos a través de npm install @modelcontextprotocol/server-filesystem add y luego agregarlo también al archivo de configuración.

Nota: Debido a las limitaciones actuales, las imágenes cargadas directamente en Claude Desktop no se pueden cargar en Extend, ya que la aplicación Claude Desktop no tiene acceso a los datos de la imagen subyacente. Por ello, es necesario el servidor MCP del sistema de archivos .

Con la incorporación del Sistema de Archivos, puede configurar una carpeta dedicada para recibos e indicarle a Claude que los cargue y los asocie automáticamente con la transacción más probable. Alternativamente, si conoce la transacción a la que desea adjuntar el recibo, puede indicarle a Claude que los cargue para esa transacción (y omitir el proceso de asociación automática).

{ "extend-mcp": { "command": "python", "args": [ "-m", "extend_ai_toolkit.modelcontextprotocol.main", "--tools=all" ], "env": { "EXTEND_API_KEY": "apik_XXXX", "EXTEND_API_SECRET": "XXXXX" } }, // optional: if you want to use the create_receipt_attachment tool "filesystem": { "command": "npx", "args": [ "-y", "@modelcontextprotocol/server-filesystem", "/path/to/receipts/folder" ] } }
Ejecución remota

También puede ejecutar su servidor de forma remota y comunicarse a través del transporte SSE:

python -m extend_ai_toolkit.modelcontextprotocol.main_sse --tools=all --api-key="apikey" --api-secret="apisecret"

y opcionalmente conectarse usando el cliente de terminal MCP:

python -m extend_ai_toolkit.modelcontextprotocol.client.mcp_client --mcp-server-host localhost --mcp-server-port 8000 --llm-provider=anthropic --llm-model=claude-3-5-sonnet-20241022

OpenAI

import os from langchain_openai import ChatOpenAI from extend_ai_toolkit.openai.toolkit import ExtendOpenAIToolkit from extend_ai_toolkit.shared import Configuration, Scope, Product, Actions # Initialize the OpenAI toolkit extend_openai_toolkit = ExtendOpenAIToolkit.default_instance( api_key=os.environ.get("EXTEND_API_KEY"), api_secret=os.environ.get("EXTEND_API_SECRET"), configuration=Configuration( scope=[ Scope(Product.VIRTUAL_CARDS, actions=Actions(read=True)), Scope(Product.CREDIT_CARDS, actions=Actions(read=True)), Scope(Product.TRANSACTIONS, actions=Actions(read=True)), ] ) ) # Create an agent with the tools extend_agent = Agent( name="Extend Agent", instructions="You are an expert at integrating with Extend", tools=extend_openai_toolkit.get_tools() )

LangChain

import os from langchain_openai import ChatOpenAI from langgraph.prebuilt import create_react_agent from extend_ai_toolkit.langchain.toolkit import ExtendLangChainToolkit from extend_ai_toolkit.shared import Configuration, Scope, Product, Actions # Initialize the LangChain toolkit extend_langchain_toolkit = ExtendLangChainToolkit.default_instance( api_key=os.environ.get("EXTEND_API_KEY"), api_secret=os.environ.get("EXTEND_API_SECRET"), configuration=Configuration( scope=[ Scope(Product.VIRTUAL_CARDS, actions=Actions(read=True)), Scope(Product.CREDIT_CARDS, actions=Actions(read=True)), Scope(Product.TRANSACTIONS, actions=Actions(read=True)), ] ) ) # Create tools for the agent tools = extend_langchain_toolkit.get_tools() # Create the agent executor langgraph_agent_executor = create_react_agent( ChatOpenAI(model="gpt-4"), tools )

CrewAI

import os from extend_ai_toolkit.crewai.toolkit import ExtendCrewAIToolkit from extend_ai_toolkit.shared import Configuration, Scope, Product, Actions # Initialize the CrewAI toolkit toolkit = ExtendCrewAIToolkit.default_instance( api_key=os.environ.get("EXTEND_API_KEY"), api_secret=os.environ.get("EXTEND_API_SECRET"), configuration=Configuration( scope=[ Scope(Product.VIRTUAL_CARDS, actions=Actions(read=True)), Scope(Product.CREDIT_CARDS, actions=Actions(read=True)), Scope(Product.TRANSACTIONS, actions=Actions(read=True)), ] ) ) # Configure the LLM (using Claude) toolkit.configure_llm( model="claude-3-opus-20240229", api_key=os.environ.get("ANTHROPIC_API_KEY") ) # Create the Extend agent extend_agent = toolkit.create_agent( role="Extend Integration Expert", goal="Help users manage virtual cards, view credit cards, and check transactions efficiently", backstory="You are an expert at integrating with Extend, with deep knowledge of virtual cards, credit cards, and transaction management.", verbose=True ) # Create a task for handling user queries query_task = toolkit.create_task( description="Process and respond to user queries about Extend services", agent=extend_agent, expected_output="A clear and helpful response addressing the user's query", async_execution=True ) # Create a crew with the agent and task crew = toolkit.create_crew( agents=[extend_agent], tasks=[query_task], verbose=True ) # Run the crew result = crew.kickoff()

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

-
security - not tested
A
license - permissive license
-
quality - not tested

Un servidor MCP que permite a los agentes de IA interactuar con las API de gestión de gastos de Extend, lo que permite la gestión de tarjetas virtuales, el seguimiento de transacciones y el procesamiento de recibos a través del lenguaje natural.

  1. Descripción general
    1. Características
      1. Instalación
        1. Requisitos
      2. Configuración
        1. Herramientas disponibles
          1. Tarjetas virtuales
          2. Tarjetas de crédito
          3. Actas
          4. Gestión de gastos
        2. Ejemplos de uso
          1. Protocolo de contexto modelo
          2. OpenAI
          3. LangChain
          4. CrewAI
        3. Contribuyendo
          1. Licencia

            Related MCP Servers

            • A
              security
              A
              license
              A
              quality
              An MCP server that lets AI assistants interact with your Lunchmoney data, enabling natural language queries about transactions, budgets, and spending patterns.
              Last updated -
              4
              3
              8
              TypeScript
              MIT License
            • -
              security
              A
              license
              -
              quality
              An MCP server that helps AI assistants manage expense-sharing for social events, enabling the creation of gatherings, tracking of expenses, and calculation of fair reimbursements among participants.
              Last updated -
              Python
              Apache 2.0
            • A
              security
              F
              license
              A
              quality
              An MCP server that integrates with Fewsats allowing AI agents to securely purchase anything by retrieving balances, accessing payment methods, and processing payments.
              Last updated -
              4
              11
              Python
            • -
              security
              -
              license
              -
              quality
              A specialized MCP server that enables AI agents to interact with Reddit, including reading posts, creating content, and managing subreddit configurations.
              Last updated -
              31
              1
              TypeScript

            View all related MCP servers

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/paywithextend/extend-ai-toolkit'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server