create-environment
Generate Harness Environment YAML for deployment targets and create via MCP. Supports PreProduction and Production types with environment variables, manifest overrides, and multi-environment setup (dev, staging, prod). Use when asked to create an environment, set up staging, configure production, define deployment targets, or manage environment overrides. Trigger phrases: create environment, deployment environment, setup dev, setup staging, setup production, environment variables, environment overrides.
Skill body
Create Environment
Generate Harness Environment YAML and push to Harness via MCP.
Instructions
- Determine environment type -
PreProductionfor dev/staging/QA,Productionfor live environments - Define variables and overrides - Environment-specific config values and manifest overrides
- Generate YAML using the structure below
- Create via MCP using
harness_createwith resource_typeenvironment
Environment Structure
environment:
name: Staging
identifier: staging
orgIdentifier: default
projectIdentifier: my_project
type: PreProduction # PreProduction or Production
tags:
tier: staging
variables:
- name: domain
type: String
value: staging.myapp.com
- name: replicas
type: Number
value: "2"
- name: db_password
type: Secret
value: <+secrets.getValue("staging_db_password")>
overrides:
manifests:
- manifest:
identifier: values_override
type: Values
spec:
store:
type: Github
spec:
connectorRef: github
repoName: config
branch: main
paths: [values-staging.yaml]
Environment Types
PreProduction- Dev, QA, staging, integration environmentsProduction- Live production environments (enables additional safeguards)
Multi-Environment Setup
Create dev, staging, and prod:
# Dev
environment:
name: Development
identifier: dev
type: PreProduction
variables:
- name: domain
type: String
value: dev.myapp.com
# Staging
environment:
name: Staging
identifier: staging
type: PreProduction
variables:
- name: domain
type: String
value: staging.myapp.com
# Production
environment:
name: Production
identifier: prod
type: Production
variables:
- name: domain
type: String
value: myapp.com
Creating via MCP
Call MCP tool: harness_create
Parameters:
resource_type: "environment"
org_id: "<organization>"
project_id: "<project>"
body: <environment YAML>
List environments:
Call MCP tool: harness_list
Parameters:
resource_type: "environment"
org_id: "<organization>"
project_id: "<project>"
Examples
- “Create dev, staging, and prod environments” - Generate 3 environments with appropriate types
- “Set up a production environment with overrides” - Production type with manifest overrides
Performance Notes
- When creating multiple environments (dev/staging/prod), ensure variable values are distinct per environment.
- Verify that manifest override paths exist in the referenced repository before creating.
- Use Production type only for live environments — it enables additional safeguards like deployment freezes.
Troubleshooting
DUPLICATE_IDENTIFIER- Environment exists; useharness_update- Production type enables deployment freeze and approval guardrails
Skill frontmatter
Work with this as data
Every skill here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for agent skills
4 MCP tools reach this
find_skillsBrowse and filter every skill in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
curl "https://apis.io/api/v1/skills/create-environment"
curl "https://apis.io/api/v1/skills?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.