/v1/messages endpoint genuinely supports Claude native tools — including tool_use content blocks and strict schema validation — rather than silently routing your request through an OpenAI compatibility layer. Run it whenever you need confidence that native Claude tool calling will work end-to-end with your API key and chosen model.
Usage
Edit the script configuration
Open
claude_api_checker.py and update the three variables in the config section at the top:- Set
API_URLto your endpoint, e.g.https://api.qhaigc.net/v1/messages - Set
API_KEYto your Qhaigc API key - Set
MODELto the Claude model you want to test, e.g.claude-haiku-4-5-20251001
Run the script
The Script
How to Read the Results
✅ Native Claude Tools: Supported
✅ Native Claude Tools: Supported
The response contained a
content[] block with "type": "tool_use". Your endpoint correctly supports native Claude tool calling via the /v1/messages path.⚠️ Strict Tool Schema: Not fully supported
⚠️ Strict Tool Schema: Not fully supported
The basic tool call succeeded and returned a
tool_use block, but the endpoint did not handle the strict: true field in the tool definition correctly. Core tool calling still works; however, strict schema enforcement may not be fully supported by the underlying model or routing layer.❌ Native Claude Tools: Not supported
❌ Native Claude Tools: Not supported
No
tool_use block was detected in the response, or the request failed outright. Check the following:- Confirm your
MODELvalue matches a Claude model available on your account - Confirm
API_URLpoints to the/v1/messagespath, not/v1/chat/completions - Confirm
API_KEYis valid and has not expired - Review the raw error output printed above the report for a diagnostic hint
This script tests the
/v1/messages endpoint specifically. Most Qhaigc use cases work fine through /v1/chat/completions, which is fully OpenAI-compatible. Use this checker only when you specifically require Claude native tools with tool_use content blocks in the response.