Skip to main content
Glama

generate_model_from_json

Create Pydantic models automatically from JSON data to enable structured validation and schema generation for Python applications.

Instructions

Infer candidate Pydantic models from a JSON string or JSON-like payload.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
json_inputYes
model_nameNoGeneratedModel

Implementation Reference

  • The core implementation of the generate_model_from_json logic, which performs JSON parsing, model inference, and model rendering.
    def generate_model_from_json_report(
        json_input: Any,
        *,
        model_name: str,
    ) -> ToolResponse:
        try:
            payload = json.loads(json_input) if isinstance(json_input, str) else json_input
        except json.JSONDecodeError as exc:
            return make_response(
                diagnostics=[
                    Diagnostic(
                        level="error",
                        message="Input is not valid JSON.",
                        code="invalid_json",
                        context={"error": str(exc)},
                    )
                ],
                result={"ok": False, "code": None, "models": [], "input_kind": "invalid"},
            )
    
        effective_model_name = _sanitize_model_name(model_name)
        models: dict[str, GeneratedModelSpec] = {}
        root_model = _infer_root_model(payload, effective_model_name, models=models)
        models[root_model.name] = root_model
        ordered_models = list(models.values())
        code = _render_generated_models(ordered_models)
    
        return make_response(
            diagnostics=[
  • The tool entry point that wraps the generation logic.
    def generate_model_from_json(
        json_input: object,
        model_name: str = "GeneratedModel",
    ) -> ToolResponse:
        """Infer candidate Pydantic models from a JSON string or JSON-like payload."""
        return generate_model_from_json_report(json_input, model_name=model_name)
  • Registration of the generate_model_from_json tool in the MCP server setup.
    "generate_model_from_json",

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/BitingSnakes/pydantic-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server