Skip to main content
Glama
harness

Harness MCP Server

Official
by harness

harness_create

Create any Harness resource, including pipelines and input sets, by supplying a resource type and definition. Use YAML for complex pipelines or JSON for other resources.

Instructions

Create a Harness resource. For pipelines/input sets: pass body as a YAML string directly (recommended for complex definitions), or use body.yamlPipeline (YAML string), or body.pipeline (JSON object). For remote pipelines, pass git details in params: external Git (store_type='REMOTE', connector_ref, repo_name, branch, file_path) or Harness Code (store_type='REMOTE', is_harness_code_repo=true, repo_name, branch, file_path). For others: call harness_describe for the body format.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlNoA Harness UI URL — org, project, and supported resource_scope are extracted automatically
bodyYesThe resource definition body. For pipelines: pass a YAML string directly, or an object with yamlPipeline (YAML string) or pipeline (JSON object). For other resources: pass a JSON object
org_idNoOrganization identifier. Required for org- and project-scoped resources unless a Harness URL is passed. This session has no configured default (common in hosted/multi-user HTTP) — pass the current org_id on the first call. Do not omit it.
paramsNoAdditional parameters. For external Git pipelines: store_type='REMOTE', connector_ref, repo_name, branch, file_path, commit_msg. For Harness Code pipelines: store_type='REMOTE', is_harness_code_repo=true, repo_name, branch, file_path.
confirmNoSet to true to confirm the operation. Only required when the operation risk is medium_write or above (most write resources) AND the client cannot surface a confirmation prompt — e.g. managed MCP that does not advertise elicitation, or an elicitation that fails at runtime. Has no effect for low-risk creates. Does NOT override an explicit decline from a client that completed an elicitation prompt — a user's decline is authoritative.
project_idNoProject identifier. Required for project-scoped resources unless a Harness URL is passed. This session has no configured default (common in hosted/multi-user HTTP) — pass the current project_id on the first call. Do not omit it.
resource_typeYesThe type of resource to create
resource_scopeNoScope for the operation. account: account-level resources only — do not use account to skip a known org/project. org: org-level (org_id). project: org+project. Omit to use the resource's default scope. Auto-detected from url when present.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv3.2.31
    • changedInput schema / properties / resource_type / enum
      Previous value: -[
      -  "agent",
      -  "ai_budget",
      -  "ai_budget_override_request",
      -  "branch",
      -  "chaos_action",
      -  "chaos_dr_test",
      -  "chaos_experiment",
      -  "chaos_hub",
      -  "chaos_input_set",
      -  "chaos_k8s_infrastructure",
      -  "chaos_loadtest",
      -  "chaos_probe",
      -  "chaos_risk_scan",
      -  "chaos_service",
      -  "commit",
      -  "connector",
      -  "cost_budget",
      -  "cost_budget_group",
      -  "cost_category",
      -  "cost_perspective",
      -  "cost_perspective_folder",
      -  "database_instance",
      -  "database_schema",
      -  "delegate_token",
      -  "environment",
      -  "eval_annotation",
      -  "eval_dataset",
      -  "eval_dataset_item",
      -  "eval_metric",
      -  "eval_metric_set",
      -  "eval_metric_set_entry",
      -  "eval_registry_item",
      -  "eval_suite",
      -  "eval_suite_evaluation",
      -  "eval_target",
      -  "evaluation",
      -  "file_store",
      -  "fme_environment",
      -  "fme_feature_flag",
      -  "fme_feature_flag_definition",
      -  "fme_identity",
      -  "fme_metric",
      -  "fme_rule_based_segment",
      -  "fme_segment",
      -  "fme_segment_definition",
      -  "freeze_window",
      -  "gitops_application",
      -  "gitops_applicationset",
      -  "gitops_cluster_link",
      -  "iacm_module",
      -  "iacm_provider",
      -  "iacm_variable_set",
      -  "iacm_workspace",
      -  "idp_entity",
      -  "incident",
      -  "infrastructure",
      -  "input_set",
      -  "organization",
      -  "pipeline",
      -  "pipeline_v1",
      -  "policy",
      -  "policy_set",
      -  "pr_comment",
      -  "pr_reviewer",
      -  "project",
      -  "pull_request",
      -  "registry",
      -  "release_activity",
      -  "release_process",
      -  "repo_rule",
      -  "repository",
      -  "resource_group",
      -  "role",
      -  "role_assignment",
      -  "scorecard",
      -  "scorecard_check",
      -  "scs_remediation_pr",
      -  "security_exemption",
      -  "security_exemption_bulk",
      -  "service",
      -  "service_account",
      -  "service_override",
      -  "space_rule",
      -  "tag",
      -  "template",
      -  "template_v1",
      -  "trigger",
      -  "unit_metric",
      -  "user_group",
      -  "vibe_project"
      -]New value: +[
      +  "agent",
      +  "ai_budget",
      +  "ai_budget_override_request",
      +  "branch",
      +  "chaos_action",
      +  "chaos_dr_test",
      +  "chaos_experiment",
      +  "chaos_hub",
      +  "chaos_input_set",
      +  "chaos_k8s_infrastructure",
      +  "chaos_loadtest",
      +  "chaos_probe",
      +  "chaos_risk_scan",
      +  "chaos_service",
      +  "commit",
      +  "connector",
      +  "cost_budget",
      +  "cost_budget_group",
      +  "cost_category",
      +  "cost_perspective",
      +  "cost_perspective_folder",
      +  "database_instance",
      +  "database_schema",
      +  "delegate_token",
      +  "environment",
      +  "eval_annotation",
      +  "eval_dataset",
      +  "eval_dataset_item",
      +  "eval_metric",
      +  "eval_metric_set",
      +  "eval_metric_set_entry",
      +  "eval_registry_item",
      +  "eval_suite",
      +  "eval_suite_evaluation",
      +  "eval_target",
      +  "evaluation",
      +  "file_store",
      +  "fme_environment",
      +  "fme_experiment",
      +  "fme_feature_flag",
      +  "fme_feature_flag_definition",
      +  "fme_identity",
      +  "fme_metric",
      +  "fme_rule_based_segment",
      +  "fme_segment",
      +  "fme_segment_definition",
      +  "freeze_window",
      +  "gitops_app_project_mapping",
      +  "gitops_application",
      +  "gitops_applicationset",
      +  "gitops_cluster_link",
      +  "iacm_module",
      +  "iacm_provider",
      +  "iacm_variable_set",
      +  "iacm_workspace",
      +  "idp_entity",
      +  "incident",
      +  "infrastructure",
      +  "input_set",
      +  "organization",
      +  "pipeline",
      +  "pipeline_v1",
      +  "policy",
      +  "policy_set",
      +  "pr_comment",
      +  "pr_reviewer",
      +  "project",
      +  "pull_request",
      +  "registry",
      +  "release_activity",
      +  "release_process",
      +  "repo_rule",
      +  "repository",
      +  "resource_group",
      +  "role",
      +  "role_assignment",
      +  "scorecard",
      +  "scorecard_check",
      +  "scs_remediation_pr",
      +  "security_exemption",
      +  "security_exemption_bulk",
      +  "service",
      +  "service_account",
      +  "service_override",
      +  "space_rule",
      +  "tag",
      +  "template",
      +  "template_v1",
      +  "trigger",
      +  "unit_metric",
      +  "user_group",
      +  "vibe_project"
      +]
  2. Changed1 schema field changedv3.2.28
    • changedInput schema / properties / resource_type / enum
      Previous value: -[
      -  "agent",
      -  "branch",
      -  "chaos_action",
      -  "chaos_dr_test",
      -  "chaos_experiment",
      -  "chaos_hub",
      -  "chaos_input_set",
      -  "chaos_k8s_infrastructure",
      -  "chaos_loadtest",
      -  "chaos_probe",
      -  "chaos_risk_scan",
      -  "chaos_service",
      -  "commit",
      -  "connector",
      -  "cost_budget",
      -  "cost_budget_group",
      -  "cost_category",
      -  "cost_perspective",
      -  "cost_perspective_folder",
      -  "database_instance",
      -  "database_schema",
      -  "delegate_token",
      -  "environment",
      -  "eval_annotation",
      -  "eval_dataset",
      -  "eval_dataset_item",
      -  "eval_metric",
      -  "eval_metric_set",
      -  "eval_metric_set_entry",
      -  "eval_registry_item",
      -  "eval_suite",
      -  "eval_suite_evaluation",
      -  "eval_target",
      -  "evaluation",
      -  "file_store",
      -  "fme_environment",
      -  "fme_feature_flag",
      -  "fme_feature_flag_definition",
      -  "fme_identity",
      -  "fme_metric",
      -  "fme_rule_based_segment",
      -  "fme_segment",
      -  "fme_segment_definition",
      -  "freeze_window",
      -  "gitops_application",
      -  "gitops_applicationset",
      -  "gitops_cluster_link",
      -  "iacm_module",
      -  "iacm_provider",
      -  "iacm_variable_set",
      -  "iacm_workspace",
      -  "idp_entity",
      -  "incident",
      -  "infrastructure",
      -  "input_set",
      -  "organization",
      -  "pipeline",
      -  "pipeline_v1",
      -  "policy",
      -  "policy_set",
      -  "pr_comment",
      -  "pr_reviewer",
      -  "project",
      -  "pull_request",
      -  "registry",
      -  "release_activity",
      -  "release_process",
      -  "repo_rule",
      -  "repository",
      -  "resource_group",
      -  "role",
      -  "role_assignment",
      -  "scorecard",
      -  "scorecard_check",
      -  "scs_remediation_pr",
      -  "security_exemption",
      -  "security_exemption_bulk",
      -  "service",
      -  "service_account",
      -  "service_override",
      -  "space_rule",
      -  "tag",
      -  "template",
      -  "template_v1",
      -  "trigger",
      -  "unit_metric",
      -  "user_group",
      -  "vibe_project"
      -]New value: +[
      +  "agent",
      +  "ai_budget",
      +  "ai_budget_override_request",
      +  "branch",
      +  "chaos_action",
      +  "chaos_dr_test",
      +  "chaos_experiment",
      +  "chaos_hub",
      +  "chaos_input_set",
      +  "chaos_k8s_infrastructure",
      +  "chaos_loadtest",
      +  "chaos_probe",
      +  "chaos_risk_scan",
      +  "chaos_service",
      +  "commit",
      +  "connector",
      +  "cost_budget",
      +  "cost_budget_group",
      +  "cost_category",
      +  "cost_perspective",
      +  "cost_perspective_folder",
      +  "database_instance",
      +  "database_schema",
      +  "delegate_token",
      +  "environment",
      +  "eval_annotation",
      +  "eval_dataset",
      +  "eval_dataset_item",
      +  "eval_metric",
      +  "eval_metric_set",
      +  "eval_metric_set_entry",
      +  "eval_registry_item",
      +  "eval_suite",
      +  "eval_suite_evaluation",
      +  "eval_target",
      +  "evaluation",
      +  "file_store",
      +  "fme_environment",
      +  "fme_feature_flag",
      +  "fme_feature_flag_definition",
      +  "fme_identity",
      +  "fme_metric",
      +  "fme_rule_based_segment",
      +  "fme_segment",
      +  "fme_segment_definition",
      +  "freeze_window",
      +  "gitops_application",
      +  "gitops_applicationset",
      +  "gitops_cluster_link",
      +  "iacm_module",
      +  "iacm_provider",
      +  "iacm_variable_set",
      +  "iacm_workspace",
      +  "idp_entity",
      +  "incident",
      +  "infrastructure",
      +  "input_set",
      +  "organization",
      +  "pipeline",
      +  "pipeline_v1",
      +  "policy",
      +  "policy_set",
      +  "pr_comment",
      +  "pr_reviewer",
      +  "project",
      +  "pull_request",
      +  "registry",
      +  "release_activity",
      +  "release_process",
      +  "repo_rule",
      +  "repository",
      +  "resource_group",
      +  "role",
      +  "role_assignment",
      +  "scorecard",
      +  "scorecard_check",
      +  "scs_remediation_pr",
      +  "security_exemption",
      +  "security_exemption_bulk",
      +  "service",
      +  "service_account",
      +  "service_override",
      +  "space_rule",
      +  "tag",
      +  "template",
      +  "template_v1",
      +  "trigger",
      +  "unit_metric",
      +  "user_group",
      +  "vibe_project"
      +]
  3. Changed1 schema field changedv3.2.27
    • changedInput schema / properties / resource_type / enum
      Previous value: -[
      -  "agent",
      -  "branch",
      -  "chaos_action",
      -  "chaos_dr_test",
      -  "chaos_experiment",
      -  "chaos_hub",
      -  "chaos_input_set",
      -  "chaos_k8s_infrastructure",
      -  "chaos_loadtest",
      -  "chaos_probe",
      -  "chaos_risk_scan",
      -  "chaos_service",
      -  "commit",
      -  "connector",
      -  "cost_budget",
      -  "cost_budget_group",
      -  "cost_category",
      -  "cost_perspective",
      -  "cost_perspective_folder",
      -  "database_instance",
      -  "database_schema",
      -  "delegate_token",
      -  "environment",
      -  "eval_annotation",
      -  "eval_dataset",
      -  "eval_dataset_item",
      -  "eval_metric",
      -  "eval_metric_set",
      -  "eval_metric_set_entry",
      -  "eval_registry_item",
      -  "eval_suite",
      -  "eval_suite_evaluation",
      -  "eval_target",
      -  "evaluation",
      -  "file_store",
      -  "fme_environment",
      -  "fme_feature_flag",
      -  "fme_feature_flag_definition",
      -  "fme_identity",
      -  "fme_rule_based_segment",
      -  "fme_segment",
      -  "fme_segment_definition",
      -  "freeze_window",
      -  "gitops_application",
      -  "gitops_applicationset",
      -  "gitops_cluster_link",
      -  "iacm_module",
      -  "iacm_provider",
      -  "iacm_variable_set",
      -  "iacm_workspace",
      -  "idp_entity",
      -  "incident",
      -  "infrastructure",
      -  "input_set",
      -  "organization",
      -  "pipeline",
      -  "pipeline_v1",
      -  "policy",
      -  "policy_set",
      -  "pr_comment",
      -  "pr_reviewer",
      -  "project",
      -  "pull_request",
      -  "release_activity",
      -  "release_process",
      -  "repo_rule",
      -  "repository",
      -  "resource_group",
      -  "role",
      -  "role_assignment",
      -  "scorecard",
      -  "scorecard_check",
      -  "scs_remediation_pr",
      -  "security_exemption",
      -  "security_exemption_bulk",
      -  "service",
      -  "service_account",
      -  "service_override",
      -  "space_rule",
      -  "tag",
      -  "template",
      -  "template_v1",
      -  "trigger",
      -  "unit_metric",
      -  "user_group",
      -  "vibe_project"
      -]New value: +[
      +  "agent",
      +  "branch",
      +  "chaos_action",
      +  "chaos_dr_test",
      +  "chaos_experiment",
      +  "chaos_hub",
      +  "chaos_input_set",
      +  "chaos_k8s_infrastructure",
      +  "chaos_loadtest",
      +  "chaos_probe",
      +  "chaos_risk_scan",
      +  "chaos_service",
      +  "commit",
      +  "connector",
      +  "cost_budget",
      +  "cost_budget_group",
      +  "cost_category",
      +  "cost_perspective",
      +  "cost_perspective_folder",
      +  "database_instance",
      +  "database_schema",
      +  "delegate_token",
      +  "environment",
      +  "eval_annotation",
      +  "eval_dataset",
      +  "eval_dataset_item",
      +  "eval_metric",
      +  "eval_metric_set",
      +  "eval_metric_set_entry",
      +  "eval_registry_item",
      +  "eval_suite",
      +  "eval_suite_evaluation",
      +  "eval_target",
      +  "evaluation",
      +  "file_store",
      +  "fme_environment",
      +  "fme_feature_flag",
      +  "fme_feature_flag_definition",
      +  "fme_identity",
      +  "fme_metric",
      +  "fme_rule_based_segment",
      +  "fme_segment",
      +  "fme_segment_definition",
      +  "freeze_window",
      +  "gitops_application",
      +  "gitops_applicationset",
      +  "gitops_cluster_link",
      +  "iacm_module",
      +  "iacm_provider",
      +  "iacm_variable_set",
      +  "iacm_workspace",
      +  "idp_entity",
      +  "incident",
      +  "infrastructure",
      +  "input_set",
      +  "organization",
      +  "pipeline",
      +  "pipeline_v1",
      +  "policy",
      +  "policy_set",
      +  "pr_comment",
      +  "pr_reviewer",
      +  "project",
      +  "pull_request",
      +  "registry",
      +  "release_activity",
      +  "release_process",
      +  "repo_rule",
      +  "repository",
      +  "resource_group",
      +  "role",
      +  "role_assignment",
      +  "scorecard",
      +  "scorecard_check",
      +  "scs_remediation_pr",
      +  "security_exemption",
      +  "security_exemption_bulk",
      +  "service",
      +  "service_account",
      +  "service_override",
      +  "space_rule",
      +  "tag",
      +  "template",
      +  "template_v1",
      +  "trigger",
      +  "unit_metric",
      +  "user_group",
      +  "vibe_project"
      +]
  4. Changed1 schema field changedv3.2.26
    • changedInput schema / properties / resource_type / enum
      Previous value: -[
      -  "agent",
      -  "branch",
      -  "chaos_action",
      -  "chaos_dr_test",
      -  "chaos_experiment",
      -  "chaos_hub",
      -  "chaos_input_set",
      -  "chaos_k8s_infrastructure",
      -  "chaos_loadtest",
      -  "chaos_probe",
      -  "chaos_risk_scan",
      -  "chaos_service",
      -  "commit",
      -  "connector",
      -  "cost_budget",
      -  "cost_budget_group",
      -  "cost_category",
      -  "cost_perspective",
      -  "cost_perspective_folder",
      -  "database_instance",
      -  "database_schema",
      -  "delegate_token",
      -  "environment",
      -  "eval_annotation",
      -  "eval_dataset",
      -  "eval_dataset_item",
      -  "eval_metric",
      -  "eval_metric_set",
      -  "eval_metric_set_entry",
      -  "eval_registry_item",
      -  "eval_suite",
      -  "eval_suite_evaluation",
      -  "eval_target",
      -  "evaluation",
      -  "file_store",
      -  "fme_environment",
      -  "fme_feature_flag",
      -  "fme_feature_flag_definition",
      -  "fme_identity",
      -  "fme_rule_based_segment",
      -  "fme_segment",
      -  "fme_segment_definition",
      -  "freeze_window",
      -  "gitops_application",
      -  "gitops_applicationset",
      -  "gitops_cluster_link",
      -  "iacm_module",
      -  "iacm_provider",
      -  "iacm_variable_set",
      -  "iacm_workspace",
      -  "idp_entity",
      -  "incident",
      -  "infrastructure",
      -  "input_set",
      -  "organization",
      -  "pipeline",
      -  "pipeline_v1",
      -  "policy",
      -  "policy_set",
      -  "pr_comment",
      -  "pr_reviewer",
      -  "project",
      -  "pull_request",
      -  "release_activity",
      -  "release_process",
      -  "repo_rule",
      -  "repository",
      -  "resource_group",
      -  "role",
      -  "role_assignment",
      -  "scorecard",
      -  "scorecard_check",
      -  "scs_remediation_pr",
      -  "security_exemption",
      -  "security_exemption_bulk",
      -  "service",
      -  "service_account",
      -  "service_override",
      -  "space_rule",
      -  "tag",
      -  "template",
      -  "template_v1",
      -  "trigger",
      -  "unit_metric",
      -  "user_group"
      -]New value: +[
      +  "agent",
      +  "branch",
      +  "chaos_action",
      +  "chaos_dr_test",
      +  "chaos_experiment",
      +  "chaos_hub",
      +  "chaos_input_set",
      +  "chaos_k8s_infrastructure",
      +  "chaos_loadtest",
      +  "chaos_probe",
      +  "chaos_risk_scan",
      +  "chaos_service",
      +  "commit",
      +  "connector",
      +  "cost_budget",
      +  "cost_budget_group",
      +  "cost_category",
      +  "cost_perspective",
      +  "cost_perspective_folder",
      +  "database_instance",
      +  "database_schema",
      +  "delegate_token",
      +  "environment",
      +  "eval_annotation",
      +  "eval_dataset",
      +  "eval_dataset_item",
      +  "eval_metric",
      +  "eval_metric_set",
      +  "eval_metric_set_entry",
      +  "eval_registry_item",
      +  "eval_suite",
      +  "eval_suite_evaluation",
      +  "eval_target",
      +  "evaluation",
      +  "file_store",
      +  "fme_environment",
      +  "fme_feature_flag",
      +  "fme_feature_flag_definition",
      +  "fme_identity",
      +  "fme_rule_based_segment",
      +  "fme_segment",
      +  "fme_segment_definition",
      +  "freeze_window",
      +  "gitops_application",
      +  "gitops_applicationset",
      +  "gitops_cluster_link",
      +  "iacm_module",
      +  "iacm_provider",
      +  "iacm_variable_set",
      +  "iacm_workspace",
      +  "idp_entity",
      +  "incident",
      +  "infrastructure",
      +  "input_set",
      +  "organization",
      +  "pipeline",
      +  "pipeline_v1",
      +  "policy",
      +  "policy_set",
      +  "pr_comment",
      +  "pr_reviewer",
      +  "project",
      +  "pull_request",
      +  "release_activity",
      +  "release_process",
      +  "repo_rule",
      +  "repository",
      +  "resource_group",
      +  "role",
      +  "role_assignment",
      +  "scorecard",
      +  "scorecard_check",
      +  "scs_remediation_pr",
      +  "security_exemption",
      +  "security_exemption_bulk",
      +  "service",
      +  "service_account",
      +  "service_override",
      +  "space_rule",
      +  "tag",
      +  "template",
      +  "template_v1",
      +  "trigger",
      +  "unit_metric",
      +  "user_group",
      +  "vibe_project"
      +]
  5. Changed3 schema fields changedv3.2.22
    • changedInput schema / properties / org_id / description
      Previous value: -"Organization identifier (overrides default)"New value: +"Organization identifier. Required for org- and project-scoped resources unless a Harness URL is passed. This session has no configured default (common in hosted/multi-user HTTP) — pass the current org_id on the first call. Do not omit it."
    • changedInput schema / properties / project_id / description
      Previous value: -"Project identifier (overrides default)"New value: +"Project identifier. Required for project-scoped resources unless a Harness URL is passed. This session has no configured default (common in hosted/multi-user HTTP) — pass the current project_id on the first call. Do not omit it."
    • changedInput schema / properties / resource_scope / description
      Previous value: -"Scope for the operation. account: omit org/project (e.g. /v1/templates). org: org only. project: org+project. Auto-detected from url when present."New value: +"Scope for the operation. account: account-level resources only — do not use account to skip a known org/project. org: org-level (org_id). project: org+project. Omit to use the resource's default scope. Auto-detected from url when present."
  6. Changed1 schema field changedv3.2.21
    • changedInput schema / properties / resource_type / enum
      Previous value: -[
      -  "agent",
      -  "branch",
      -  "chaos_action",
      -  "chaos_dr_test",
      -  "chaos_experiment",
      -  "chaos_hub",
      -  "chaos_input_set",
      -  "chaos_k8s_infrastructure",
      -  "chaos_loadtest",
      -  "chaos_probe",
      -  "chaos_risk_scan",
      -  "chaos_service",
      -  "commit",
      -  "connector",
      -  "cost_budget",
      -  "cost_budget_group",
      -  "cost_category",
      -  "cost_perspective",
      -  "cost_perspective_folder",
      -  "database_instance",
      -  "database_schema",
      -  "delegate_token",
      -  "environment",
      -  "eval_annotation",
      -  "eval_dataset",
      -  "eval_dataset_item",
      -  "eval_metric",
      -  "eval_metric_set",
      -  "eval_metric_set_entry",
      -  "eval_registry_item",
      -  "eval_suite",
      -  "eval_suite_evaluation",
      -  "eval_target",
      -  "evaluation",
      -  "file_store",
      -  "fme_feature_flag",
      -  "fme_feature_flag_definition",
      -  "fme_identity",
      -  "fme_rule_based_segment",
      -  "fme_segment",
      -  "fme_segment_definition",
      -  "freeze_window",
      -  "gitops_application",
      -  "gitops_applicationset",
      -  "gitops_cluster_link",
      -  "iacm_module",
      -  "iacm_variable_set",
      -  "iacm_workspace",
      -  "idp_entity",
      -  "incident",
      -  "infrastructure",
      -  "input_set",
      -  "organization",
      -  "pipeline",
      -  "pipeline_v1",
      -  "policy",
      -  "policy_set",
      -  "pr_comment",
      -  "pr_reviewer",
      -  "project",
      -  "pull_request",
      -  "repo_rule",
      -  "repository",
      -  "resource_group",
      -  "role",
      -  "role_assignment",
      -  "scorecard",
      -  "scorecard_check",
      -  "scs_remediation_pr",
      -  "security_exemption",
      -  "security_exemption_bulk",
      -  "service",
      -  "service_account",
      -  "service_override",
      -  "space_rule",
      -  "tag",
      -  "template",
      -  "template_v1",
      -  "trigger",
      -  "unit_metric",
      -  "user_group"
      -]New value: +[
      +  "agent",
      +  "branch",
      +  "chaos_action",
      +  "chaos_dr_test",
      +  "chaos_experiment",
      +  "chaos_hub",
      +  "chaos_input_set",
      +  "chaos_k8s_infrastructure",
      +  "chaos_loadtest",
      +  "chaos_probe",
      +  "chaos_risk_scan",
      +  "chaos_service",
      +  "commit",
      +  "connector",
      +  "cost_budget",
      +  "cost_budget_group",
      +  "cost_category",
      +  "cost_perspective",
      +  "cost_perspective_folder",
      +  "database_instance",
      +  "database_schema",
      +  "delegate_token",
      +  "environment",
      +  "eval_annotation",
      +  "eval_dataset",
      +  "eval_dataset_item",
      +  "eval_metric",
      +  "eval_metric_set",
      +  "eval_metric_set_entry",
      +  "eval_registry_item",
      +  "eval_suite",
      +  "eval_suite_evaluation",
      +  "eval_target",
      +  "evaluation",
      +  "file_store",
      +  "fme_environment",
      +  "fme_feature_flag",
      +  "fme_feature_flag_definition",
      +  "fme_identity",
      +  "fme_rule_based_segment",
      +  "fme_segment",
      +  "fme_segment_definition",
      +  "freeze_window",
      +  "gitops_application",
      +  "gitops_applicationset",
      +  "gitops_cluster_link",
      +  "iacm_module",
      +  "iacm_provider",
      +  "iacm_variable_set",
      +  "iacm_workspace",
      +  "idp_entity",
      +  "incident",
      +  "infrastructure",
      +  "input_set",
      +  "organization",
      +  "pipeline",
      +  "pipeline_v1",
      +  "policy",
      +  "policy_set",
      +  "pr_comment",
      +  "pr_reviewer",
      +  "project",
      +  "pull_request",
      +  "release_activity",
      +  "release_process",
      +  "repo_rule",
      +  "repository",
      +  "resource_group",
      +  "role",
      +  "role_assignment",
      +  "scorecard",
      +  "scorecard_check",
      +  "scs_remediation_pr",
      +  "security_exemption",
      +  "security_exemption_bulk",
      +  "service",
      +  "service_account",
      +  "service_override",
      +  "space_rule",
      +  "tag",
      +  "template",
      +  "template_v1",
      +  "trigger",
      +  "unit_metric",
      +  "user_group"
      +]
  7. Changed1 schema field changedv3.2.20
    • changedInput schema / properties / resource_type / enum
      Previous value: -[
      -  "agent",
      -  "branch",
      -  "chaos_action",
      -  "chaos_dr_test",
      -  "chaos_experiment",
      -  "chaos_hub",
      -  "chaos_input_set",
      -  "chaos_loadtest",
      -  "chaos_probe",
      -  "chaos_risk_scan",
      -  "commit",
      -  "connector",
      -  "cost_category",
      -  "cost_perspective",
      -  "cost_perspective_folder",
      -  "database_instance",
      -  "database_schema",
      -  "delegate_token",
      -  "environment",
      -  "eval_annotation",
      -  "eval_dataset",
      -  "eval_dataset_item",
      -  "eval_metric",
      -  "eval_metric_set",
      -  "eval_metric_set_entry",
      -  "eval_registry_item",
      -  "eval_suite",
      -  "eval_suite_evaluation",
      -  "eval_target",
      -  "evaluation",
      -  "file_store",
      -  "fme_feature_flag",
      -  "fme_feature_flag_definition",
      -  "fme_identity",
      -  "fme_rule_based_segment",
      -  "freeze_window",
      -  "gitops_application",
      -  "gitops_applicationset",
      -  "gitops_cluster_link",
      -  "idp_entity",
      -  "incident",
      -  "infrastructure",
      -  "input_set",
      -  "organization",
      -  "pipeline",
      -  "pipeline_v1",
      -  "policy",
      -  "policy_set",
      -  "pr_comment",
      -  "pr_reviewer",
      -  "project",
      -  "pull_request",
      -  "repo_rule",
      -  "repository",
      -  "resource_group",
      -  "role",
      -  "role_assignment",
      -  "scorecard",
      -  "scorecard_check",
      -  "scs_remediation_pr",
      -  "security_exemption",
      -  "security_exemption_bulk",
      -  "service",
      -  "service_account",
      -  "service_override",
      -  "space_rule",
      -  "tag",
      -  "template",
      -  "template_v1",
      -  "trigger",
      -  "unit_metric",
      -  "user_group"
      -]New value: +[
      +  "agent",
      +  "branch",
      +  "chaos_action",
      +  "chaos_dr_test",
      +  "chaos_experiment",
      +  "chaos_hub",
      +  "chaos_input_set",
      +  "chaos_k8s_infrastructure",
      +  "chaos_loadtest",
      +  "chaos_probe",
      +  "chaos_risk_scan",
      +  "chaos_service",
      +  "commit",
      +  "connector",
      +  "cost_budget",
      +  "cost_budget_group",
      +  "cost_category",
      +  "cost_perspective",
      +  "cost_perspective_folder",
      +  "database_instance",
      +  "database_schema",
      +  "delegate_token",
      +  "environment",
      +  "eval_annotation",
      +  "eval_dataset",
      +  "eval_dataset_item",
      +  "eval_metric",
      +  "eval_metric_set",
      +  "eval_metric_set_entry",
      +  "eval_registry_item",
      +  "eval_suite",
      +  "eval_suite_evaluation",
      +  "eval_target",
      +  "evaluation",
      +  "file_store",
      +  "fme_feature_flag",
      +  "fme_feature_flag_definition",
      +  "fme_identity",
      +  "fme_rule_based_segment",
      +  "fme_segment",
      +  "fme_segment_definition",
      +  "freeze_window",
      +  "gitops_application",
      +  "gitops_applicationset",
      +  "gitops_cluster_link",
      +  "iacm_module",
      +  "iacm_variable_set",
      +  "iacm_workspace",
      +  "idp_entity",
      +  "incident",
      +  "infrastructure",
      +  "input_set",
      +  "organization",
      +  "pipeline",
      +  "pipeline_v1",
      +  "policy",
      +  "policy_set",
      +  "pr_comment",
      +  "pr_reviewer",
      +  "project",
      +  "pull_request",
      +  "repo_rule",
      +  "repository",
      +  "resource_group",
      +  "role",
      +  "role_assignment",
      +  "scorecard",
      +  "scorecard_check",
      +  "scs_remediation_pr",
      +  "security_exemption",
      +  "security_exemption_bulk",
      +  "service",
      +  "service_account",
      +  "service_override",
      +  "space_rule",
      +  "tag",
      +  "template",
      +  "template_v1",
      +  "trigger",
      +  "unit_metric",
      +  "user_group"
      +]
  8. Changed1 schema field changedv3.2.17
    • changedInput schema / properties / resource_type / enum
      Previous value: -[
      -  "agent",
      -  "branch",
      -  "chaos_action",
      -  "chaos_dr_test",
      -  "chaos_experiment",
      -  "chaos_hub",
      -  "chaos_input_set",
      -  "chaos_loadtest",
      -  "chaos_probe",
      -  "commit",
      -  "connector",
      -  "cost_category",
      -  "cost_perspective",
      -  "cost_perspective_folder",
      -  "database_instance",
      -  "database_schema",
      -  "delegate_token",
      -  "environment",
      -  "eval_annotation",
      -  "eval_dataset",
      -  "eval_dataset_item",
      -  "eval_metric",
      -  "eval_metric_set",
      -  "eval_metric_set_entry",
      -  "eval_registry_item",
      -  "eval_suite",
      -  "eval_suite_evaluation",
      -  "eval_target",
      -  "evaluation",
      -  "file_store",
      -  "fme_feature_flag",
      -  "fme_feature_flag_definition",
      -  "fme_identity",
      -  "fme_rule_based_segment",
      -  "freeze_window",
      -  "gitops_application",
      -  "gitops_applicationset",
      -  "gitops_cluster_link",
      -  "idp_entity",
      -  "incident",
      -  "infrastructure",
      -  "input_set",
      -  "organization",
      -  "pipeline",
      -  "pipeline_v1",
      -  "policy",
      -  "policy_set",
      -  "pr_comment",
      -  "pr_reviewer",
      -  "project",
      -  "pull_request",
      -  "repo_rule",
      -  "repository",
      -  "resource_group",
      -  "role",
      -  "role_assignment",
      -  "scorecard",
      -  "scorecard_check",
      -  "scs_remediation_pr",
      -  "security_exemption",
      -  "security_exemption_bulk",
      -  "service",
      -  "service_account",
      -  "service_override",
      -  "space_rule",
      -  "tag",
      -  "template",
      -  "template_v1",
      -  "trigger",
      -  "unit_metric",
      -  "user_group"
      -]New value: +[
      +  "agent",
      +  "branch",
      +  "chaos_action",
      +  "chaos_dr_test",
      +  "chaos_experiment",
      +  "chaos_hub",
      +  "chaos_input_set",
      +  "chaos_loadtest",
      +  "chaos_probe",
      +  "chaos_risk_scan",
      +  "commit",
      +  "connector",
      +  "cost_category",
      +  "cost_perspective",
      +  "cost_perspective_folder",
      +  "database_instance",
      +  "database_schema",
      +  "delegate_token",
      +  "environment",
      +  "eval_annotation",
      +  "eval_dataset",
      +  "eval_dataset_item",
      +  "eval_metric",
      +  "eval_metric_set",
      +  "eval_metric_set_entry",
      +  "eval_registry_item",
      +  "eval_suite",
      +  "eval_suite_evaluation",
      +  "eval_target",
      +  "evaluation",
      +  "file_store",
      +  "fme_feature_flag",
      +  "fme_feature_flag_definition",
      +  "fme_identity",
      +  "fme_rule_based_segment",
      +  "freeze_window",
      +  "gitops_application",
      +  "gitops_applicationset",
      +  "gitops_cluster_link",
      +  "idp_entity",
      +  "incident",
      +  "infrastructure",
      +  "input_set",
      +  "organization",
      +  "pipeline",
      +  "pipeline_v1",
      +  "policy",
      +  "policy_set",
      +  "pr_comment",
      +  "pr_reviewer",
      +  "project",
      +  "pull_request",
      +  "repo_rule",
      +  "repository",
      +  "resource_group",
      +  "role",
      +  "role_assignment",
      +  "scorecard",
      +  "scorecard_check",
      +  "scs_remediation_pr",
      +  "security_exemption",
      +  "security_exemption_bulk",
      +  "service",
      +  "service_account",
      +  "service_override",
      +  "space_rule",
      +  "tag",
      +  "template",
      +  "template_v1",
      +  "trigger",
      +  "unit_metric",
      +  "user_group"
      +]
  9. First observedv3.2.10

TDQS

A3.6/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, idempotentHint=false, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds the mutually exclusive body-format contract and the remote-pipeline git requirements, which is useful. It says nothing about failure modes, name-collision behavior, or permission requirements for a mutating tool across many resource types, so it only modestly exceeds the annotation baseline.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the purpose, then layered detail on pipelines, remote pipelines, and the fallback. Dense but each sentence carries routing information; the parenthetical option lists are somewhat heavy but not padding.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so return values need no explanation. For a tool spanning dozens of resource types, delegating non-pipeline body formats to harness_describe is a reasonable completeness strategy, and required org_id/project_id behavior is carried by the schema. Minor gap: no note on permission or scope pitfalls beyond the resource_scope enum text.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% and both enums (resource_type, resource_scope) are self-documenting, so the baseline is 3. The description largely restates the body/params formats already in the schema, with the only added value being the harness_describe pointer.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and broad resource ('Create a Harness resource') that is clearly distinct from harness_update, harness_get, and harness_delete. The scope is deliberately wide (90+ resource_type values), so it needs its sibling context rather than describing itself in isolation, but the purpose itself is unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives real routing guidance: use a YAML string for pipelines, structured body.pipeline/yamlPipeline variants, and specific param sets for external Git vs Harness Code remote pipelines. It also redirects to harness_describe for other resource bodies, which is a concrete alternative. It never states when NOT to use this (e.g. updating an existing resource instead), so it falls short of a 5.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.