MCP server for testing Oracle-to-PostgreSQL API migrations
Project description
apitest-mcp
MCP server for testing Oracle → PostgreSQL API migrations.
Give it an API URL — it scans your repo for DB credentials, reads the handler code, fetches valid test data from PG, calls the API, and validates the DB state.
Works with Claude Code and Antigravity.
Install
pip install apitest-mcp
Or from source:
git clone https://github.com/your-org/apitest-mcp
cd apitest-mcp
pip install -e .
Setup
Copy .env.example to .env and fill in your values:
cp .env.example .env
REPO_PATH=/path/to/your/repo
EMP_ID=your_emp_id
AK=your_jwt_token
REPO_PATH— absolute path to the repo being tested (PHP or Go)EMP_ID— your employee ID for API authAK— your JWT token for API auth
Register in Claude Code
claude mcp add apitest-mcp -- python /path/to/apitest-mcp/server.py
Or add to ~/.claude/claude.json:
{
"mcpServers": {
"apitest-mcp": {
"command": "python",
"args": ["/path/to/apitest-mcp/server.py"],
"env": {
"REPO_PATH": "/path/to/your/repo",
"EMP_ID": "your_emp_id",
"AK": "your_jwt_token"
}
}
}
}
Register in Antigravity
{
"mcp_servers": [
{
"name": "apitest-mcp",
"command": "python",
"args": ["/path/to/apitest-mcp/server.py"],
"env": {
"REPO_PATH": "/path/to/your/repo",
"EMP_ID": "your_emp_id",
"AK": "your_jwt_token"
}
}
]
}
Usage
Once registered, just tell Claude:
Test this API: POST http://localhost:8080/erp/preovp/preovpdata
Claude will:
- Scan repo → find PG credentials
- Read handler code → understand params + tables
- Query PG → fetch valid test data
- Call the API → capture response
- Validate DB state → report PASS / FAIL
Tools exposed
| Tool | Description |
|---|---|
scan_repo_config |
Scan repo to find PG connection details |
read_api_code |
Find and return handler code for an API URL |
query_pg |
Run a SELECT query on the discovered PG database |
call_api |
Call an API endpoint with auth injected automatically |
validate_db |
Run a SELECT and optionally assert expected field values |
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file apitest_mcp-0.1.1.tar.gz.
File metadata
- Download URL: apitest_mcp-0.1.1.tar.gz
- Upload date:
- Size: 5.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
786be13ac52b92f4db3b512dd66801ef05ffaee66bd1a52b2dbca879d19d1ce5
|
|
| MD5 |
d13999d99560c11be1a57061fdb32113
|
|
| BLAKE2b-256 |
abc020c24d26141394d07eb8f9bc296b7c93f0b4b6904a0e932967a9bf6f10b6
|
File details
Details for the file apitest_mcp-0.1.1-py3-none-any.whl.
File metadata
- Download URL: apitest_mcp-0.1.1-py3-none-any.whl
- Upload date:
- Size: 6.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
77c3ad7eeb7e9522286ede888c4a6149e7ee461a4ff76ef0057bef40b0d8dda5
|
|
| MD5 |
014f2cf732d9859a4d3fce17e73b1f88
|
|
| BLAKE2b-256 |
9ba20c4c9439953bfc5262c2bda3b88d071feeabb04eae5d297d8f98b9bffe0d
|