— No reviews yet
0 installs
9 views
0.0% view→install
Install
$ agentstack add skill-harness-harness-skills-create-service ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Are you the author of Create Service? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claimAbout
Create Service
Generate Harness Service YAML and push to Harness via MCP.
Instructions
- Detect service type from codebase (if source code is available) - Scan the project for deployment manifests to auto-select the correct
serviceDefinition.typeand manifest configuration:
k8s/,kubernetes/,manifests/with YAML files →KuberneteswithK8sManifestkustomization.yaml→KuberneteswithKustomizeChart.yaml,charts/,helm/→NativeHelmwithHelmCharttask-definition.json→ECSwithEcsTaskDefinitionserverless.yml/template.yaml(SAM) →ServerlessAwsLambdafunction.json(Azure) →AzureWebApp.NET+ Windows →WinRm- Traditional app (JAR/WAR) without containers →
Ssh - See
create-pipeline/references/codebase-analysis.mdStep 4 for the full decision tree
- Detect artifact source - Match Dockerfile registry references to artifact source type:
- Docker Hub →
DockerRegistry *.dkr.ecr.*.amazonaws.com→Ecrgcr.io/*-docker.pkg.dev→Gcr*.azurecr.io→Acr
- Confirm with user - Present detected service type, manifest type, and artifact source for confirmation
- Generate YAML following the structure below
- Create via MCP using
harness_createwith resource_typeservice
Service Structure
service:
name: My Service
identifier: my_service
orgIdentifier: default
projectIdentifier: my_project
serviceDefinition:
type: Kubernetes # Kubernetes, NativeHelm, ECS, ServerlessAwsLambda, Ssh, WinRm, AzureWebApp, AzureFunction, CustomDeployment
spec:
artifacts:
primary:
primaryArtifactRef: docker_image
sources:
- identifier: docker_image
type: DockerRegistry
spec:
connectorRef: dockerhub
imagePath: myorg/myimage
tag:
manifests:
- manifest:
identifier: k8s_manifest
type: K8sManifest
spec:
store:
type: Github
spec:
connectorRef: github_connector
repoName: my-manifests
branch: main
paths: [manifests/]
variables:
- name: replicas
type: String
value: "3"
Deployment Types
Kubernetes Service
serviceDefinition:
type: Kubernetes
spec:
artifacts:
primary:
primaryArtifactRef: main_image
sources:
- identifier: main_image
type: DockerRegistry
spec:
connectorRef: dockerhub
imagePath: myorg/api
tag:
manifests:
- manifest:
identifier: manifests
type: K8sManifest
spec:
store:
type: Github
spec:
connectorRef: github
repoName: k8s-manifests
branch: main
paths: [deploy/]
Helm Service
serviceDefinition:
type: NativeHelm
spec:
artifacts:
primary:
primaryArtifactRef: chart
sources:
- identifier: chart
type: DockerRegistry
spec:
connectorRef: dockerhub
imagePath: myorg/api
tag:
manifests:
- manifest:
identifier: helm_chart
type: HelmChart
spec:
store:
type: Http
spec:
connectorRef: helm_repo
chartName: my-chart
chartVersion:
helmVersion: V3
Kustomize Service
serviceDefinition:
type: Kubernetes
spec:
artifacts:
primary:
primaryArtifactRef: main_image
sources:
- identifier: main_image
type: DockerRegistry
spec:
connectorRef: dockerhub
imagePath: myorg/api
tag:
manifests:
- manifest:
identifier: kustomize
type: Kustomize
spec:
store:
type: Github
spec:
connectorRef: github
repoName: k8s-config
branch: main
folderPath: overlays/production
pluginPath: ""
ECS Service
serviceDefinition:
type: ECS
spec:
artifacts:
primary:
primaryArtifactRef: ecr_image
sources:
- identifier: ecr_image
type: Ecr
spec:
connectorRef: aws_connector
region: us-east-1
imagePath: my-image
tag:
manifests:
- manifest:
identifier: task_def
type: EcsTaskDefinition
spec:
store:
type: Github
spec:
connectorRef: github
repoName: ecs-config
branch: main
paths: [task-definition.json]
Serverless Lambda Service
serviceDefinition:
type: ServerlessAwsLambda
spec:
artifacts:
primary:
primaryArtifactRef: s3_artifact
sources:
- identifier: s3_artifact
type: AmazonS3
spec:
connectorRef: aws_connector
region: us-east-1
bucketName: my-deployments
filePath: serverless-app.zip
manifests:
- manifest:
identifier: serverless_manifest
type: ServerlessAwsLambda
spec:
store:
type: Github
spec:
connectorRef: github
repoName: serverless-config
branch: main
paths: [serverless.yml]
Artifact Source Types
DockerRegistry- Docker Hub (connectorRef, imagePath, tag)Ecr- AWS ECR (connectorRef, region, imagePath, tag)Gcr- Google GCR (connectorRef, registryHostname, imagePath, tag)GoogleArtifactRegistry- Google Artifact Registry (connectorRef, region, repositoryName, package, version)Acr- Azure ACR (connectorRef, subscriptionId, registry, repository, tag)ArtifactoryRegistry- JFrog Artifactory (connectorRef, repository, artifactPath, repositoryFormat, tag)Nexus3Registry- Nexus (connectorRef, repository, artifactPath, repositoryFormat, tag)GithubPackageRegistry- GitHub Packages (connectorRef, packageType, org, packageName, version)AmazonS3- S3 (connectorRef, region, bucketName, filePath)GoogleCloudStorage- GCS (connectorRef, project, bucket, artifactPath)CustomArtifact- Custom source (scripts, delegateSelectors, version)
Creating via MCP
Call MCP tool: harness_create
Parameters:
resource_type: "service"
org_id: ""
project_id: ""
body:
List existing services:
Call MCP tool: harness_list
Parameters:
resource_type: "service"
org_id: ""
project_id: ""
Examples
- "Create a K8s service with Docker Hub artifact" - Kubernetes type with DockerRegistry source
- "Create a Helm service" - NativeHelm type with HelmChart manifest
- "Create an ECS service with ECR" - ECS type with Ecr artifact source
Performance Notes
- Verify that referenced connectors exist before creating the service definition.
- Ensure the deployment type matches the infrastructure type that will be used in the pipeline.
- For artifact sources, confirm the image path and registry are accessible.
- Quality of service configuration is more important than speed.
Troubleshooting
CONNECTOR_NOT_FOUND- Create connector first or fix connectorRefDUPLICATE_IDENTIFIER- Service exists; useharness_update- Artifact tag `` means the tag is provided at runtime
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: harness
- Source: harness/harness-skills
- License: Apache-2.0
- Homepage: https://developer.harness.io/docs/platform/harness-ai/harness-skills/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.