Metadata-Version: 2.4
Name: ibapi-api-tool
Version: 1.0.0
Summary: IBAPI auction property search — CLI + MCP servers (stdio & HTTP)
Author-email: NioVault Systems <niovaultsystems@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/singhvedant/ibapi-api-tool
Project-URL: Repository, https://github.com/singhvedant/ibapi-api-tool.git
Project-URL: Issues, https://github.com/singhvedant/ibapi-api-tool/issues
Project-URL: Changelog, https://github.com/singhvedant/ibapi-api-tool/releases
Keywords: auction,india,bank,sarfaesi,mcp,cli
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: httpx>=0.27
Requires-Dist: mcp>=1.2.0
Requires-Dist: fastapi>=0.110
Requires-Dist: fastapi-mcp>=0.3.0
Requires-Dist: uvicorn>=0.29
Dynamic: license-file

# ibapi-api-tool

Search Indian bank-auction properties from the **IBAPI** portal
(`https://ibapi.in/sale_info_home.aspx`) via a CLI and two MCP servers.

The portal exposes its search as ASP.NET JSON PageMethods
(`Sale_Info_Home.aspx/Button_search_Click`, `/bind_modal_detail`,
`/fill_DropDownList_*`). This tool reproduces those calls behind a clean client.

## Install
```bash
# from source
git clone https://github.com/singhvedant/ibapi-api-tool
cd ibapi-api-tool
bash Skill/install.sh

# or via pip
pip install ibapi-api-tool
```

## Quick start
```bash
# CLI
ibapi search --state MH --type residential --limit 5

# or from source dir
venv/bin/python cli.py search --state MH --type residential --limit 5

# HTTP MCP server
bash Skill/start.sh                   # http://127.0.0.1:8000 (MCP at /mcp)
bash Skill/stop.sh
```

Full docs, MCP registration, and tool reference: **[Skill/SKILL.md](Skill/SKILL.md)**.

## Components
| File | Role |
|------|------|
| `Src/ibapi_client.py` | `IBAPIClient` — httpx wrapper over the portal PageMethods |
| `Src/constants.py` | states / property types / banks / endpoint map |
| `Src/service.py` | transport-agnostic functions shared by all front-ends |
| `cli.py` | command-line tool |
| `mcp.py` | **stdio** MCP server (official `mcp` SDK / FastMCP) |
| `mcp-server.py` | **HTTP** MCP server (FastAPI + `fastapi-mcp`, MCP mounted at `/mcp`) |

Behind a TLS-intercepting proxy, set `IBAPI_VERIFY_SSL=false`.

## License
MIT — see [LICENSE](LICENSE).
