generated: '2026-10-18' method: derived generator: derive-data-model.py source: - openapi/hasmcp-openapi.yaml notation: has_one = property $ref; has_many = array of $ref; belongs_to = _id field summary: entities: 65 entities_in_spec: 65 relationships: 60 entities: - name: CreateProviderPromptRequest fields: 1 - name: CreateProviderPromptResponse fields: 1 - name: CreateProviderRequest fields: 1 - name: CreateProviderResourceRequest fields: 1 - name: CreateProviderResourceResponse fields: 1 - name: CreateProviderResponse fields: 1 - name: CreateProviderToolRequest fields: 1 - name: CreateProviderToolResponse fields: 1 - name: CreateServerPromptRequest fields: 1 - name: CreateServerPromptResponse fields: 1 - name: CreateServerRequest fields: 1 - name: CreateServerResourceRequest fields: 1 - name: CreateServerResourceResponse fields: 1 - name: CreateServerResponse fields: 1 - name: CreateServerTokenRequest fields: 1 - name: CreateServerTokenResponse fields: 1 - name: CreateServerToolRequest fields: 1 - name: CreateServerToolResponse fields: 1 - name: CreateVariableRequest fields: 1 - name: CreateVariableResponse fields: 1 - name: GetProviderPromptResponse fields: 1 - name: GetProviderResourceResponse fields: 1 - name: GetProviderResponse fields: 1 - name: GetProviderToolResponse fields: 1 - name: GetServerResponse fields: 1 - name: ListProviderPromptsResponse fields: 1 - name: ListProviderResourcesResponse fields: 1 - name: ListProviderToolsResponse fields: 1 - name: ListProvidersResponse fields: 3 - name: ListServerPromptsResponse fields: 1 - name: ListServerResourcesResponse fields: 1 - name: ListServerToolsResponse fields: 1 - name: ListServersResponse fields: 1 - name: ListVariablesResponse fields: 1 - name: Provider fields: 14 - name: ProviderCreate fields: 8 - name: ProviderOAuth2Config fields: 4 - name: ProviderPrompt fields: 7 - name: ProviderPromptCreate fields: 4 - name: ProviderResource fields: 9 - name: ProviderResourceCreate fields: 6 - name: ProviderTool fields: 12 - name: ProviderToolCreate fields: 11 - name: Server fields: 13 - name: ServerCreate fields: 6 - name: ServerPrompt fields: 2 - name: ServerResource fields: 2 - name: ServerToken fields: 6 - name: ServerTokenCreate fields: 2 - name: ServerTool fields: 3 - name: ToolHeader fields: 2 - name: UpdateProviderPromptRequest fields: 1 - name: UpdateProviderRequest fields: 1 - name: UpdateProviderResourceRequest fields: 1 - name: UpdateProviderResourceResponse fields: 1 - name: UpdateProviderResponse fields: 1 - name: UpdateProviderToolRequest fields: 1 - name: UpdateProviderToolResponse fields: 1 - name: UpdateServerRequest fields: 1 - name: UpdateServerResponse fields: 1 - name: UpdateVariableRequest fields: 1 - name: UpdateVariableResponse fields: 1 - name: Variable fields: 6 - name: VariableCreate fields: 3 - name: VariableUpdate fields: 1 relationships: - from: CreateVariableRequest to: VariableCreate type: has_one via: variable - from: CreateVariableResponse to: Variable type: has_one via: variable - from: UpdateVariableRequest to: VariableUpdate type: has_one via: variable - from: UpdateVariableResponse to: Variable type: has_one via: variable - from: ListVariablesResponse to: Variable type: has_many via: variables - from: Provider to: ProviderTool type: has_many via: tools - from: Provider to: ProviderOAuth2Config type: has_one via: oauth2Config - from: ProviderCreate to: ProviderOAuth2Config type: has_one via: oauth2Config - from: CreateProviderRequest to: ProviderCreate type: has_one via: provider - from: CreateProviderResponse to: Provider type: has_one via: provider - from: UpdateProviderRequest to: ProviderCreate type: has_one via: provider - from: UpdateProviderResponse to: Provider type: has_one via: provider - from: ListProvidersResponse to: Provider type: has_many via: providers - from: GetProviderResponse to: Provider type: has_one via: provider - from: ProviderTool to: Provider type: belongs_to via: providerID - from: ProviderTool to: ToolHeader type: has_many via: headers - from: ProviderToolCreate to: Provider type: belongs_to via: providerID - from: ProviderToolCreate to: ToolHeader type: has_many via: headers - from: CreateProviderToolRequest to: ProviderToolCreate type: has_one via: tool - from: CreateProviderToolResponse to: ProviderTool type: has_one via: tool - from: UpdateProviderToolRequest to: ProviderToolCreate type: has_one via: tool - from: UpdateProviderToolResponse to: ProviderTool type: has_one via: tool - from: ListProviderToolsResponse to: ProviderTool type: has_many via: tools - from: GetProviderToolResponse to: ProviderTool type: has_one via: tool - from: Server to: Provider type: has_many via: providers - from: Server to: ProviderResource type: has_many via: resources - from: Server to: ProviderPrompt type: has_many via: prompts - from: CreateServerRequest to: ServerCreate type: has_one via: server - from: CreateServerResponse to: Server type: has_one via: server - from: ListServersResponse to: Server type: has_many via: servers - from: GetServerResponse to: Server type: has_one via: server - from: UpdateServerRequest to: ServerCreate type: has_one via: server - from: UpdateServerResponse to: Server type: has_one via: server - from: ServerToken to: Server type: belongs_to via: serverID - from: CreateServerTokenRequest to: ServerTokenCreate type: has_one via: token - from: CreateServerTokenResponse to: ServerToken type: has_one via: token - from: ServerTool to: Server type: belongs_to via: serverID - from: ServerTool to: Provider type: belongs_to via: providerID - from: CreateServerToolRequest to: ServerTool type: has_one via: tool - from: CreateServerToolResponse to: ServerTool type: has_one via: tool - from: ListServerToolsResponse to: ServerTool type: has_many via: tools - from: CreateProviderResourceRequest to: ProviderResourceCreate type: has_one via: resource - from: CreateProviderResourceResponse to: ProviderResource type: has_one via: resource - from: GetProviderResourceResponse to: ProviderResource type: has_one via: resource - from: ListProviderResourcesResponse to: ProviderResource type: has_many via: resources - from: UpdateProviderResourceRequest to: ProviderResourceCreate type: has_one via: resource - from: UpdateProviderResourceResponse to: ProviderResource type: has_one via: resource - from: CreateProviderPromptRequest to: ProviderPromptCreate type: has_one via: prompt - from: CreateProviderPromptResponse to: ProviderPrompt type: has_one via: prompt - from: GetProviderPromptResponse to: ProviderPrompt type: has_one via: prompt - from: ListProviderPromptsResponse to: ProviderPrompt type: has_many via: prompts - from: UpdateProviderPromptRequest to: ProviderPromptCreate type: has_one via: prompt - from: ServerResource to: Server type: belongs_to via: serverID - from: CreateServerResourceRequest to: ServerResource type: has_one via: resource - from: CreateServerResourceResponse to: ServerResource type: has_one via: resource - from: ListServerResourcesResponse to: ServerResource type: has_many via: resources - from: ServerPrompt to: Server type: belongs_to via: serverID - from: CreateServerPromptRequest to: ServerPrompt type: has_one via: prompt - from: CreateServerPromptResponse to: ServerPrompt type: has_one via: prompt - from: ListServerPromptsResponse to: ServerPrompt type: has_many via: prompts