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.

KI-Toolkit erweitern

Überblick

Das Extend AI Toolkit bietet eine Python-basierte Implementierung von Tools zur Integration mit Extend-APIs für verschiedene KI-Frameworks, darunter Anthropics Model Context Protocol (MCP) , OpenAI , LangChain und CrewAI . Es ermöglicht Benutzern, bestimmte Aktionen im Ausgabenmanagement-Flow an KI-Agenten oder MCP-kompatible Clients wie Claude Desktop zu delegieren.

Diese Tools richten sich an bestehende Extend-Nutzer mit API-Schlüsseln. Wenn Sie noch nicht bei Extend registriert sind und mehr über unsere moderne, benutzerfreundliche Plattform für virtuelle Karten und Ausgabenmanagement für kleine und mittlere Unternehmen erfahren möchten, besuchen Sie uns unter paywithextend.com .

Merkmale

  • Unterstützung mehrerer KI-Frameworks : Funktioniert mit Anthropic Model Context Protocol, OpenAI Agents, LangChain LangGraph & ReAct und CrewAI-Frameworks
  • Umfassendes Tool-Set : Unterstützt alle wichtigen API-Funktionen von Extend, einschließlich unserer Endpunkte für Kreditkarten, virtuelle Karten, Transaktionen und Kostenmanagement

Installation

Sie benötigen diesen Quellcode nur, wenn Sie das Paket ändern möchten. Wenn Sie das Paket einfach verwenden möchten, führen Sie Folgendes aus:

pip install extend_ai_toolkit

Anforderungen

  • Python : Version 3.10 oder höher
  • API-Schlüssel erweitern : Melden Sie sich bei paywithextend.com an, um einen API-Schlüssel zu erhalten
  • Frameworkspezifische Anforderungen :
    • LangChain: langchain und langchain-openai -Pakete
    • OpenAI: openai -Paket
    • CrewAI: crewai -Paket
    • Anthropisch: anthropic Paket (für Claude)

Konfiguration

Die Bibliothek muss mit Ihrem Extend-API-Schlüssel und Ihrer API konfiguriert werden, entweder über Umgebungsvariablen oder Befehlszeilenargumente:

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

oder über Umgebungsvariablen:

EXTEND_API_KEY=your_api_key_here EXTEND_API_SECRET=your_api_secret_here

Verfügbare Tools

Das Toolkit bietet einen umfassenden Satz von Tools, die nach Funktionalität geordnet sind:

Virtuelle Karten

  • get_virtual_cards : Virtuelle Karten mit optionalen Filtern abrufen
  • get_virtual_card_detail : Erhalten Sie detaillierte Informationen zu einer bestimmten virtuellen Karte

Kreditkarten

  • get_credit_cards : Listet alle Kreditkarten auf
  • get_credit_card_detail : Erhalten Sie detaillierte Informationen zu einer bestimmten Kreditkarte

Transaktionen

  • get_transactions : Transaktionen mit verschiedenen Filtern abrufen
  • get_transaction_detail : Erhalten Sie detaillierte Informationen zu einer bestimmten Transaktion
  • update_transaction_expense_data : Aktualisieren Sie die kostenbezogenen Daten für eine Transaktion

Kostenmanagement

  • get_expense_categories : Listet alle Ausgabenkategorien auf
  • get_expense_category : Details zu einer bestimmten Ausgabenkategorie abrufen
  • get_expense_category_labels : Etiketten für eine Ausgabenkategorie abrufen
  • create_expense_category : Erstellen Sie eine neue Ausgabenkategorie
  • create_expense_category_label : Fügen Sie einer Ausgabenkategorie ein Label hinzu
  • update_expense_category : Eine bestehende Ausgabenkategorie ändern
  • create_receipt_attachment : Laden Sie eine Quittung hoch (und hängen Sie sie optional an eine Transaktion an)
  • automatch_receipts : Asynchronen Job starten, um hochgeladene Quittungen automatisch Transaktionen zuzuordnen
  • get_automatch_status : Ruft den Status eines Automatch-Jobs ab
  • send_receipt_reminder : Senden Sie eine Erinnerung (per E-Mail) für eine Transaktion, für die eine Quittung fehlt

Anwendungsbeispiele

Modellkontextprotokoll

Das Toolkit stellt Ressourcen im Paket extend_ai_toolkit.modelcontextprotocol bereit, die Sie beim Erstellen eines MCP-Servers unterstützen.

Entwicklung

Testen Sie den Extend MCP-Server lokal mit MCP Inspector:

npx @modelcontextprotocol/inspector python extend_ai_toolkit/modelcontextprotocol/main.py --tools=all
Claude Desktop Integration

Fügen Sie dieses Tool als MCP-Server zu Claude Desktop hinzu, indem Sie die Konfigurationsdatei bearbeiten:

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

Wenn Sie das Tool „create_receipt_attachment“ mit Claude Desktop verwenden möchten, müssen Sie den MCP-Server des Dateisystems über npm install @modelcontextprotocol/server-filesystem add“ installieren und ihn dann auch zur Konfigurationsdatei hinzufügen.

Bitte beachten Sie: Aufgrund aktueller Einschränkungen können Bilder, die direkt auf den Claude Desktop hochgeladen wurden, nicht in Extend hochgeladen werden, da die Claude Desktop-App keinen Zugriff auf die zugrunde liegenden Bilddaten hat. Daher ist der Filesystem MCP Server erforderlich.

Mit dem zusätzlichen Dateisystem können Sie einen eigenen Ordner für Belege einrichten und Claude anweisen, den Beleg hochzuladen und ihn automatisch der wahrscheinlichsten Transaktion zuzuordnen. Alternativ können Sie Claude anweisen, den Beleg für diese Transaktion hochzuladen (und den automatischen Zuordnungsprozess überspringen), wenn Sie die Transaktion kennen, der Sie den Beleg anhängen möchten.

{ "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" ] } }
Remote-Ausführung

Sie können Ihren Server auch remote ausführen und über SSE-Transport kommunizieren:

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

und optional eine Verbindung über den MCP-Terminalclient herstellen:

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()

Beitragen

Beiträge sind willkommen! Senden Sie gerne einen Pull Request.

Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE.

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

Ein MCP-Server, der es KI-Agenten ermöglicht, mit den Ausgabenverwaltungs-APIs von Extend zu interagieren und so die virtuelle Kartenverwaltung, Transaktionsverfolgung und Belegverarbeitung in natürlicher Sprache zu ermöglichen.

  1. Überblick
    1. Merkmale
      1. Installation
        1. Anforderungen
      2. Konfiguration
        1. Verfügbare Tools
          1. Virtuelle Karten
          2. Kreditkarten
          3. Transaktionen
          4. Kostenmanagement
        2. Anwendungsbeispiele
          1. Modellkontextprotokoll
          2. OpenAI
          3. LangChain
          4. CrewAI
        3. Beitragen
          1. Lizenz

            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