This repository contains Python SDKs designed to seamlessly integrate the functionalities of the MCP Toolbox into your Gen AI applications. These SDKs allow you to load tools defined in Toolbox and use them as standard Python functions or objects within popular orchestration frameworks or your custom code.
This simplifies the process of incorporating external functionalities (like Databases or APIs) managed by Toolbox into your GenAI applications.
- Overview
- Which Package Should I Use?
- Available Packages
- Getting Started
- Contributing
- License
- Support
The MCP Toolbox service provides a centralized way to manage and expose tools (like API connectors, database query tools, etc.) for use by GenAI applications.
These Python SDKs act as clients for that service. They handle the communication needed to:
- Fetch tool definitions from your running Toolbox instance.
- Provide convenient Python objects or functions representing those tools.
- Invoke the tools (calling the underlying APIs/services configured in Toolbox).
- Handle authentication and parameter binding as needed.
By using these SDKs, you can easily leverage your Toolbox-managed tools directly within your Python applications or AI orchestration frameworks.
Choosing the right package depends on how you are building your application:
toolbox-langchain
: Use this package if you are building your application using the LangChain or LangGraph frameworks. It provides tools that are directly compatible with the LangChain ecosystem (BaseTool
interface), simplifying integration.toolbox-llamaindex
: Use this package if you are building your application using the LlamaIndex framework. It provides tools that are directly compatible with the LlamaIndex ecosystem (BaseTool
interface), simplifying integration.toolbox-core
: Use this package if you are not using LangChain/LangGraph or any other orchestration framework, or if you need a framework-agnostic way to interact with Toolbox tools (e.g., for custom orchestration logic or direct use in Python scripts).
This repository hosts the following Python packages. See the package-specific README for detailed installation and usage instructions:
Package | Target Use Case | Integration | Path | Details (README) | PyPI Status |
---|---|---|---|---|---|
toolbox-core |
Framework-agnostic / Custom applications | Use directly / Custom | packages/toolbox-core/ |
📄 View README | |
toolbox-langchain |
LangChain / LangGraph applications | LangChain / LangGraph | packages/toolbox-langchain/ |
📄 View README | |
toolbox-llamaindex |
LlamaIndex applications | LlamaIndex | packages/toolbox-llamaindex/ |
📄 View README |
To get started using Toolbox tools with an application, follow these general steps:
-
Set up and Run the Toolbox Service:
Before using the SDKs, you need the main MCP Toolbox service running. Follow the instructions here: Toolbox Getting Started Guide
-
Install the Appropriate SDK:
Choose the package based on your needs (see "Which Package Should I Use?" above) and install it:
# For the core, framework-agnostic SDK pip install toolbox-core # OR # For LangChain/LangGraph integration pip install toolbox-langchain # For the LlamaIndex integration pip install toolbox-llamaindex
-
Use the SDK:
Consult the README for your chosen package (linked in the "Available Packages" section above) for detailed instructions on how to connect the client, load tool definitions, invoke tools, configure authentication/binding, and integrate them into your application or framework.
Tip
For a complete, end-to-end example including setting up the service and using an SDK, see the full tutorial: Toolbox Quickstart Tutorial
Contributions are welcome! Please refer to the
CONTRIBUTING.md
to get started.
This project is licensed under the Apache License 2.0. See the LICENSE file for details.
If you encounter issues or have questions, please check the existing GitHub Issues for the main Toolbox project. If your issue is specific to one of the SDKs, please look for existing issues here or open a new issue in this repository.