This repo contains the earliest version of the Integuru agent we released publicly. It shows the original approach: using browser network requests to generate runnable integration code for platforms without official APIs.
We've kept building since then. The newest version of Integuru is available at www.integuru.com.

You use create_har.py to generate a file containing all browser network requests, a file with the cookies, and write a prompt describing the action triggered in the browser. The agent outputs runnable Python code that hits the platform's internal endpoints to perform the desired action.
Let's assume we want to download utility bills:
https://www.example.com/utility-bills?accountId=123&userId=456accountId=123 userId=456GET https://www.example.com/get_account_id
GET https://www.example.com/get_user_idOPENAI_API_KEY environment variable. (We recommend using an account with access to models that are at least as capable as OpenAI o1-mini. Models on par with OpenAI o1-preview are ideal.)poetry installpoetry shellpoetry run ipython kernel install --user --name=integurupoetry run python create_har.py
Log into your platform and perform the desired action (such as downloading a utility bill).poetry run integuru --prompt "download utility bills" --model <gpt-4o|o3-mini|o1|o1-mini>
You can also run it via Jupyter Notebook main.ipynbRecommended to use gpt-4o as the model for graph generation as it supports function calling. Integuru will automatically switch to o1-preview for code generation if available in the user's OpenAI account.
After setting up the project, you can use Integuru to analyze and reverse-engineer API requests for external platforms. Simply provide the appropriate .har file and a prompt describing the action that you want to trigger.
poetry run integuru --help
Usage: integuru [OPTIONS]
Options:
--model TEXT The LLM model to use (default is gpt-4o)
--prompt TEXT The prompt for the model [required]
--har-path TEXT The HAR file path (default is
./network_requests.har)
--cookie-path TEXT The cookie file path (default is
./cookies.json)
--max_steps INTEGER The max_steps (default is 20)
--input_variables <TEXT TEXT>...
Input variables in the format key value
--generate-code Whether to generate the full integration
code
--help Show this message and exit.
To run unit tests using pytest, use the following command:
poetry run pytest
This repository includes a CI workflow using GitHub Actions. The workflow is defined in the .github/workflows/ci.yml file and is triggered on each push and pull request to the main branch. The workflow performs the following steps:
poetry.pytest.When the destination site uses two-factor authentication (2FA), the workflow remains the same. Ensure that you complete the 2FA process and obtain the cookies/auth tokens/session tokens after 2FA. These tokens will be used in the workflow.
Contributions to improve Integuru are welcome. Please feel free to submit issues or pull requests on the project's repository.
Integuru is now at Integuru.com. If you're looking for new integrations or the current version of the agent, visit www.integuru.com.
For direct questions, reach out at richard@integuru.com.
Collected data is stored locally in the network_requests.har and cookies.json files.
The tool uses a cloud-based LLM (OpenAI's GPT-4o and o1-preview models).
The LLM is not trained or improved by the usage of this tool.
$ claude mcp add Integuru \
-- python -m otcore.mcp_server <graph>