Reference
MCP tools reference
Parameters and examples for the six read-only tools exposed by the Impact Gate MCP server.
On this page
Conventions#
All six tools are read-only (readOnlyHint: true, destructiveHint: false) and return tenant-scoped evidence. Identifiers such as workspaceId, apiId, functionId, and findingId come from earlier tool results or from your Impact Gate dashboard; repositoryFullName is the GitHub form owner/repository.
Every result carries an evidence envelope: a requestId, a generatedAt timestamp, and a source object with the workspaceId, snapshotId, indexedAt time, and the indexed repositories with their exact commits. Use these to judge freshness before acting on an answer.
{
"schemaVersion": 1,
"requestId": "req_8acbcfb7-1b7b-4ac1-8032-0bdc03b98094",
"generatedAt": "2026-10-16T20:09:46.425Z",
"source": {
"workspaceId": "3fb27312-fc17-42c2-a71c-52b31af510fd",
"snapshotId": "3fb27312-fc17-42c2-a71c-52b31af510fd:689",
"indexedAt": "2026-10-15T05:57:24.206Z",
"indexedRepositories": [
{ "fullName": "impact-gate/ig-lab-catalog-api", "sha": "ad3dfeb7e6ced1f70164a09c8fac927593aec793", "status": "indexed" }
]
}
}impactgate_workspace_status#
Returns the authorized workspace and indexed repository status. A good first call after connecting, and the way to get workspaceId values for the other tools.
| Parameter | Type | Notes |
|---|---|---|
| workspaceId | string | Optional. Selects the workspace directly. |
| repositoryFullName | string | Optional. Selects the workspace by an indexed repository, e.g. acme/catalog-api. |
| remoteUrl | string (uri) | Optional. Selects the workspace by a repository remote URL. |
{
"workspaceId": "3fb27312-fc17-42c2-a71c-52b31af510fd"
}With no arguments and exactly one authorized workspace, the server uses it. With several, it returns the workspace selection error listing the choices.
impactgate_analyze_change#
Returns persisted deterministic impact findings for a bounded change: what a contract change in one repository does to the indexed consumers that call it.
| Parameter | Type | Notes |
|---|---|---|
| repositoryFullName | string | Required. The API provider repository, owner/name. |
| workspaceId | string | Optional when the repository selects the workspace. |
| baseSha / headSha | string | The commits to compare, e.g. from a pull request. |
| pullRequestNumber | integer | Optional PR reference for the change. |
| changedFiles | array | Optional paths that bound the change. |
| diff | string (max 256 KB) | Optional unified diff of the contract change. |
| baseSpec / headSpec | object | Optional OpenAPI documents at the two commits. |
| focus | string | Optional narrowing hint, such as one endpoint or field. |
{
"repositoryFullName": "impact-gate/ig-lab-catalog-api",
"baseSha": "ad3dfeb7e6ced1f70164a09c8fac927593aec793",
"headSha": "9f3c1a2b4d5e6f708192a3b4c5d6e7f8091a2b3c",
"focus": "GET /products/{id}"
}impactgate_find_consumers#
Finds authorized static and runtime consumers of an API operation - which indexed applications call an endpoint or read a field, with source evidence.
| Parameter | Type | Notes |
|---|---|---|
| apiId | string | Identifies the API, e.g. from workspace status or an earlier result. |
| endpoint | object | Optional operation selector such as method and path. |
| fieldPath | string | Optional field within the operation's contract. |
| repositoryFullName / workspaceId | string | Optional scoping to one repository or workspace. |
| includeUnresolved | boolean | Include candidate consumers that could not be fully resolved. |
{
"workspaceId": "3fb27312-fc17-42c2-a71c-52b31af510fd",
"endpoint": { "method": "GET", "path": "/products/{id}" },
"includeUnresolved": true
}impactgate_get_api_flow#
Returns the persisted provider flow for one API: the handler and function chain, partial boundaries, and the source evidence behind each step.
| Parameter | Type | Notes |
|---|---|---|
| apiId | string | Required. Identifies the API. |
| workspaceId | string | Optional scoping. |
| includeExecutionTree | boolean | Include the execution tree detail. |
| includePathAnalysis | boolean | Include per-path analysis. |
impactgate_get_function_usage#
Returns static API-attributed and measured function-entry usage separately - which functions participate in serving API traffic and who calls them.
| Parameter | Type | Notes |
|---|---|---|
| functionId | string | Identifies the function, e.g. from an API flow result. |
| filePath / line | string / integer | Alternative locator inside an indexed repository. |
| repositoryFullName / workspaceId | string | Optional scoping. |
| includeCallers / includeCallees | boolean | Expand the result in either direction. |
impactgate_verify_fix#
Compares current persisted findings with a bounded proposed fix, without mutating anything - whether the change you are about to make clears the findings it is meant to address.
| Parameter | Type | Notes |
|---|---|---|
| repositoryFullName | string | Required. The repository the fix applies to. |
| findingId | string | The persisted finding to check, from an earlier analysis. |
| workspaceId | string | Optional scoping. |
| baseSha / headSha | string | Commits bounding the proposed fix. |
| changedFiles / diff | array / string (max 256 KB) | The proposed change content. |
| baseSpec / headSpec | object | Optional OpenAPI documents before and after. |