generated: '2026-09-12' method: derived source: openapi/_original/harness-apis-openapi.yaml (2,883 operations, fetched from https://apidocs.harness.io/_bundle/index.yaml) bound against the tool and resource-type registry documented at https://github.com/harness/mcp-server provider: Harness providerId: harness binding_model: 'Harness MCP is registry-dispatched, so the usual one-tool-per-operation crosswalk does not apply. The bindable unit is the PAIR (tool, resource_type): harness_list + resource_type="pipeline" resolves to the pipeline list operation, harness_get + resource_type="pipeline" to the pipeline read operation, and so on. Rows below bind the pair, and every REST operationId cited was verified present in the saved spec. The live MCP tools/list is auth-gated (HTTP 401), so these bindings are derived from the provider''s documented resource registry and confirmed operation names, not from a fetched inputSchema — confidence is set accordingly.' surfaces: openapi: file: openapi/_original/harness-apis-openapi.yaml source: https://apidocs.harness.io/_bundle/index.yaml operations: 2883 gated: false mcp: url: https://mcp.harness.io/mcp gated: true gate: OAuth (id.harness.io/idp/realms/HarnessIDP), per-account enablement by Harness Support graphql: note: Harness FirstGen shipped a GraphQL API (referenced in the platform rate-limit doc as "GraphQL APIs (FirstGen only)"). It is not part of the NextGen contract and no introspectable public endpoint was found; not crosswalked. gated: true crosswalk: - tool: harness_list resource_type: organization category: platform rest: - getOrganizationList - get-organizations binding: pair confidence: high - tool: harness_get resource_type: organization category: platform rest: - getOrganization - get-organization binding: pair confidence: high - tool: harness_create resource_type: organization category: platform rest: - postOrganization - create-organization binding: pair confidence: high - tool: harness_update resource_type: organization category: platform rest: - putOrganization - update-organization binding: pair confidence: high note: REST update accepts an optional If-Match header for optimistic concurrency. - tool: harness_delete resource_type: organization category: platform rest: - deleteOrganization - delete-organization binding: pair confidence: high - tool: harness_list resource_type: project category: platform rest: - getProjectList binding: pair confidence: high - tool: harness_get resource_type: project category: platform rest: - getProject binding: pair confidence: high - tool: harness_create resource_type: project category: platform rest: - postProject binding: pair confidence: high - tool: harness_update resource_type: project category: platform rest: - putProject binding: pair confidence: high - tool: harness_delete resource_type: project category: platform rest: - deleteProject binding: pair confidence: high - tool: harness_list resource_type: pipeline category: pipelines rest: - getPipelineList binding: pair confidence: high note: REST list is a POST with a filter body, not a GET. - tool: harness_get resource_type: pipeline category: pipelines rest: - getPipeline binding: pair confidence: high - tool: harness_create resource_type: pipeline category: pipelines rest: - postPipelineV2 binding: pair confidence: high note: postPipeline (v1) is marked deprecated in the spec; the v2 operation is the live one. - tool: harness_update resource_type: pipeline category: pipelines rest: - updatePipelineV2 binding: pair confidence: high note: updatePipeline (v1) is marked deprecated in the spec. - tool: harness_delete resource_type: pipeline category: pipelines rest: - deletePipeline binding: pair confidence: high - tool: harness_execute resource_type: pipeline action: run category: pipelines rest: - postPipelineExecuteWithInputSetYaml binding: pair confidence: high - tool: harness_execute resource_type: pipeline action: retry category: pipelines rest: - retryPipeline - retryPipelineV2 - retry-pipeline-with-inputset-pipeline-yaml binding: pair confidence: medium note: Three REST retry surfaces exist (v1, v2 and the v1-generation path); the tool exposes one retry action. - tool: harness_list resource_type: execution category: pipelines rest: - getListOfExecutions binding: pair confidence: high - tool: harness_get resource_type: execution category: pipelines rest: - getExecutionDetailV2 binding: pair confidence: high note: getExecutionDetail is marked deprecated in the spec; v2 is the live read. - tool: harness_diagnose resource_type: pipeline category: pipelines rest: - getExecutionDetailV2 binding: composite confidence: low note: Diagnose is a composite — it reads execution detail, walks stage/step nodes and fetches log blobs. No single REST operation corresponds to it. - tool: harness_list resource_type: service category: services rest: - getServiceList binding: pair confidence: high - tool: harness_get resource_type: service category: services rest: - getServiceV2 binding: pair confidence: high - tool: harness_create resource_type: service category: services rest: - createServiceV2 binding: pair confidence: high - tool: harness_update resource_type: service category: services rest: - updateServiceV2 binding: pair confidence: high - tool: harness_delete resource_type: service category: services rest: - deleteServiceV2 binding: pair confidence: high - tool: harness_list resource_type: environment category: environments rest: - getEnvironmentList binding: pair confidence: high - tool: harness_get resource_type: environment category: environments rest: - getEnvironmentV2 binding: pair confidence: high - tool: harness_create resource_type: environment category: environments rest: - createEnvironmentV2 binding: pair confidence: high - tool: harness_update resource_type: environment category: environments rest: - updateEnvironmentV2 binding: pair confidence: high - tool: harness_delete resource_type: environment category: environments rest: - deleteEnvironmentV2 binding: pair confidence: high - tool: harness_list resource_type: connector category: connectors rest: - getConnectorList binding: pair confidence: medium note: getConnectorList is flagged deprecated in the spec while remaining the documented list surface. - tool: harness_get resource_type: connector category: connectors rest: - getConnector binding: pair confidence: high - tool: harness_create resource_type: connector category: connectors rest: - createConnector binding: pair confidence: high - tool: harness_update resource_type: connector category: connectors rest: - updateConnector binding: pair confidence: high - tool: harness_delete resource_type: connector category: connectors rest: - deleteConnector binding: pair confidence: high - tool: harness_list resource_type: secret category: secrets rest: - listSecretsV2 - get-account-scoped-secrets - get-org-scoped-secrets - get-project-scoped-secrets binding: pair confidence: medium note: listSecretsV2 is deprecated in the spec; the v1-generation scoped operations are the successors. - tool: harness_get resource_type: secret category: secrets rest: - getSecretV2 - get-account-scoped-secret - get-org-scoped-secret - get-project-scoped-secret binding: pair confidence: high - tool: harness_create resource_type: secret category: secrets rest: - postSecret - create-account-scoped-secret - create-org-scoped-secret - create-project-scoped-secret binding: pair confidence: high - tool: harness_update resource_type: secret category: secrets rest: - putSecret - update-account-scoped-secret - update-org-scoped-secret - update-project-scoped-secret binding: pair confidence: high - tool: harness_delete resource_type: secret category: secrets rest: - deleteSecretV2 - delete-account-scoped-secret - delete-org-scoped-secret - delete-project-scoped-secret binding: pair confidence: high - tool: harness_list resource_type: feature_flag category: feature-flags rest: - GetAllFeatures binding: pair confidence: high - tool: harness_get resource_type: feature_flag category: feature-flags rest: - GetFeatureFlag binding: pair confidence: high - tool: harness_create resource_type: feature_flag category: feature-flags rest: - CreateFeatureFlag binding: pair confidence: high - tool: harness_execute resource_type: feature_flag action: toggle category: feature-flags rest: - PatchFeature - PutFeatureFlag binding: pair confidence: medium - tool: harness_delete resource_type: feature_flag category: feature-flags rest: - DeleteFeatureFlag binding: pair confidence: high note: Reversible — RestoreFeatureFlag restores a deleted flag. - tool: harness_execute resource_type: gitops_application action: sync category: gitops rest: - AgentApplicationService_Rollback binding: partial confidence: low note: Rollback is the verified reversal operation on the GitOps agent application service; the sync operation itself was not name-matched with confidence and is left unbound rather than guessed. mcp_only: - tool: harness_describe reason: Returns the server's own local registry metadata — resource types, operations, fields, supportedScopes. There is no REST endpoint that publishes this registry. - tool: harness_search reason: Composite. Semantic routing over local ONNX embeddings narrows the resource-type set, then scatter-gathers across many REST list operations. No single REST search exists. - tool: harness_status reason: Composite project health dashboard assembled from several execution and dashboard reads. - tool: harness_schema reason: Serves bundled YAML/JSON Schema snapshots (and, for release resources, a live RMG /api/yamlSchema call). The bundled snapshots are not a public REST surface; the equivalent published artifacts are the JSON Schemas in json-schema/. rest_only: summary: The overwhelming majority of the REST surface has no dedicated tool NAME, because the registry design intends resource types to be reached through the 11 verbs. 247 of the 485 spec tags / roughly 2,883 operations are addressable through the registry; the remainder — notably the CCM analytics and dashboard reads, SEI metrics, WAAP, and the Harness Code low-level git plumbing — are reachable over REST only. examples: - operationId: saveSlsaVerification note: SLSA provenance verification — supply-chain surface, no registry verb. - operationId: uploadAttestation note: The only operation in the whole spec that accepts an Idempotency-Key header. - operationId: putHandleInterrupt note: Pipeline execution interrupt (abort/pause); the tool surface exposes retry, not interrupt. - operationId: triggerRollbackV3 note: Post-deployment instance rollback. coverage: rest_operations: 2883 mcp_tools: 11 mcp_resource_types: 247 crosswalk_rows: 46 high_confidence: 40 medium_confidence: 4 low_confidence: 2 mcp_only: 4 method_note: Rows cover the core platform, pipeline, delivery, secrets and feature-flag resources. They are a verified sample of the registry, not an exhaustive enumeration of all 247 resource types — exhaustive binding requires an authenticated tools/list.