Integrations
Schema Registry
A versioned registry of MCP tool input schemas. Publish schemas, look up by name and version, and check backward compatibility between versions. Live at registry.businys.dev.
Publish a schema
Terminalsh
curl -X POST https://registry.businys.dev/api/registry \
-H "Content-Type: application/json" \
-d '{
"action": "publish",
"name": "create_invoice",
"version": "1.0.0",
"description": "Create a new invoice for a client",
"inputSchema": {
"type": "object",
"required": ["clientId", "amount"],
"properties": {
"clientId": { "type": "string" },
"amount": { "type": "number" },
"currency": { "type": "string" }
}
}
}'Look up a schema
Terminalsh
# Latest version
curl -X POST https://registry.businys.dev/api/registry \
-H "Content-Type: application/json" \
-d '{ "action": "lookup", "name": "create_invoice" }'
# Specific version
curl -X POST https://registry.businys.dev/api/registry \
-H "Content-Type: application/json" \
-d '{ "action": "lookup", "name": "create_invoice", "version": "1.0.0" }'Compatibility check
Check whether a new version is backward-compatible with an older one. Breaking changes include: removed required fields, renamed fields, changed field types, and new required fields not present in the old schema.
Terminalsh
curl -X POST https://registry.businys.dev/api/registry \
-H "Content-Type: application/json" \
-d '{
"action": "compat",
"name": "create_invoice",
"from": "1.0.0",
"to": "2.0.0"
}'Responsejson
{
"compatible": false,
"breaking": ["Field \"clientId\" type changed from \"string\" to \"number\""],
"additions": ["Optional field \"notes\" added"]
}List all schemas
Terminalsh
curl https://registry.businys.dev/api/registry
# Returns latest version of every published tool schemaContract testing in CI
Publish your tool schemas on deploy. Use the compatibility endpoint in CI to fail builds if a tool's schema changes without a version bump:
check-compat.shsh
#!/bin/bash
# Fail if create_invoice schema changed without a version bump
RESULT=$(curl -s -X POST https://registry.businys.dev/api/registry \
-H "Content-Type: application/json" \
-d '{"action":"compat","name":"create_invoice","from":"1.0.0","to":"1.0.1"}')
COMPATIBLE=$(echo $RESULT | python3 -c "import sys,json; print(json.load(sys.stdin)['compatible'])")
if [ "$COMPATIBLE" != "True" ]; then
echo "Breaking schema change detected:"
echo $RESULT
exit 1
fi