Skip to content

MCPTool

This page is auto-generated by scripts/generate-schema-docs.ts. Do not edit manually.

  • Kind: MCPTool
  • API Group: kubemcp.io
  • Version: v1alpha1
  • apiVersion: kubemcp.io/v1alpha1
  • Reference Slug: /reference/mcptool/
FieldTypeRequiredDescriptionDefault
specunknown | unknownYes
statusobjectNo
FieldTypeRequiredDescriptionDefault
namestringNoMCP tool name (must be unique within server)
descriptionstringNoHuman-readable description of the tool
serviceobjectYes
inputSchemaobjectNoJSON Schema for tool input validation
methodstring ("GET", "POST", "PUT", "DELETE", "PATCH")NoHTTP method for tool invocation”POST”
ingressPathstringNoOptional path to expose tool via ingress
toolsarray<object>NoMultiple tool definitions sharing this service. Use instead of single-tool name/inputSchema fields.
FieldTypeRequiredDescriptionDefault
namestringYesKubernetes service name
namespacestringNoService namespace (defaults to same as MCPTool)
portintegerYesService port number
pathstringNoHTTP path for tool endpoint”/“
FieldTypeRequiredDescriptionDefault
namestringYesMCP tool name (must be unique within server)
pathstringYesHTTP path for this tool endpoint
descriptionstringNoHuman-readable description of the tool
inputSchemaobjectNoJSON Schema for tool input validation
methodstring ("GET", "POST", "PUT", "DELETE", "PATCH")NoHTTP method for tool invocation”POST”
FieldTypeRequiredDescriptionDefault
readybooleanNoWhether tool is ready for use
resolvedEndpointstringNoFully resolved endpoint URL
lastSyncTimestring [date-time]NoLast time tool was synced
conditionsarray<object>No
FieldTypeRequiredDescriptionDefault
typestringYes
statusstring ("True", "False", "Unknown")Yes
lastTransitionTimestring [date-time]No
reasonstringNo
messagestringNo
---
# Example MCPTool - points to the echo-backend service
apiVersion: kubemcp.io/v1alpha1
kind: MCPTool
metadata:
name: echo-tool
namespace: mcp-test
labels:
mcp-server: echo
spec:
name: echo
description: Echoes back the input for testing
service:
name: echo-backend-svc
port: 8080
path: /
inputSchema:
type: object
properties:
message:
type: string
description: Message to echo back
required:
- message
method: POST
ConditionReasonStatusDescription
ReadyServiceResolvedTrueNamed Service found; status.resolvedEndpoint contains the full URL
ReadyServiceNotFoundFalseNamed Service does not exist in the namespace

See the Observability guide for diagnostic patterns using these conditions.