Extend AI Toolkit MCP Server
OfficialРасширение инструментария ИИ
Обзор
Extend AI Toolkit предоставляет реализацию инструментов на основе Python для интеграции с API Extend для нескольких фреймворков AI, включая Anthropic Model Context Protocol (MCP) , OpenAI , LangChain и CrewAI . Он позволяет пользователям делегировать определенные действия в потоке управления расходами агентам AI или MCP-совместимым клиентам, таким как Claude Desktop.
Эти инструменты предназначены для существующих пользователей Extend с ключами API. Если вы не зарегистрированы в Extend и хотите узнать больше о нашей современной, простой в использовании виртуальной карте и платформе управления расходами для малого и среднего бизнеса, вы можете проверить нас на paywithextend.com .
Related MCP server: Interswitch MCP Server
Функции
Поддержка нескольких фреймворков ИИ : работает с протоколом контекста антропной модели, агентами OpenAI, LangChain LangGraph и ReAct, а также фреймворками CrewAI
Комплексный набор инструментов : поддерживает все основные функции API Extend, охватывающие наши конечные точки управления кредитными картами, виртуальными картами, транзакциями и расходами.
Установка
Вам не нужен этот исходный код, если вы не хотите изменить пакет. Если вы просто хотите использовать пакет, выполните:
pip install extend_ai_toolkitТребования
Python : версия 3.10 или выше
Продлить ключ API : зарегистрируйтесь на paywithextend.com , чтобы получить ключ API
Требования, специфичные для фреймворка :
LangChain: пакеты
langchainиlangchain-openaiOpenAI: пакет
openaiCrewAI: пакет
crewaiAnthropic: пакет
anthropic(для Клода)
Конфигурация
Библиотеку необходимо настроить с помощью ключа Extend API и API, используя переменные среды или аргументы командной строки:
--api-key=your_api_key_here --api-secret=your_api_secret_here или через переменные среды:
EXTEND_API_KEY=your_api_key_here
EXTEND_API_SECRET=your_api_secret_hereДоступные инструменты
Инструментарий предоставляет полный набор инструментов, организованных по функциональности:
Виртуальные карты
get_virtual_cards: Извлечение виртуальных карт с дополнительными фильтрамиget_virtual_card_detail: Получить подробную информацию о конкретной виртуальной карте
Кредитные карты
get_credit_cards: Список всех кредитных картget_credit_card_detail: Получить подробную информацию о конкретной кредитной карте
Транзакции
get_transactions: Извлечение транзакций с различными фильтрамиget_transaction_detail: Получить подробную информацию о конкретной транзакцииupdate_transaction_expense_data: обновление данных, связанных с расходами для транзакции
Управление расходами
get_expense_categories: Список всех категорий расходовget_expense_category: Получить сведения о конкретной категории расходовget_expense_category_labels: Получить метки для категории расходовcreate_expense_category: Создать новую категорию расходовcreate_expense_category_label: Добавить метку к категории расходовupdate_expense_category: Изменить существующую категорию расходовcreate_receipt_attachment: загрузить квитанцию (и при желании прикрепить к транзакции)automatch_receipts: Инициировать асинхронное задание для автоматического сопоставления загруженных квитанций с транзакциямиget_automatch_status: Получить статус задания автосоответствияsend_receipt_reminder: Отправить напоминание (по электронной почте) о транзакции, для которой отсутствует чек
Примеры использования
Модель контекстного протокола
Набор инструментов предоставляет ресурсы в пакете extend_ai_toolkit.modelcontextprotocol , которые помогут вам создать сервер MCP.
Разработка
Протестируйте сервер Extend MCP локально с помощью MCP Inspector:
npx @modelcontextprotocol/inspector python extend_ai_toolkit/modelcontextprotocol/main.py --tools=allИнтеграция рабочего стола Клода
Добавьте этот инструмент в качестве сервера MCP в Claude Desktop, отредактировав файл конфигурации:
В MacOS: ~/Library/Application\ Support/Claude/claude_desktop_config.json В Windows: %APPDATA%/Claude/claude_desktop_config.json
Если вы хотите использовать инструмент create_receipt_attachment с claude desktop, вам нужно будет установить сервер файловой системы mcp с помощью npm install @modelcontextprotocol/server-filesystem add, а затем добавить его в файл конфигурации.
Обратите внимание: из-за текущих ограничений изображения, загруженные непосредственно в Claude Desktop, не могут быть загружены в Extend из-за того, что приложение Claude Desktop не имеет доступа к базовым данным изображения. Вот почему необходим Filesystem MCP Server .
С добавлением Filesystem вы можете настроить специальную папку для чеков и сказать Claude загрузить чек и автоматически сопоставить его с наиболее вероятной транзакцией. В качестве альтернативы, если вы знаете транзакцию, к которой хотите прикрепить чек, вы можете сказать Claude загрузить чек для этой транзакции (и пропустить процесс автоматического сопоставления).
{
"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"
]
}
}Удаленное исполнение
Вы также можете запустить свой сервер удаленно и обмениваться данными через транспорт SSE:
python -m extend_ai_toolkit.modelcontextprotocol.main_sse --tools=all --api-key="apikey" --api-secret="apisecret"и при желании подключиться с помощью терминального клиента 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-20241022OpenAI
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()Внося вклад
Вклады приветствуются! Пожалуйста, не стесняйтесь отправлять запрос на включение.
Лицензия
Данный проект лицензирован по лицензии MIT — подробности см. в файле LICENSE.
This server cannot be deployed
Maintenance
Related MCP Connectors
The Ramp MCP server enables users to securely connect Ramp with AI assistants like ChatGPT and Claude to query financial data and take actions using natural language. It transforms Ramp's developer API into a SQL interface that LLMs can query, allowing admins to analyze spend trends, identify cost savings, and run complex SQL analyses on comprehensive datasets (transactions, purchase orders, vendors, users), while all users can manage cards, view transactions, request reimbursements, and get expense policy answers.
MCP server for building and testing AI agents with multi-model experimentation and insights.
MCP server connecting AI agents to 100+ apps (Gmail, Slack, Notion, GitHub) via one-click OAuth.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Related MCP Servers
- AlicenseNot gradedqualityBmaintenanceA production-grade MCP server for personal finance management, enabling AI agents to add, update, search expenses, manage budgets and credit cards, and generate financial reports.2MIT
- AlicenseCqualityDmaintenanceAn MCP server that enables AI assistants to interact with Interswitch APIs for payments, transfers, VAS, cardless paycodes, Transaction Search, Card 360, lending, payouts, agency banking, and fintech card-processing utilities.7436 npm1MIT
- FlicenseNot gradedqualityCmaintenanceAI-powered expense tracking MCP server that connects LLM clients to PostgreSQL for natural language expense management.-
- FlicenseNot gradedqualityBmaintenanceAn MCP server for managing SAP Concur expense reports, allowing AI agents to create and update expenses, attach receipts and attendees, and read report data, while leaving submission and approval to humans.-