Documentation

API Reference#

Packages#

kagent.dev/v1alpha1#

Package v1alpha1 contains API Schema definitions for the v1alpha1 API group.

Resource Types#

HTTPTransport#

HTTPTransport defines the configuration for a Streamable HTTP transport.

Appears in:

FieldDescriptionDefaultValidation
targetPort integertarget port is the HTTP port that serves the MCP server.over HTTP
path stringthe target path where MCP is served

InitContainerConfig#

InitContainerConfig defines the configuration for the init container.

Appears in:

FieldDescriptionDefaultValidation
image stringImage defines the full image reference for the init container.
If specified, this overrides the default transport adapter image.
Example: "myregistry.com/agentgateway/agentgateway:0.9.0-musl"
imagePullPolicy PullPolicyImagePullPolicy defines the pull policy for the init container image.Enum: [Always Never IfNotPresent]

MCPServer#

MCPServer is the Schema for the mcpservers API.

FieldDescriptionDefaultValidation
apiVersion stringkagent.dev/v1alpha1
kind stringMCPServer
kind stringKind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
apiVersion stringAPIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
metadata ObjectMetaRefer to Kubernetes API documentation for fields of metadata.
spec MCPServerSpec
status MCPServerStatus

MCPServerDeployment#

MCPServerDeployment

Appears in:

FieldDescriptionDefaultValidation
image stringImage defines the container image to to deploy the MCP server.
imagePullPolicy PullPolicyImagePullPolicy defines the pull policy for the container image.Enum: [Always Never IfNotPresent]
port integerPort defines the port on which the MCP server will listen.3000
cmd stringCmd defines the command to run in the container to start the mcp server.
args string arrayArgs defines the arguments to pass to the command.
env object (keys:string, values:string)Env defines the environment variables to set in the container.
secretRefs LocalObjectReference arraySecretRefs defines the list of Kubernetes secrets to reference.
These secrets will be mounted as volumes to the MCP server container.
configMapRefs LocalObjectReference arrayConfigMapRefs defines the list of Kubernetes configmaps to reference.
These configmaps will be mounted as volumes to the MCP server container.
volumeMounts VolumeMount arrayVolumeMounts defines the list of volume mounts for the MCP server container.
This allows for more flexible volume mounting configurations.
volumes Volume arrayVolumes defines the list of volumes that can be mounted by containers.
This allows for custom volume configurations beyond just secrets and configmaps.
initContainer InitContainerConfigInitContainer defines the configuration for the init container that copies
the transport adapter binary. This is used for stdio transport type.
serviceAccount ServiceAccountConfigServiceAccount defines the configuration for the ServiceAccount.
sidecars Container arraySidecars defines additional containers to run alongside the MCP server container.
These containers will share the same pod and can share volumes with the main container.

MCPServerSpec#

MCPServerSpec defines the desired state of MCPServer.

Appears in:

FieldDescriptionDefaultValidation
deployment MCPServerDeploymentConfiguration to Deploy the MCP Server using a docker container
transportType TransportTypeTransportType defines the type of mcp server being runEnum: [stdio http]
stdioTransport StdioTransportStdioTransport defines the configuration for a standard input/output transport.
httpTransport HTTPTransportHTTPTransport defines the configuration for a Streamable HTTP transport.

MCPServerStatus#

MCPServerStatus defines the observed state of MCPServer.

Appears in:

FieldDescriptionDefaultValidation
conditions Condition arrayConditions describe the current conditions of the MCPServer.
Implementations should prefer to express MCPServer conditions
using the MCPServerConditionType and MCPServerConditionReason
constants so that operators and tools can converge on a common
vocabulary to describe MCPServer state.

Known condition types are:

* "Accepted"
* "ResolvedRefs"
* "Programmed"
* "Ready"
MaxItems: 8
observedGeneration integerObservedGeneration is the most recent generation observed for this MCPServer.
It corresponds to the MCPServer's generation, which is updated on mutation by the API Server.

ServiceAccountConfig#

ServiceAccountConfig defines the configuration for the ServiceAccount.

Appears in:

FieldDescriptionDefaultValidation
annotations object (keys:string, values:string)Annotations to add to the ServiceAccount.
This is useful for configuring AWS IRSA (IAM Roles for Service Accounts)
or other cloud provider integrations.
Example: {"eks.amazonaws.com/role-arn": "arn:aws:iam::123456789012:role/my-role"}
labels object (keys:string, values:string)Labels to add to the ServiceAccount.

StdioTransport#

StdioTransport defines the configuration for a standard input/output transport.

Appears in:

TransportType#

Underlying type: string

MCPServerTransportType defines the type of transport for the MCP server.

Appears in:

FieldDescription
stdioTransportTypeStdio indicates that the MCP server uses standard input/output for communication.
httpTransportTypeHTTP indicates that the MCP server uses Streamable HTTP for communication.
Kagent Lab: Discover kagent and kmcp
Free, on‑demand lab: build custom AI agents with kagent and integrate tools via kmcp on Kubernetes.