Clemens-U/jsonbuddy
If you are the rightful owner of jsonbuddy and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
JSONBuddy Core API MCP Server provides an MCP-compatible interface for JSON validation against schemas via a secure and high-performance HTTP-based service.
The JSONBuddy Core API MCP Server is designed to facilitate JSON validation against schemas through a secure and efficient HTTP-based service. It offers two primary endpoints for schema validation, making it versatile for various validation scenarios. The server is compatible with MCP clients and AI agents, allowing seamless integration using the provided `mcp.json` definition and standard API key authentication. This service is particularly useful for developers and organizations that require robust JSON validation capabilities integrated into their systems.
Features
- Secure and high-performance HTTP-based service for JSON validation.
- Two endpoints for flexible schema validation scenarios.
- Integration with MCP clients and AI agents using `mcp.json`.
- Standard API key authentication for secure access.
- Compatible with multiple JSON schema drafts.
Usages
usage with JSONBuddy Core API MCP Server
{ "mcpServers": { "jsonbuddy-core-api": { "command": "jsonbuddy", "args": [ "--server", "--config", "mcp.json" ] } } }
usage with JSON validator command line tool
shell valbuddy.exe -v -verbose -s "D:\Examples\Library\library_schema.json" "D:\Examples\Library\library.json" "D:\Examples\Library\library_invalid.json"
usage with C++ DLL for JSON Schema validation
cpp JSONSchemaSubSchemaResult::JSONSchemaSubSchemaResultsT out_results; JSONSchemaValidator* json_validator = NewJSONSchemaValidator(); json_validator->SetJSONSchema("C:\\Users\\Clemens\\Dokumente\\JSONBuddy\\Examples\\Library\\library_schema.json", JSONSchemaValidator::TJSONSchemaSchemaID::k_nJSONSchemaIDDraft202012); std::string json_instance = "{\"bib\":{\"book\":[{\"author\":[\"Clemens\",\"Stevens\"],\"publisher\":\"Addison-Wesley\"},{\"title\":1}]}}"; if (json_validator->ValidateJSONDocument(json_instance, 0, out_results)) { JSONSchemaSubSchemaResult::JSONSchemaSubSchemaResultsItrT find_invalid = std::find_if(out_results.begin(), out_results.end(), [](JSONSchemaSubSchemaResult::JSONSchemaSubSchemaResultsT::value_type& the_result) { return !the_result.m_bValid; }); if (find_invalid != out_results.end()) { std::cout << "The data is invalid.\n"; std::cout << "Location: " << find_invalid->m_strJSONPointer << "\n"; } else std::cout << "The data is valid.\n"; } else std::cout << "The validation was not executed.\n"; json_validator->Free();