MuleSoft Platform MCP Server

0.1.0

Overview

Statistics
122 Tools
0 Prompts
30 Resources
Unified MuleSoft Anypoint management console with AI agents, governance, and catalog discovery.

Transport

Kind
streamableHttp

Servers

  • https://omni.mulesoft.com/mcp/

Add Members to Team add_members_to_team idempotentopen-world

TOOL

Try it out

Arguments
Use this tool to add one or more existing platform users to an Anypoint Team. Write operation (idempotent — re-adding a member is a no-op). user_ids are platform user IDs, NOT emails — resolve emails to IDs with find_user_by_email first. membership_type is 'member' (default) or 'maintainer' and applies to every user in the call. Returns a per-user outcome so a partial failure reports which ids succeeded. Use for prompts like 'add these users to the Payments team', 'make user X a maintainer of team Y'. Example: add_members_to_team(team_id=<team_id>, user_ids=[<user_id>]).

Input Schema

json-schema
membership_type: string
organization_id: string | null
Anypoint organization ID owning the team. Resolves from the active session when omitted.
team_id: string
user_ids: array | null
Platform user IDs (NOT emails) to add; 1-100 per call. Resolve emails to IDs with find_user_by_email first.

Sample top agents and report their model configuration agents_with_models read-onlyopen-world

TOOL

Try it out

Arguments
Server-side rollup that absorbs the agent→model loop. Picks the top-N agents by request volume (`fetch_monitoring_drill_down(entity_type='agents')), calls view_agent_details per agent (capped at top_n, default 10, hard cap 20), aggregates their model configurations and returns a comparison. Use this for: 'which models are used the most across agents?', 'which models are underutilized or unused?', 'which agents use which LLM?'. Args: organization_id (required), top_n (default 10), agents (optional list of agent ids — if supplied, skips the top-N discovery and just walks these). Returns: {summary, agents: [{agent_id, name, model: {...}, model_id, model_provider}], model_distribution: {model_id: count}, errors: [...]}`.

Input Schema

json-schema
agents: array | string | null
organization_id *: string
top_n: integer

Apply Policy To Asset Instance apply_policy_to_instance

TOOL

Try it out

Arguments
Apply the selected policy to a SINGLE target asset instance using the provided configuration data. This is the tool for a provider-NATIVE policy (a Kong plugin name or an Apigee template ID, as selected via prepare_policy_creation) — those are NOT canonical templates and can only be applied one instance at a time, so loop this tool per instance if a native policy targets several. It is also the right choice for a single MuleSoft/Anypoint instance when you need fine per-instance control (order, pointcut, disabled). ONLY for a CANONICAL (Universal) policy — one returned by 'list_universal_policies' — that must be applied to MORE THAN ONE API instance at once, or across instances spanning different providers (mulesoft/anypoint, kong, apigee, azure, aws), prefer 'apply_universal_policy' instead: it fans the canonical template out across every instance in one call and creates the native policy on each provider's control plane. Do NOT route a native plugin/template id to 'apply_universal_policy' — it only accepts canonical template names. For a non-MuleSoft external gateway (provider='kong'/'apigee'/'azure'), set provider and pass the numeric api_instance_id plus the template's Exchange coordinates via asset (group_id + asset_id + asset_version, from get_policy_template_form) — the policy is applied through the Anypoint API Manager Universal API (gateway_id is not used on this path). injection_point is optional; omit it to let APIM default it from the template. This routing is gated per organization; a closed gate returns a structured error.

Input Schema

json-schema
api_instance_id: string
asset: any | null
configuration_data: any | null
Policy configuration matching the template schema from get_policy_template_form. Validated by APIM against the template.
disabled: boolean | null
Apply the policy in a disabled state. Omit to apply it enabled.
environment_id: string
gateway_id: string | null
Gateway ID. Not used on the external-gateway Universal API path.
injection_point: string | null
Optional injection point. Omit to let APIM default it from the template.
label: string | null
Optional human-readable label for the applied policy.
order: integer | null
Explicit position of the policy in the chain. Omit to let APIM assign the next order.
organization_id *: string
Anypoint organization (business group) ID that owns the instance.
pointcut_data: any | null
Optional pointcut (method / URI) scoping for the policy.
policy_template_id: string | null
Policy template ID being applied.
provider: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Apply Universal Policy apply_universal_policy open-world

TOOL

Try it out

Arguments
Apply a Universal (canonical) policy to one or more API instances across any provider in one call — each instance gets a native policy created on its own provider's control plane. This is the REQUIRED path whenever the policy targets MORE THAN ONE API instance (e.g. 'apply CORS to these 3 APIs') or the instances span different providers (mulesoft/anypoint, kong, apigee, azure, aws): pass every instance id in one call rather than looping 'apply_policy_to_instance'. No environment id is needed or accepted (non-MuleSoft instances have none). Only for a SINGLE MuleSoft/Anypoint instance that needs finer per-instance control (order, pointcut, disabled) should you prefer 'apply_policy_to_instance' instead.

Input Schema

json-schema
configuration: any | null
Policy configuration values, keyed per the template's configuration schema.
instance_ids *: array
organization_id: string
policy_name *: string
Kebab-case canonical policy template name to apply, e.g. 'rate-limiting'.

Audit API policies across instances audit_api_policies read-onlyopen-world

TOOL

Try it out

Arguments
Fetch applied + automated policies for up to N instances of a given API in one call, aggregate them, and return a per-instance + cross-instance summary. Replaces the agent-driven pattern of looping `view_api_instance_policies per instance — that loop burst the rate-limited Anypoint policy endpoint into 502s (W-22750961 #34, 18 calls all failed). Sampling order: production env first, then sandbox, then design, then any remaining environments. Stops sampling on the first 5xx and reports what it captured. Use this for: 'what gaps exist in policy coverage across instances?', 'compare policy coverage between production and staging', 'which instances are missing rate limiting?', 'audit policies for this API'. Args: organization_id (active BG), asset_id (the API's asset id), max_instances (default 3, max 8). Returns: {summary, instances: [{instance_id, environment_name, policy_count, applied: [...], automated: [...]}], comparison: {policy_names_in_all, policy_names_missing_anywhere}, errors: [{instance_id, error}]}`. Example: audit_api_policies(organization_id=<bg>, asset_id=<api>).

Input Schema

json-schema
asset_id *: string
instances: array | null
max_instances: integer
organization_id *: string

Check Control Scope Targets check_control_scope_targets read-onlyidempotentopen-world

TOOL

Try it out

Arguments
Preview APIs matched by a control scope filter.

Input Schema

json-schema
organization_id: string | null
scope_filter *: string

Check Policy Conformance check_policy_conformance

TOOL

Try it out

Arguments
Convert the selected policy application payload to JSON-LD and print it in backend logs.

Input Schema

json-schema
api_instance_id *: string
asset_id: string | null
asset_version: string | null
configuration_data: any | null
disabled: boolean | null
environment_id *: string
group_id: string | null
label: string | null
order: integer | null
organization_id *: string
pointcut_data: any | null
policy_template_id: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Check One Secret Exists check_secret read-onlyopen-world

TOOL

Try it out

Arguments
Verify whether a SINGLE named secret exists and return its non-sensitive metadata (name, type, expiration, last-modified) — never the secret value. USE THIS for 'does secret X exist?'. Provide secret_name alone and it reports which group(s) the secret lives in; add secret_group_name ONLY when the user explicitly names a group; or pass secret_group_id + secret_id UUIDs. A secret name may contain '/' (e.g. 'byov-test/api-key') — pass it whole as secret_name; never split it into group/secret on a slash. Use list_secret_refs to enumerate everything, or search_secrets for partial-name matches across groups.

Input Schema

json-schema
environment_id: string | null
Target Anypoint environment UUID. Required unless environment_name is provided instead.
environment_name: string | null
organization_id: string | null
secret_group_id: string | null
UUID of the secret group. Use secret_group_name instead when chaining from list_secret_refs output.
secret_group_name: string | null
secret_id: string | null
UUID of the secret. Use secret_name instead when chaining from list_secret_refs output.
secret_name: string | null

Compare service breakdown across business groups compare_business_groups read-onlyopen-world

TOOL

Try it out

Arguments
Run `find_assets (facets mode) against each of the supplied business-group ids and return a side-by-side comparison (totalHits + byType breakdown per BG). Use this for 'compare service maturity between business units', 'which BG has the most APIs?', 'breakdown by BG'. The agent should call list_business_groups first to discover the ids; this tool fans out at most max_groups (default 3, hard cap 8) of them. Returns: {groups: [{business_group_id, total_hits, byType: {...}}], cross_group: {leader_by_total, type_distribution_diff}}`. Example: compare_business_groups(business_group_ids=['<bg1>', '<bg2>', '<bg3>']).

Input Schema

json-schema
business_group_ids *: array | string
max_groups: integer

Create Automated Policy Strategy create_automated_policy_strategy open-world

TOOL

Try it out

Arguments
Create a new automated-policy governance strategy from wizard inputs.

Input Schema

json-schema
allow_duplicated: boolean
automated_policy_configuration: object | null
automated_policy_endpoint_type_groups: array | null
automated_policy_endpoint_type_mode: string
automated_policy_environment_id: string | null
automated_policy_id: string | null
automated_policy_runtime: string | null
automated_policy_runtime_range_from: string | null
automated_policy_runtime_range_to: string | null
description: string
name: string | null
organization_id: string | null
scope_filter: string | null

Create Business Group create_business_group open-world

TOOL

Try it out

Arguments
Use this tool to create a new Anypoint business group (a sub-organization) under a parent. Write operation. Creates a CHILD of parent_organization_id (the session org by default) — the org's true root is the pre-existing master org, which this does not create. The new business group has NO resource quota (zero vCores etc.); grant quota and permissions in the Anypoint UI afterward. The owner is always the authenticated caller (not selectable). Use for prompts like 'create a business group called Payments', 'add a child org under X'. Example: create_business_group(name=Payments).

Input Schema

json-schema
name: string
parent_organization_id: string | null

Create Connected App create_connected_app open-world

TOOL

Try it out

Arguments
Use this tool to create an Anypoint connected app with a client_credentials grant — a machine / CI-CD credential that mints Anypoint access tokens from a client id + client secret. Write operation. For security the generated client secret is NOT returned (it would land in the transcript); the result gives the client id and a deep link to the Connected Apps page where the owner copies the secret and assigns scopes. The app is created UNSCOPED — grant business-group / environment access there (or via a follow-up tool) before it can be used. Resolves the org from the session when organization_id is omitted. Use for prompts like 'create a connected app for our CI pipeline', 'set up a machine credential to deploy from GitHub Actions'. Example: create_connected_app(name=CI/CD deploy).

Input Schema

json-schema
name: string
organization_id: string | null
Anypoint organization ID to create the connected app in. Resolves from the active session when omitted.

Create Control create_control open-world

TOOL

Try it out

Arguments
Create a new control strategy from wizard inputs.

Input Schema

json-schema
description: string
governance_target_type: string
name: string | null
organization_id: string | null
position: integer | null
rules: array | null
rulesets: array | null
schedule_config: object | null
scope_condition_mode: string
scope_conditions: array | null
scope_filter: string | null
strategy_status: string
strategy_type: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Create Environment create_environment open-world

TOOL

Try it out

Arguments
Use this tool to create a new Anypoint environment (sandbox or production) in a business group. Write operation. environment_type must be 'sandbox' or 'production'. Resolves the org from the session when organization_id is omitted. Use for prompts like 'create a sandbox environment called QA', 'add a production environment to org X'. Example: create_environment(name=QA, environment_type=sandbox).

Input Schema

json-schema
environment_type: string
name: string
organization_id: string | null
Anypoint organization / business-group ID to create the environment in. Resolves from the active session when omitted.

Create Model Proxy create_model_proxy open-world

TOOL

Try it out

Arguments
Create and deploy a Model Proxy (LLM proxy) in Anypoint: creates the Exchange asset then deploys via API Manager. This is the chat equivalent of the two-step 'Create a Model Proxy' wizard, and the fields map 1:1 onto it.
Step 1 'Configure Gateway' — where the proxy is hosted: name (required), base_path (required), port (required, default 8081), and target_id (required). Copy target_id from the exact id field of a deployable row returned by list_model_proxy_gateway_targets. A gateway target name is never a valid target_id; when only the name is known, call that lookup, match the row by name, and pass its id. The server reads that row's authoritative name and inserts targetName into the deployment payload. description is optional. Resolve environment_id with list_omni_gateway_environments, then the gateway target with list_model_proxy_gateway_targets — do not ask the user for raw IDs, and do not source the target from list_omni_gateway_targets (different service, ids the deploy call rejects).
Step 2 'Configure Routing Strategy' — where traffic goes. Two modes, matching the wizard. routing_strategy is required: the user must explicitly choose model-based or semantic after Step 1; never omit, default, or infer this field. model-based needs one or more typed routes entries with provider + model + upstream_url + that provider's wizard extras (authFields / configFields from list_model_proxy_providers). Call list_model_proxy_providers first (omit provider) and pick provider/model from that wizard catalog (bare models[].value). semantic needs a semantic_service_config_id from list_model_proxy_semantic_routing and that row's topicMode. advanced / select: each route's prompt_topic_ids from that service's topics. basic / create: each route's prompt_topic {name, utterances} (created on the fly, same POST as the UI modal) — an empty topics list is not a blocker. Also collect the rest of that wizard step from wizardFields: fallback card (fallback_threshold default 0.5, fallback_route, fallback_model), prompt guard (deny_topic_ids_json or deny_topics_json {name, utterances}), and optional semantic cache (semantic_cache_config_id). Optional: input_format.
The Omni Gateway target is NOT an LLM provider or upstream URL — upstreams belong in routes. For every new route, first ask the user to choose Dynamic or From Vault; set credential_source to dataweave or from_vault from that explicit choice. Dynamic uses api_key_selector, or both AWS selector fields for Bedrock. From Vault requires list_model_proxy_vault_secret_groups then list_model_proxy_vault_secrets; show names, retain ids internally, and put the selected ids in the matching typed *_vault_ref field. Never construct or accept a URN. The backend constructs key_mode, selectors, and vault keys. Literal API/AWS keys are rejected. There are no tag or runtime-constraint fields; do not ask for any field not listed here.
Never construct a route from this description, provider defaults, lookup output, prior proxies, or reasonable guesses. A lookup result only supplies choices; it does not authorize choosing one. The gateway target, routing strategy, and every route's provider, model, upstream URL, credential source and source-specific fields, and optional settings must be explicitly confirmed by the user. If any required choice is missing, ask for it and do not call create_model_proxy.

Input Schema

json-schema
base_path *: string
Gateway base path, e.g. /my-proxy
deny_topic_ids_json: string
deny_topics_json: string
description: string
environment_id *: string
Anypoint environment ID
fallback_model: string
fallback_route: string
fallback_threshold: number
input_format: string
name *: string
Display name; slugified to Exchange assetId
organization_id *: string
Anypoint organization ID
port: integer
routes *: array
routing_strategy *: string
Required explicit routing choice: model-based or semantic. Do not omit or infer it; ask the user to choose after Step 1.
semantic_cache_config_id: string
semantic_service_config_id: string
target_id *: string

Create Model Wallet create_model_wallet open-world

TOOL

Try it out

Arguments
Create a Model Wallet in an Anypoint organization + environment. A Model Wallet scopes a caller (required_claims) to LLM Proxies and carries token/spend budgets. The wallet is scoped to ALL proxies automatically (there is no proxy picker yet), so proxy scope is not a parameter. environment_id is OPTIONAL: omit it to auto-select the environment the create UI would use (a production environment if the org has one, else the first available; design-time environments are ignored), so you need not know the env id. Pass an explicit environment_id only to override that default. required_claims is REQUIRED and must contain at least one 'claim:value' string using a COLON separator (NOT '='), e.g. 'group:managers' or 'iss:https://login.example.com'; each claim must include a value (the upstream rejects a claim with no value). budgets is REQUIRED — a wallet with no budget is unbounded and will be rejected; provide at least one budget, each with provider, metric (spend|tokens), period (daily|weekly|monthly), and limit. model is OPTIONAL: omit it for a provider-wide ('Any model') budget that caps every model under the provider (the usual case for a token budget), or pass a bare model id (e.g. 'claude-fable-5', no provider prefix) to cap one model. A 'spend' budget is only allowed with a concrete model that has a price configured in the Models catalog (an 'Any model' spend cap isn't priceable) — for an all-models cap use metric='tokens'. Example (provider-wide token cap, env auto-selected): create_model_wallet(organization_id=<org_id>, name='Team A', required_claims=['group:managers'], budgets=[{'provider':'anthropic','metric':'tokens','period':'monthly','limit':100000}]). Add 'model':'claude-fable-5' to that budget to cap a single model instead.

Input Schema

json-schema
budgets: array | null
description: string
environment_id: string
name *: string
organization_id *: string
required_claims: array | null

Create Omni Gateway create_omni_gateway read-onlyopen-world

TOOL

Try it out

Arguments
Launch the managed Omni Gateway creation wizard for the active MuleSoft provider. When fully configured, creates the gateway in Anypoint Platform.

Input Schema

json-schema
environment_id: string | null
environment_name: string | null
environment_type: string | null
governance_override_warnings: boolean
organization_id: string | null
payload: any | null
provider_id: string | null
target_type: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Create Agent Scanner create_scanner open-world

TOOL

Try it out

Arguments
Create a new agent scanner. Internally validates connectivity before persisting the configuration. Parameters: provider (targetSystemType), platform (specific platform within a provider group, e.g. 'bedrock-agents'), schedule with unit (day/week/month) and at (0-23 UTC hour). Returns the created scanner details including scannerId on success, or a connection_failed status if credentials are invalid. Call WITHOUT name/provider to display the interactive wizard.

Input Schema

json-schema
auth_fields: any | null
auth_fields_alias: any | null
auth_method: string | null
auth_method_alias: string | null
description: string
filters: array | null
name: string | null
notifications: any | null
organization_id: string | null
owner_id: string | null
platform: string | null
provider: string | null
schedule: any | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Create Team create_team open-world

TOOL

Try it out

Arguments
Use this tool to create a new Anypoint Team (the platform identity construct — NOT the Microsoft Teams messaging channel). Write operation. parent_team_id is REQUIRED: to create a top-level team, first call list_teams to find the root team (the one with no parent) and pass its team_id. team_type is 'internal' (default), 'external', 'private', 'shared', or 'legacy'. Use for prompts like 'create a team called Payments under the root team', 'add a private team X'. Example: create_team(team_name=Payments, parent_team_id=<root_team_id>).

Input Schema

json-schema
organization_id: string | null
Anypoint organization ID to create the team in. Resolves from the active session when omitted.
parent_team_id: string
team_name: string
team_type: string

Delete Automated Policy Strategy delete_automated_policy_strategy open-world

TOOL

Try it out

Arguments
Delete one automated-policy governance strategy by strategy ID.

Input Schema

json-schema
organization_id: string | null
strategy_id *: string

Delete Governance Strategy delete_governance_strategy open-world

TOOL

Try it out

Arguments
Delete one governance strategy by strategy id.

Input Schema

json-schema
organization_id: string | null
strategy_id *: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Delete Model Wallet delete_model_wallet destructiveidempotentopen-world

TOOL

Try it out

Arguments
Delete one Model Wallet by id in an Anypoint organization + environment. Destructive and irreversible. version is REQUIRED: read the wallet's current version with fetch_model_wallet_details and pass it — it is sent as the upstream optimistic-concurrency If-Match header, and a missing version is rejected (there is no force-delete path). environment_id is OPTIONAL: omit it to auto-select the environment the UI would use (a production environment if the org has one, else the first available; design-time environments are ignored). When acting on a wallet from fetch_model_wallets, pass that wallet's environmentId — a wallet can live in ANY environment, and auto-select resolves only one, so a delete could target the wrong environment or not find the wallet. Example (env from the fetch_model_wallets row): delete_model_wallet(organization_id=<org_id>, model_wallet_id=<id>, environment_id=<env_id>, version=<n>).

Input Schema

json-schema
environment_id: string
model_wallet_id *: string
organization_id *: string
version: integer | null

Describe Vault Onboarding Requirements describe_vault_auth_schema read-onlyopen-world

TOOL

Try it out

Arguments
Answer 'what do I need to connect/onboard this vault?' in up to three steps. (1) No arguments: list every supported provider. (2) provider ONLY (e.g. 'azure_key_vault'): list the auth methods that provider supports so the user can choose one — use this for 'create an azure vault integration' before asking for any fields. (3) provider + auth_method: get the COMPLETE onboarding checklist — always-required inputs (name, provider, auth_method, vault_url), required/optional raw_secrets and connection_config fields, and optional inputs (description, sync_interval_minutes). Common provider phrasings are accepted (e.g. 'aws', 'aws secret manager'). Use before onboard_vault so you know exactly what to collect, and before edit_integration to see valid attributes.

Input Schema

json-schema
auth_method: string | null
organization_id: string | null
provider: string | null

Edit Applied Policy edit_applied_policy

TOOL

Try it out

Arguments
Edit the configuration of an already-applied native policy on an external gateway instance (Kong / Apigee / Azure) via the Anypoint API Manager Universal API. The numeric api_instance_id identifies the instance on this path (no environment_id or gateway_id is needed). Pass provider, api_instance_id, the policy_id and the policy's Exchange coordinates (asset: group_id / asset_id / asset_version) from view_api_instance_policies, plus the new configuration_data. configuration_data REPLACES the existing configuration wholesale — send the full merged object, not a delta: read the current configurationData from view_api_instance_policies immediately before and merge your change into it, or the keys you omit are dropped. A policy whose readOnly flag is true cannot be edited. Writes are asynchronous (accepted with HTTP 202); poll list_instance_policy_operations for the terminal COMPLETED / FAILED state. This routing is gated per organization; a closed gate returns a structured error.

Input Schema

json-schema
api_instance_id: string
asset: any | null
Exchange coordinates of the applied policy template (group_id / asset_id / asset_version). Required for edits.
configuration_data: any | null
New configuration for the policy. Replaces the existing configuration; validated by APIM against the template's schema.
organization_id *: string
Anypoint organization (business group) ID that owns the instance.
policy_id: string
provider: string

Edit Vault Integration edit_integration open-world

TOOL

Try it out

Arguments
Modify an existing vault integration's configuration. The current optimistic-lock version is read automatically by describing the integration first (callers do NOT supply a version). Provider, auth method, name and vault URL are immutable. For managed integrations the editable attributes are description, raw_secrets and connection_config; for reference-based integrations they are description, sync_enabled and credential_refs. Supplying an attribute that is not valid for the integration type is rejected with the list of valid attributes. Edited managed credentials are validated against the auth schema and connection-tested before saving; the save is ABORTED unless the vault is reachable AND the credential grants all required permissions (list, describe, get-value). If a reachable vault is missing permissions the edit is refused and 'missingPermissions' in the response says which to grant.

Input Schema

json-schema
connection_config: object | null
credential_refs: object | null
description: string | null
Optional human-readable description (max 512 chars).
environment_id: string | null
Target Anypoint environment UUID. Required unless environment_name is provided instead.
environment_name: string | null
integration_id: string | null
UUID of the vault integration. Use integration_name instead when you only know the display name.
integration_name: string | null
Human-readable name of the vault integration (as shown by onboard_vault). Provide this OR integration_id — not both.
organization_id: string | null
raw_secrets: object | null
sync_enabled: boolean | null
Enable/disable automatic sync (reference-based integrations only); omit to leave unchanged.

Edit Model Wallet edit_model_wallet idempotentopen-world

TOOL

Try it out

Arguments
Edit an existing Model Wallet by id in an Anypoint organization + environment. Partial update: pass only the fields to change — an omitted field is left as-is upstream (a rename can send just name). required_claims are flat 'claim' or 'claim:value' strings; each budget needs provider, metric (spend|tokens), period (daily|weekly|monthly), and limit. model is OPTIONAL: omit it for a provider-wide ('Any model') budget that caps every model under the provider (the usual case for a token budget), or pass a bare model id (e.g. 'claude-fable-5', no provider prefix) to cap one model. A 'spend' budget requires a concrete model that has a price configured in the Models catalog (an 'Any model' spend cap isn't priceable) — for an all-models cap use metric='tokens'. version is REQUIRED: read the wallet's current version with fetch_model_wallet_details and pass it — it is sent as the upstream optimistic-concurrency If-Match header, and a missing version is rejected so an edit can't clobber a concurrent change. environment_id is OPTIONAL: omit it to auto-select the environment the UI would use (a production environment if the org has one, else the first available; design-time environments are ignored). When acting on a wallet from fetch_model_wallets, pass that wallet's environmentId — a wallet can live in ANY environment, and auto-select resolves only one, so an edit could target the wrong environment or not find the wallet. Example (env from the fetch_model_wallets row): edit_model_wallet(organization_id=<org_id>, model_wallet_id=<id>, environment_id=<env_id>, version=<n>, name='Renamed').

Input Schema

json-schema
budgets: array | null
description: string | null
environment_id: string
model_wallet_id *: string
name: string | null
organization_id *: string
required_claims: array | null
version: integer | null

Fetch Automated Policy Template fetch_automated_policy_template read-onlyidempotentopen-world

TOOL

Try it out

Arguments
Fetch one policy template's full configuration schema. Pass either `template_id (legacy) or (group_id, asset_id, asset_version)`.

Input Schema

json-schema
asset_id: string | null
asset_version: string | null
group_id: string | null
organization_id: string | null
template_id: string | null

Fetch Budget Usage fetch_budget_usage read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to get org-wide managed LLM usage for the Budget dashboard: totalSpend plus by-provider and by-wallet breakdowns. ALWAYS read displayUnit before quoting amounts: 'dollars' means the LLM-proxy Model Library has at least one priced model (idle priced models still show dollars, which may be $0); 'tokens' is total tokens because no catalog model has a Model Library rate — never call token totals dollars. When displayUnit is dollars, also read excludedUnpricedModelCount and excludedTokens: if count > 0 those tokens are not in the dollar total (catalog-unpriced usage) and must not be quoted as full spend. Unattributed proxy spend (no wallet id) is omitted from by-wallet only; totalSpend and byProvider include it. Answers questions like 'how much are we spending on LLMs?', 'which provider costs the most?', 'top spending wallets?'. When Budget Management is not enabled for the org, the tool returns a non-error 'not enabled' empty-state — do NOT report that as $0 spend. When the spend source is unreachable, degraded=true and the summary says unavailable — also not $0. Supports time_range values: 1h, 6h, 24h, 7d, 30d (default 7d). Pass environment_id (Anypoint environment UUID) when known so by-key labels resolve to wallet names and catalog rates can price dollars. Omit rather than inventing one; missing env leaves raw wallet ids and returns tokens (not dollars) without degraded. organization_id is accepted only as an alias or a business group the Bearer belongs to, never as the authorization decision. Example: fetch_budget_usage(organization_id=<org_id>, time_range='7d', environment_id=<env_id>). For per-agent dollar spend, use fetch_cost_instances(category='agent'). For per-instance MCP token usage, use fetch_cost_instances. For org-wide MCP token KPIs (not Budgets), use fetch_cost_overview.

Input Schema

json-schema
environment_id: string
organization_id *: string
time_range: string

Fetch Control Ruleset fetch_control_ruleset read-onlyidempotentopen-world

TOOL

Try it out

Arguments
Fetch a control ruleset payload by sourceRulesetKey.

Input Schema

json-schema
organization_id: string | null
source_ruleset_key *: string

Fetch Cost Instance Timeseries fetch_cost_instance_timeseries read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to chart a single instance over time. category selects the scope (defaults to 'mcp'). category='mcp': an MCP server instance — instance_id is the API Manager instance id; buckets carry totalTokens, tokenDelta, and avgResponseTimeMs. category='agent': a single AGENT (LLM proxy) — instance_id is the agent's id (agentId / llmProxyId from fetch_cost_instances(category='agent')); buckets carry the agent's LLM-proxy token counts and avgResponseTimeMs. The agent series is token-denominated — it carries NO per-bucket dollars (for agent dollar spend/savings totals use fetch_cost_instances(category='agent')). This is the only tool that returns an agent timeseries — fetch_cost_instances(category='agent') gives the agent table but no per-agent chart. Always pass a real instance_id from fetch_cost_instances (mcp or agent scope); never invent one. Supports time_range values: 1h, 6h, 24h, 7d, 30d. Example (mcp): fetch_cost_instance_timeseries(organization_id=<org_id>, instance_id=<instance_id>, time_range='7d'). Example (agent): fetch_cost_instance_timeseries(organization_id=<org_id>, instance_id=<agentId>, time_range='7d', category='agent'). For the org-wide overview, use fetch_cost_overview instead.

Input Schema

json-schema
category: string
instance_id *: string
organization_id *: string
time_range: string

Fetch Cost Instances fetch_cost_instances read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to get per-instance usage. category selects the scope (defaults to 'mcp'). category='mcp': per-MCP-server-instance token usage with optimization coverage. Each instance includes totalTokens, tokenDelta (tokens saved), avgResponseTimeMs, toolsListTokens, toolsCallTokens, environmentId, organizationId, appliedPolicies, appliedCostPolicyIds, unappliedCostPolicyIds, and optimizationCoverage (0-1). Response also includes a policyTemplates lookup (templateId -> name, description). Use filter_unoptimized=true to find instances with unapplied cost policies. Use sort_by to change ordering (totalTokens, tokenDelta, avgResponseTimeMs, totalCalls, tokensPerCall). To optimize a specific instance, use the unappliedCostPolicyIds list with prepare_policy_creation(asset_id=<assetId>, policy_name_hint=<policy_id>). category='agent': per-agent LLM-proxy spend and savings in DOLLARS (not token estimates). Each agent includes agentId, agentName, managedType (managed if connected to an LLM proxy, else unmanaged), llmProxyId, spend (cost $), saved / potentialSavings ($), and a usage block (totalTokens, totalCalls, tokensPerCall, avgResponseTimeMs). Dollar figures depend on cost data being available for the org (response carries costDataAvailable); when false, spend/saved are zeroed placeholders, NOT real dollars — do NOT report that $0 as real spend, tell the user to Configure Costs. potentialSavings is always 0.0 (no per-agent rate source). sort_by / filter_unoptimized do not apply to the agent scope. Answers 'how much are my agents spending?', 'which agents saved the most?'. Supports time_range values: 1h, 6h, 24h, 7d, 30d. Use top_n to limit results (default 10, max 50). Example (mcp): fetch_cost_instances(organization_id=<org_id>, time_range='30d', filter_unoptimized=true). Example (agent): fetch_cost_instances(organization_id=<org_id>, time_range='30d', category='agent').

Input Schema

json-schema
category: string
filter_unoptimized: boolean
organization_id *: string
sort_by: string
time_range: string
top_n: integer

Fetch Cost Optimization Recommendations fetch_cost_optimization_recommendations read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to get a ranked list of instances that should be optimized, mirroring the 'Recommended Optimizations' card on the Cost Management page. Filters to active instances (usage in window) that have at least one unapplied cost policy, projects token savings from Exchange tool metadata using the same rate analyzers as the UI, and returns the top N by projected savings. Each recommendation includes instanceId, instanceName, serverName, assetId, environment, totalTokens, projectedTokensSaved, projectedSavingsPercent, unappliedCostPolicyIds, and perPolicyProjections (policyId, policyName, rate 0-1, tokensSaved). category='mcp' (default) ranks MCP-server instances. category='agent' scopes to agents / LLM proxies, but agent optimization needs an upstream per-proxy cost-policy/rate source that is not yet emitted (W-23371138): it returns an empty list today (no fabricated agent savings) and lights up automatically once that source lands. Do NOT invent agent recommendations. Supports time_range values: 1h, 6h, 24h, 7d, 30d. top_n defaults to 3, max 10. Answers questions like 'what should I optimize next?', 'biggest token savings opportunities?', 'where is the most waste?'. Follow up with prepare_policy_creation(asset_id=<assetId>, policy_name_hint=<policyId>) to apply a policy. Example: fetch_cost_optimization_recommendations(organization_id=<org_id>, time_range='30d', top_n=3).

Input Schema

json-schema
category: string
organization_id *: string
savings_pool_size: integer
time_range: string
top_n: integer

Fetch Cost Overview fetch_cost_overview read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool for the org-wide cost summary: MCP-server token KPIs (total tokens, saved tokens from optimization policies, total tool calls) PLUS org-wide agent dollar cards (totalManagedSpend, agentAmountSaved). The dollar cards are populated only when cost data is available for the org (costDataAvailable=true); when false they are absent — do NOT report $0 as real spend. agentPotentialSavings is always 0.0 (no per-agent rate source) and is not a spend figure. Optionally includes token usage timeseries. Supports time_range values: 1h, 6h, 24h, 7d, 30d. Use include_timeseries=true for chart data (increases response size). Example: fetch_cost_overview(organization_id=<org_id>, time_range='30d'). For a per-MCP-instance token breakdown, use fetch_cost_instances. For per-agent dollar spend/savings, use fetch_cost_instances(category='agent').

Input Schema

json-schema
include_timeseries: boolean
organization_id *: string
time_range: string

Fetch Governance Service Report fetch_governance_service_report read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to get detailed governance conformance data for a single service. Returns the service summary, per-ruleset details with violation/warning counts, rule-level messages, and instance-level policy conformance when available. Use this after fetch_governance_services to drill into one service, or when the user asks about a specific service's governance status. Example: fetch_governance_service_report(organization_id=<organization_id>, service_id=<service_id>). Example: fetch_governance_service_report(organization_id=<organization_id>, service_id=<service_id>, api_version=<version>, include_rule_messages=true).

Input Schema

json-schema
api_version: string | null
include_rule_messages: boolean
organization_id *: string
service_id *: string
version: string | null

Fetch Governance Services fetch_governance_services read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to search, filter, and count governance conformance across services. Returns lightweight rows with conformance status, concern-area breakdowns, error/warning/info counts, and violated rulesets for each matched service. Supports filtering by conformance status, concern area, ruleset, provider, service type, severity thresholds, and text query. Returns aggregate totals alongside paged results. Canonical conformance values: compliant, non-compliant, pending. Concern area IDs include: security-privacy, consumption-economic-governance, structural-conformity-lifecycle. Canonical provider values: mulesoft, kong, apigee, aws, azure. Example: fetch_governance_services(organization_id=<organization_id>, conformance_status_in=[<status>]). Example: fetch_governance_services(organization_id=<organization_id>, provider_in=[<provider>], limit=<n>). For detailed drill-down into one service, use fetch_governance_service_report instead. IMPORTANT: The totals object already contains aggregate counts for all matched services (statusTotals, concernTotals, providerTotals, messageTotals). providerTotals breaks down services per provider with compliant/non-compliant/pending counts. Do NOT paginate through all pages to count services yourself — use the totals. Synthesize your answer from the first page of results plus the totals. Only call again with different filters if the first result set doesn't match the user's question.

Input Schema

json-schema
concern_area_ids: array | string | null
conformance_status_in: array | string | null
include_rule_messages: boolean
include_rulesets: boolean
limit: integer
min_errors: integer | null
min_infos: integer | null
min_warnings: integer | null
offset: integer
organization_id *: string
provider_in: array | string | null
q: string | null
ruleset_ids_in: array | string | null
service_ids: array | string | null
service_type_in: array | string | null

Fetch Model Wallet Details fetch_model_wallet_details read-onlyopen-world

TOOL

Try it out

Arguments
Get one Model Wallet by id in an Anypoint organization + environment. Returns modelWalletId, name, clientId, requiredClaims, budgets (each with model, metric, period, and limit), and version. environment_id is OPTIONAL: omit it to auto-select the environment the UI would use (a production environment if the org has one, else the first available; design-time environments are ignored). When acting on a wallet from fetch_model_wallets, pass that wallet's environmentId — a wallet can live in ANY environment, and auto-select resolves only one, so it may not find the wallet. Read-only. Example (env from the fetch_model_wallets row): fetch_model_wallet_details(organization_id=<org_id>, model_wallet_id=<id>, environment_id=<env_id>). For the full list, use fetch_model_wallets.

Input Schema

json-schema
environment_id: string
model_wallet_id *: string
organization_id *: string

Fetch Model Wallets fetch_model_wallets read-onlyopen-world

TOOL

Try it out

Arguments
List the Model Wallets in an Anypoint organization, across EVERY environment in the org. A Model Wallet scopes a caller (clientId + requiredClaims) to a set of LLM Proxies and carries its token/spend budgets. This tool takes NO environment parameter — it always spans all environments and each returned wallet carries the environmentId (and environmentName) it lives in. To answer about a single environment, filter the returned wallets by their environmentId; do NOT assume the session's active environment is the only one. Each returned wallet includes modelWalletId, name, clientId, requiredClaims, budgets, version, and environmentId. Pass an optional 'search' substring to filter by name or clientId (case-insensitive), the same as the catalog page's search box; omit it to list all. Read-only. Example: fetch_model_wallets(organization_id=<org_id>). Example (name filter): fetch_model_wallets(organization_id=<org_id>, search='team a'). For one wallet's full detail, use fetch_model_wallet_details (pass the wallet's environmentId from these results).

Input Schema

json-schema
organization_id *: string
search: string

Fetch Monitoring Drill-Down fetch_monitoring_drill_down read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to rank services or instances contributing to a specific performance metric (availability, reliability, avgLatency, requestVolume, errorRate, policyViolations, taskResolution, qualityScore, latencyMs, agentMethod, failureReason). Powers the Performance view's drill-down drawer and answers questions like "which services are driving errors?", "rank instances by latency", or "which agents have the highest quality score / most resolved tasks?". The taskResolution and qualityScore metrics surface agent quality: taskResolution ranks by resolved-task volume, and qualityScore ranks by the task-count-weighted mean quality score. The latencyMs metric ranks by agent-execution latency (the mulesoft.agent.latency.ms signal, request-weighted at the service level) distinct from avgLatency's gateway p99. The agentMethod and failureReason metrics rank by total event count and each row carries a category breakdown array (agentMethodBreakdown / failureReasonBreakdown, each entry {label, count} sorted count-descending): agentMethod breaks down invocations by mulesoft.agent.method, failureReason breaks down failures by mulesoft.agent.failure.reason. Filter by entity_type (apis/agents/mcp-servers/llms), service_id (narrow to one service's instances), instance_id (single instance), environments list, or providers list. Free-text search matches service/instance/environment names. Returns MetricContributorRow[] plus pagination metadata (totalRows, offset, pageSize). Example: fetch_monitoring_drill_down(metric='errorRate', time_range='24h'). Example: fetch_monitoring_drill_down(metric='avgLatency', entity_type='apis', sort_dir='desc'). Example: fetch_monitoring_drill_down(metric='qualityScore', entity_type='agents', sort_dir='desc'). Example: fetch_monitoring_drill_down(metric='latencyMs', entity_type='agents', sort_dir='desc'). Example: fetch_monitoring_drill_down(metric='agentMethod', entity_type='agents'). Example: fetch_monitoring_drill_down(metric='failureReason', entity_type='agents').

Input Schema

json-schema
environment: string
environments: string | array | null
limit: integer
metric *: string
offset: integer
organization_id: string | null
providers: string | array | null
scope: any | null
search: string
sort_dir: string
sort_field: string
time_range: string

Fetch Monitoring Instance fetch_monitoring_instance read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to get monitoring data for a single API instance: time-series charts (requests, error rate, latency, policy violations), top endpoints by traffic, and top clients by traffic. Requires organization_id, asset_id, and ideally instance_id. If instance_id is omitted, the first available instance is selected. Supports time_range values: 1h, 6h, 24h, 7d, 30d. Supports environment values: production, sandbox, unknown. Only MuleSoft-managed instances have monitoring data. Example: fetch_monitoring_instance(organization_id=<organization_id>, asset_id=<asset_id>, instance_id=<instance_id>, time_range=<time_range>, environment=<environment>). Example: fetch_monitoring_instance(organization_id=<organization_id>, asset_id=<asset_id>). For org-wide health overview, use fetch_monitoring_overview instead.

Input Schema

json-schema
api_version: string | null
asset_id *: string
asset_version: string | null
environment: string
instance_id: string | null
organization_id *: string
time_range: string

Fetch Monitoring Overview fetch_monitoring_overview read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to get an org-wide monitoring health snapshot: total requests, error rate, average latency, availability, reliability, and compact trend charts. Returns KPI summary plus time-series data for request volume, error rate, average latency, and error volume over the selected time range and environment. Supports time_range values: 1h, 6h, 24h, 7d, 30d. Supports environment values: production, sandbox, unknown. Supports provider filter: currently only 'mulesoft' returns monitoring data. Other providers (kong, apigee, aws, azure) will return empty results. Canonical provider values: mulesoft, kong, apigee, aws, azure. Example: fetch_monitoring_overview(organization_id=<organization_id>, time_range=<time_range>, environment=<environment>). Example: fetch_monitoring_overview(organization_id=<organization_id>, time_range=<time_range>, environment=<environment>, provider=<provider>). For instance-level monitoring drill-down, use fetch_monitoring_instance instead.

Input Schema

json-schema
environment: string
include_charts: boolean
organization_id *: string
provider: string | null
time_range: string

Fetch Ruleset Details fetch_ruleset_details read-onlyopen-world

TOOL

Try it out

Arguments
Return the full ruleset payload for one source_ruleset_key (rules, severities, source asset id/version, profile name). Pair with search_repository_knowledge: each match's metadata.rulesetKey is the argument to pass back here. Use when the user asks for 'full ruleset details', 'list every rule in <ruleset>', or 'what does the X ruleset check'.

Input Schema

json-schema
organization_id: string | null
source_ruleset_key *: string

Fetch Service Facets fetch_service_facets read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool when you need aggregate counts/buckets for summaries, dashboards, or filter panels, not full service-row hydration. Prefer this tool over fetch_services when the user asks 'how many', 'breakdown by type/status/provider', or other distribution insights. Fetches facet aggregates for exactly one required business_group_id. Supports either text query (q) OR typed filtering/aggregates; when q is provided, do not send filters or aggregates. Canonical typed values are api classifiers (rest-api, http-api, graphql, soap-api, grpc-api, evented-api) plus agent and mcp, and common aliases are normalized before filtering. Canonical provider values include: mulesoft, kong, apigee, aws, azure, openai, anthropic, aws-bedrock, google-vertex, agentforce, microsoft-copilot, godaddy-ans, langsmith, mistral, meta. filters MUST be a JSON object, never a Lucene-style string. Supported filter fields: providerIn (list of canonical provider strings), statusIn, apiCategoryIn, environmentTypeIn, complianceStatusIn, tagsIn (list of exact Exchange tags, ANDed with the other filters), hasInstances (bool), hasActiveInstance (bool). Example (typed facets): fetch_service_facets(business_group_id=<business_group_id>, asset_types=[<asset_type>, ...], aggregates={'totalHits': True, 'byType': True, 'byProvider': True}). Example (query facets): fetch_service_facets(business_group_id=<business_group_id>, q=<search_query>). Returns structured payload with aggregates, total, and query context metadata. If the user then asks for specific assets, follow with fetch_services.

Input Schema

json-schema
aggregates: any | null
asset_types: array | string | null
business_group_id *: string
filters: any | null
q: string | null
size: integer

Fetch Services fetch_services read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool when you need concrete service rows (for example asset IDs/names, detail selection, or navigation affordances). Prefer this tool over fetch_service_facets when the user asks 'which assets' or requests item-level results. Fetches lightweight services for exactly one required business_group_id. Searches the user's business group AND the MuleSoft public catalog overlay for agent / mcp / llm asset types — public providers like GoDaddy ANS, Salesforce Agentforce, LangSmith, Microsoft Copilot, OpenAI, Anthropic, AWS Bedrock surface here. API asset types (rest-api, http-api, graphql, soap-api, grpc-api, evented-api) are user-org-only by design — the public overlay carries no API rows, so APIs are not affected. Supports either text query (q) OR typed filtering/aggregates; when q is provided, do not send filters or aggregates. Canonical typed values are api classifiers (rest-api, http-api, graphql, soap-api, grpc-api, evented-api) plus agent and mcp. The tool normalizes common aliases/plurals (for example api/apis, rest, openapi, asyncapi, agents, mcp-servers) to canonical values before filtering. Returns structured payload with services, assets (alias), total, and optional aggregates. Service rows include a provider field. Canonical provider values include: mulesoft, kong, apigee, aws, azure, openai, anthropic, aws-bedrock, google-vertex, agentforce, microsoft-copilot, godaddy-ans, langsmith, mistral, meta. If you only need counts/buckets (no row hydration), use fetch_service_facets instead. filters MUST be a JSON object, never a Lucene-style string. Supported filter fields: providerIn (list of canonical provider strings), statusIn, apiCategoryIn, environmentTypeIn, complianceStatusIn, tagsIn (list of exact Exchange tags, ANDed with the other filters — use this to scope to tagged assets, e.g. finance), hasInstances (bool), hasActiveInstance (bool). Example (typed rows): fetch_services(business_group_id=<business_group_id>, asset_types=[<asset_type>, ...], size=<n>). Example (provider-filtered): fetch_services(business_group_id=<business_group_id>, asset_types=['agent'], filters={'providerIn': ['godaddy-ans']}, size=50). Example (tag-filtered): fetch_services(business_group_id=<business_group_id>, filters={'tagsIn': ['finance']}, size=50). Example (text search): fetch_services(business_group_id=<business_group_id>, q=<search_query>, size=<n>). Service rows include affordances and links for downstream navigation/actions. IMPORTANT: Do NOT paginate through all results by calling this tool multiple times with different offsets. Use the first page of results to synthesize your answer. Only call again with different filters if the first result set is clearly irrelevant to the user's question.

Input Schema

json-schema
aggregates: any | null
asset_types: array | string | null
business_group_id *: string
filters: any | null
include_affordances: boolean
include_public: boolean
offset: integer
q: string | null
size: integer
stable_full_window: boolean

Find Assets find_assets read-onlyopen-world

TOOL

Try it out

Arguments
🔍 Discover assets in your portfolio + the public catalog.

Use this tool for any of:
✓ 'find [thing]' / 'search for [thing]' / 'discover [thing]'
✓ 'do you have [thing]?' / 'is there a [thing]?'
✓ 'show me [thing]' / 'list [thing]' / 'what [things] exist?'
✓ Data catalog discovery ('show my data assets', 'find Informatica sources')
✓ '[type] for [capability]' (e.g. 'APIs for payments', 'agents for invoices')
✓ 'similar to [thing]' / 'alternatives to [thing]'
✓ Resolving a user-supplied display name or slug to an asset id
before navigating or fetching detail.

Internally runs semantic (concept / synonym) and lexical (literal slug /
short query / id-token) discovery in parallel and merges. One call covers
literal pastes ('pet-store-api'), partial names ('Pet Store'), single
tokens ('store'), and conceptual queries ('flight booking').

SEARCH DISCIPLINE (prefer one natural-language call):
Semantic + lexical search already handles slug / hyphen / spacing variants,
so a natural phrase like 'batch processing agent' already matches — slugging
the same intent into 'batch-processing' or 'batch processing' and re-calling
rarely surfaces anything new. Aim for ~3 calls at most, with at least one
using ASSET_TYPE="" (no filter). Empty results usually mean nothing matched;
slug/spacing rewrites of the same intent seldom help — though rephrasing for
a genuinely different angle (e.g. a broader or analytical query) is fine.

Returns userOrgAssets (your portfolio) + publicOrgAssets (MuleSoft public
catalog), each ranked by relevance.

USER_QUERY parameter (always pass it):
The user's verbatim, untrimmed message. Used only to tell a single named
lookup ('the NTO Recommendations API' → collapse the card to that asset)
from a set/category ('all finance APIs', 'APIs similar to Stripe' → keep
the whole set). Never sent to the search backend; pass even when you also
trim QUERY down to the key search terms.

ASSET_TYPE parameter (optional):
Leave empty ("") to search ALL types (recommended for discovery).
Pass when the user clearly names ONE kind:
'api' / 'apis' → expands to 'rest-api', 'http-api', 'graphql', 'soap-api', 'grpc-api', 'evented-api' (EXCLUDES 'mcp', 'agent', 'llm', 'model', 'vector-database', 'gateway')
'mcp', 'agent', 'llm' for those kinds
'data' for Informatica/CDGC data assets and catalog sources

APPLIED POLICIES (INCLUDE_APPLIED_POLICIES + POLICY_NAME_FILTER):
Set INCLUDE_APPLIED_POLICIES=true to answer 'which of my APIs have / are
missing policy X?' in ONE call. Each of your portfolio results then also
carries the policies currently APPLIED to its managed instances (MuleSoft
and external Kong/Apigee/Azure). Pass POLICY_NAME_FILTER='rate-limiting'
(name or substring) to report the found/missing split directly — do NOT
loop view_api_instance_policies over every hit. For the apply flow key on
policyCoverage ('all'/'partial'/'none'/'unknown') + instancesMissingPolicy
(the instances still lacking it), NOT hasPolicy alone: hasPolicy is
any-instance, so a partially-protected API reads True and would be skipped.
Off by default; the fan-out is bounded (top matched APIs, production-first
instances) and the meta block says what was capped.

DO NOT USE FOR:
✗ Performance metrics (use fetch_monitoring_*)
✗ Cost analysis (use fetch_cost_*)
✗ Governance findings / conformance reports (use fetch_governance_*) — but
for APPLIED policies across a set of APIs, use INCLUDE_APPLIED_POLICIES
above rather than calling view_api_instance_policies per asset.
✗ Applied policies for ONE already-known instance (use view_api_instance_policies)
✗ Already-selected asset details (use asset-specific tools)
✗ Typed catalog listings (use fetch_services)
✗ Catalog facets / aggregates (use fetch_service_facets)

Input Schema

json-schema
asset_type: string
for_policy_application: boolean
include_applied_policies: boolean
max_results: integer
policy_name_filter: string
query *: string
user_query: string

Asset discovery with server-side synonym expansion find_assets_expanded read-onlyopen-world

TOOL

Try it out

Arguments
Single `find_assets call with synonym expansion done server-side, so the agent doesn't loop across rephrasings. Use this when the user describes a capability and the literal phrasing might not match the asset's name (e.g. 'LLMs for code generation' → also search 'code completion', 'codegen'). Args: query (required), asset_type (optional: agent / rest-api / mcp / llm), max_synonyms (default 3, cap 6). Returns the standard find_assets envelope plus a query_attempts` list showing which synonyms were tried.

Input Schema

json-schema
asset_type: string | null
max_synonyms: integer
query *: string

Find User by Email find_user_by_email read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to check whether a person is already a platform user in an organization, by their exact email address. Returns only users whose email matches exactly (case-insensitive) — an idempotency check before inviting someone. Resolves the org from the session when organization_id is omitted. Use for prompts like 'is jane@acme.com already a user?', 'find the user with email X', 'does this person already have access?'. Example: find_user_by_email(email=jane@acme.com).

Input Schema

json-schema
email: string
organization_id: string | null
Anypoint organization ID to search within. Resolves from the active session when omitted.

Get Asset Lineage get_asset_lineage read-onlyopen-world

TOOL

Try it out

Arguments
Get instance-rooted Context Catalog lineage. Downstream supports Agent, MCP, and API roots; upstream supports MCP and API roots. If instance_id is omitted, returns deployed instance options with their owning asset versions so the user can choose; it never selects implicitly. Empty results use stable reasonCode values: ASSET_NOT_FOUND, ASSET_VERSION_NOT_FOUND, NO_INSTANCES, or LINEAGE_NOT_FOUND. Otherwise reuse the selected option's requestArguments exactly; they contain the matching instance_id and asset_version. Treat status and connections as authoritative: CONNECTS_TO is runtime evidence and ROUTES_TO is design-time evidence. Technical ASSET nodes, IMPLEMENTATION_OF edges, and RESOLVES_TO edges are omitted.

Input Schema

json-schema
asset *: string
asset_type *: string
asset_version: string | null
direction *: string
instance_id: string | null
organization_id: string | null

Get Business Group get_business_group read-onlyopen-world

TOOL

Try it out

Arguments
Get full metadata for a business group by its ID.

Input Schema

json-schema
group_id *: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Get Data Asset Classification get_data_asset_classification read-onlyopen-world

TOOL

Try it out

Arguments
Show hierarchy, classifications, glossary terms, and the explicit PII state for ONE data asset or catalog source, never the full catalog — use find_assets(asset_type="data") first to list/find data sources. Returns source → database → schema → table → column structure, column classifications and glossary terms, aggregate governance summaries, and PII state.

Input Schema

json-schema
asset *: string
asset_version: string | null
organization_id: string | null

Get LLM Proxy Routes get_llm_proxy_routes read-onlyidempotentopen-world

TOOL

Try it out

Arguments
Read an existing Model Proxy's FULL current configuration — not just the route list: also routingStrategy, semanticServiceConfigId, fallbackRoute/fallbackModel/fallbackThreshold, denyTopicIds, and semanticCacheConfigId. This is the ONLY tool that returns that full snapshot, and calling it is MANDATORY, in the SAME turn, immediately BEFORE every single update_model_proxy call — even if a snapshot from an earlier turn in this conversation looks current or you already called it once this session, re-fetch anyway. update_model_proxy REPLACES the whole route list AND every semantic field wholesale, so adding or editing one route without a fresh copy of the full current set silently drops the others (and their upstream_ids / prompt_topic_ids / semantic config). Prefer asset_id from list_llms and omit environment_id — the tool walks every env. Do NOT reuse the environment_id from a prior create (list_omni_gateway_environments); that 404s GET .../upstreams when the proxy lives elsewhere. Each route comes back with its upstream_ids, which update_model_proxy needs to update a route in place instead of recreating it. Credentials are never returned; an unchanged route keeps its stored key when you resend it. Semantic proxies also return routingStrategy, semanticServiceConfigId, fallbackRoute / fallbackModel / fallbackThreshold, denyTopicIds, and semanticCacheConfigId — resend those on update so they are not cleared.

Input Schema

json-schema
api_instance_id: string
asset_id: string
environment_id: string
organization_id: string

Get MCP Server State get_mcp_server_state read-onlyidempotentopen-world

TOOL

Try it out

Arguments
Read the deployed state of a catalog-managed MCP server. Returns current systems, tools, and upstream IDs needed for editing.

Input Schema

json-schema
asset_id: string
environment_id: string
organization_id *: string
server_name: string

Get My Profile get_my_profile read-onlyopen-world

TOOL

Try it out

Arguments

This invocation has no input parameters.

Use this tool to view the current user's own profile / personal settings. Read-only. Returns the caller's identity (username, email, name) and the business groups they belong to. Sensitive fields (phone, last-login, IdP linkage) and permission grants are deliberately omitted — this does NOT report roles or permissions. Use for prompts like 'show my profile', 'what's my email on file?', 'which business groups am I in?'. Example: get_my_profile().

Input Schema

This tool accepts no arguments.

Get Omni Gateway Target Domains get_omni_gateway_target_domains read-onlyidempotentopen-world

TOOL

Try it out

Arguments
Get ingress domains and app unique id for a managed Omni Gateway target.

Input Schema

json-schema
environment_id *: string
organization_id: string | null
provider_id: string | null
target_id *: string

Get Omni Gateway Usage Report get_omni_gateway_usage_report read-onlyidempotentopen-world

TOOL

Try it out

Arguments
Get current managed Omni Gateway size entitlement usage.

Input Schema

json-schema
organization_id: string | null
provider_id: string | null

Get Policy Operation Status get_policy_operation_status read-onlyopen-world

TOOL

Try it out

Arguments
Check the status of an asynchronous policy operation. Pass the 'operationId' a policy apply returned — from 'apply_universal_policy' (the canonical fan-out across providers) or from a single-instance native apply (e.g. Kong/Apigee), which also runs asynchronously via the same Temporal operation flow — to see whether it is RUNNING, COMPLETED, or FAILED (with the failure reason). Poll this after an async apply to confirm the policy actually landed on the provider.

Input Schema

json-schema
operation_id *: string
organization_id: string

Get Policy Template Form get_policy_template_form read-onlyopen-world

TOOL

Try it out

Arguments
Load one policy template detail, including configuration schema, to dynamically render the creation form. Use this immediately after the user selects a policy in prepare_policy_creation. For a non-MuleSoft external gateway (provider='kong'/'apigee'/'azure'), set provider and pass the template's Exchange coordinates (group_id + asset_id + asset_version, from prepare_policy_creation) so the editable schema is read through the Anypoint API Manager Universal API (gateway_id is not used on this path). This tool also serves the EDIT flow: to read the configuration schema of a policy that is ALREADY applied, pass the Exchange coordinates (group_id + asset_id + asset_version) returned by view_api_instance_policies — the policy does not need to be un-applied first.

Input Schema

json-schema
api_instance_id: string
asset_id: string | null
Exchange asset ID of the policy template.
asset_version: string | null
Exchange asset version of the policy template. For the EDIT flow, use the asset_version returned by view_api_instance_policies.
direction: string
environment_id: string
gateway_id: string | null
Gateway ID. Not used on the external-gateway Universal API path.
group_id: string | null
Exchange group ID of the policy template. For the EDIT flow, use the group_id returned by view_api_instance_policies.
organization_id *: string
Anypoint organization (business group) ID that owns the instance.
provider: string | null
template_id: string | null
Policy template ID selected in prepare_policy_creation.

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Get Provision Status get_provision_status read-onlyidempotent

TOOL

Try it out

Arguments
Poll the status of a provisioning or update job. Returns status (running/complete/failed), progress step, result (MCP URL on success), and — on failure — a durable failure record (code, message, failed step, compensations run). A failed job is terminal: re-submit from the wizard to retry.

Input Schema

json-schema
job_id *: string
organization_id: string | null

Get Semantic Cache Config Detail get_semantic_cache_config_detail read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to get full details for a single semantic cache configuration, including embedding config (provider, model), vector DB config (provider, collection), object store config, similarity criteria, similarity threshold, TTL, and LLM-based cache eligibility settings. Requires organization_id, environment_id, and config_id. config_id accepts either the UUID or the config label (e.g. 'semantic-cache-16'); labels are resolved to IDs automatically. Example: get_semantic_cache_config_detail(organization_id=<org_id>, environment_id=<env_id>, config_id='semantic-cache-16').

Input Schema

json-schema
config_id *: string
environment_id *: string
organization_id *: string

Get Trusted MCP Catalog get_trusted_mcp_catalog read-onlyidempotent

TOOL

Try it out

Arguments
Return the catalog of SaaS systems available for MCP server provisioning. Each item includes assetId, name, description, auth type, and a tool list (name + description). Paginated via offset/limit; check has_more/total to page through the full catalog. The upstream config and credential schema are resolved server-side at provision time from the assetId — you only need to pass assetId + selected tool names to provision_mcp_server.

Input Schema

json-schema
limit: integer
offset: integer
organization_id: string | null

List Agents list_agents read-onlyopen-world

TOOL

Try it out

Arguments
List agents registered in the MuleSoft Platform for a given organization. Presents an interactive UI for browsing, filtering, and selecting agents. Paginated: pass offset/limit; if the response has hasMore=true, request the next page with the returned nextOffset. To find a specific agent by name or topic, prefer find_assets over paging through the whole list.

Input Schema

json-schema
limit: integer
name: string | null
offset: integer
organization_id: string | null
provider: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

List APIs list_apis read-onlyopen-world

TOOL

Try it out

Arguments
List APIs from the MuleSoft Platform catalog for a given organization. Presents an interactive UI for browsing, filtering, and selecting APIs. Paginated: pass offset/limit; if the response has has_more=true, request the next page with the returned next_offset. To find a specific API by name or topic, prefer find_assets over paging through the whole list.

Input Schema

json-schema
api_category: string | null
limit: integer
name: string | null
offset: integer
organization_id: string | null
provider: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

List Business Groups list_business_groups read-onlyopen-world

TOOL

Try it out

Arguments
List available business groups, optionally filtering by name. Paginated: pass offset/limit; if the response has has_more=true, request the next page with the returned next_offset.

Input Schema

json-schema
limit: integer
name: string | null
offset: integer

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

List Connected Apps list_connected_apps read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to list an organization's Anypoint connected apps. Read-only. Returns each app's client id, name, grant types, and enabled flag — the client secret is never included. Set mine=true to return only the connected apps the current user owns. Optional search (by name) and limit/offset pagination (default limit 25, max 100). Resolves the org from the session when organization_id is omitted. Use for prompts like 'list our connected apps', 'what connected apps do I own?'. Example: list_connected_apps(organization_id=<id>).

Input Schema

json-schema
limit: integer
mine: boolean
offset: integer
organization_id: string | null
Anypoint organization ID to list connected apps for. Resolves from the active session when omitted.
search: string | null
Filter to connected apps whose name matches this text.

List Environments list_environments read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to list the Anypoint environments in a business group, with each environment's type reliably resolved to sandbox / production / unknown (field environmentType). Read-only: it does NOT change the active-environment context (that is select_active_environment). Resolves the org from the session when organization_id is omitted. Use for prompts like 'list the environments in my sandbox business group', 'which environments does org X have?', 'do I have a production environment?'. Example: list_environments(organization_id=<organization_id>).

Input Schema

json-schema
organization_id: string | null
Anypoint organization / business-group ID whose environments to list. Resolves from the active session when omitted.

List Governance Strategies list_governance_strategies read-onlyopen-world

TOOL

Try it out

Arguments
List governance strategies for an organization. Shows the same searchable and filterable table style as the main web app.

Input Schema

json-schema
limit: integer
offset: integer
organization_id: string | null
strategy_type: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

List Instance Policy Operations list_instance_policy_operations read-onlyopen-world

TOOL

Try it out

Arguments
List the asynchronous policy operations (the Activity feed) for an external gateway instance (Kong / Apigee / Azure) via the Anypoint API Manager Universal API. Pass provider and the numeric api_instance_id. Because apply/edit/remove writes are processed asynchronously (accepted with HTTP 202), use this to check the terminal state of a recent write: each operation carries a type (APPLY / UPDATE / TOGGLE / REMOVE / CANONICAL_APPLY) and a status (RUNNING / COMPLETED / FAILED). FAILED operations are enriched with their error reason. Pass limit to cap the number of returned operations (newest first).

Input Schema

json-schema
api_instance_id: string
limit: integer
organization_id *: string
Anypoint organization (business group) ID that owns the instance.
provider: string

List Secrets Synced by One Integration list_integration_secrets read-onlyopen-world

TOOL

Try it out

Arguments
List the secret references discovered (synced) by ONE specific vault integration (identified by integration_name or integration_id). Shows secret metadata (name, type, expiration) only — never values or internal group identifiers. Use list_secret_refs instead to list ALL secrets across every group in the environment.

Input Schema

json-schema
environment_id: string | null
Target Anypoint environment UUID. Required unless environment_name is provided instead.
environment_name: string | null
integration_id: string | null
UUID of the vault integration. Use integration_name instead when you only know the display name.
integration_name: string | null
Human-readable name of the vault integration (as shown by onboard_vault). Provide this OR integration_id — not both.
limit: integer
offset: integer
organization_id: string | null

List LLMs list_llms read-onlyopen-world

TOOL

Try it out

Arguments
List LLM models registered in the MuleSoft Platform for a given organization. Presents an interactive UI for browsing, filtering, and selecting LLMs. Paginated: pass offset/limit; if the response has has_more=true, request the next page with the returned next_offset.

Input Schema

json-schema
category: string | null
limit: integer
name: string | null
offset: integer
organization_id: string | null
provider: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

List MCP Servers list_mcp_servers read-onlyopen-world

TOOL

Try it out

Arguments
List MCP servers registered in the MuleSoft Platform for a given organization. Presents an interactive UI for browsing, filtering, and selecting MCP servers.

Input Schema

json-schema
limit: integer
name: string | null
offset: integer
organization_id *: string
protocol: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

List Model Proxy Gateway Targets list_model_proxy_gateway_targets read-onlyidempotentopen-world

TOOL

Try it out

Arguments
List the gateway targets a Model Proxy can be deployed onto, for one environment. This is the exact list the 'Create a Model Proxy' wizard shows, and the ONLY valid source of target_id for create_model_proxy (the server resolves the matching target name). Requires the environment's id from list_omni_gateway_environments — a display name such as 'Demo' fails as an authorization error that looks like a missing role but is not. Prefer a row with deployable: true; the wizard greys the others out. Do NOT use list_omni_gateway_targets for this — it reads a different Anypoint service whose ids the deploy call will not accept.

Input Schema

json-schema
environment_id *: string
organization_id: string

List Model Proxy Providers list_model_proxy_providers read-onlyidempotentopen-world

TOOL

Try it out

Arguments
List the LLM providers the 'Create a Model Proxy' wizard offers on step 2, plus each provider's current model dropdown (the same GET .../modelproxies/models?provider= call the UI makes per dropdown). Leave provider empty (default) to return all six wizard providers with their models — present every id together with that row's models[].value in the same reply. Call this before asking which provider or model to use; do not invent provider ids or public model names. Route model is the bare models[].value (e.g. gpt-4o, never a UUID or openai:gpt-4o). OpenAI, Gemini, Azure, and NVIDIA are dropdowns — an empty models list is not freeform. Only freeformModel: true (bedrock, anthropic) takes a typed model id. Pass provider only to refresh one dropdown. defaultUrl is the wizard's destination URL. Each row's authFields / configFields are the extra wizard inputs that appear after that provider is selected (Azure URL + optional deployment_id/api_version; Bedrock AWS keys + aws_region). This is NOT list_llms (existing proxies) and NOT list_model_proxy_semantic_routing.

Input Schema

json-schema
environment_id *: string
Anypoint environment ID — the opaque id from list_omni_gateway_environments, not the display name.
organization_id: string
provider: string

List Model Proxy Semantic Routing list_model_proxy_semantic_routing read-onlyidempotentopen-world

TOOL

Try it out

Arguments
Two-stage, paginated lookup matching the 'Create a Model Proxy' wizard. First call it without semantic_service_config_id to receive one page of semantic services; present their labels and stop for the user's choice. Use pagination.next_offset only when another page is needed. After selection, call it once with that returned row's exact id to receive only that service's topic page. Do not preload topics for every service and do not repeat the service-list call while the choice is unchanged. Each service has serviceType and topicMode. advanced / topicMode=select: pick existing topic ids as prompt_topic_ids; usedForDenyList rows are prompt-guard choices. basic / topicMode=create: the wizard's 'Create new topic' modal; no topic endpoint is called during lookup and an empty topic page is expected. Collect a topic name and sample utterances per route and pass prompt_topic {name, utterances} on create_model_proxy / update_model_proxy; those tools POST /prompt-topics like the UI. The selected-service result's wizardFields lists every other control on that wizard step: fallback card (fallback_threshold default 0.5, fallback_route, fallback_model), prompt guard (deny_topic_ids_json or deny_topics_json name+utterances; denyTopics is the usedForDenyList catalog), and semantic cache (list_semantic_cache_configs then semantic_cache_config_id). Never tell the user the environment has no topics so you cannot create the proxy. Pass a service id as semantic_service_config_id. Semantic routing needs at least two routes. This is NOT list_semantic_cache_configs.

Input Schema

json-schema
environment_id *: string
Anypoint environment ID — the opaque id from list_omni_gateway_environments, not the display name.
limit: integer
offset: integer
organization_id: string
semantic_service_config_id: string

List Model Proxy Vault Secret Groups list_model_proxy_vault_secret_groups read-onlyidempotentopen-world

TOOL

Try it out

Arguments
List the downloadable CSM v2 secret groups shown by the Model Proxy wizard's From Vault picker. Use only after the user chooses From Vault for a new or replaced route credential. Present group names, never ids, then stop and wait for the user's selection. After the user chooses a name, match it to one returned row and pass that row's id internally to list_model_proxy_vault_secrets. The response contains metadata only and never secret values. If no groups are returned, offer Dynamic credentials; never request a raw/static key.

Input Schema

json-schema
environment_id *: string
Anypoint environment ID from list_omni_gateway_environments; never ask the user to provide an id
organization_id: string

List Model Proxy Vault Secrets list_model_proxy_vault_secrets read-onlyidempotentopen-world

TOOL

Try it out

Arguments
List the eligible Blob secrets in one group returned by list_model_proxy_vault_secret_groups. Pass the chosen row's id as secret_group_id internally. Present secret names, never ids or URNs, then stop and wait for the user's selection. After the user chooses, copy that row's id and its group id into the appropriate typed *_vault_ref route field; do not construct a URN and do not ask for secret values. Bedrock requires separate selections for access key id and secret access key, with an optional session-token selection.

Input Schema

json-schema
environment_id *: string
Anypoint environment ID used for the active Model Proxy journey
organization_id: string
secret_group_id *: string

List Notifications list_notifications read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to read the user's currently configured API Manager alerts (notifications) so the agent can answer questions about alert coverage, redundancy, or staleness without navigating to the Notifications page. Returns one page of basic alerts with fields: id, name, conditionType, severity, target (api / instance / application), responseCode (when applicable), lastTriggered (ISO timestamp or null when never triggered), createdAt, updatedAt. Pagination via offset/limit (defaults: offset=0, limit=20, max=100). Use this for prompts like 'which alerts haven't triggered recently?', 'which alert conditions are redundant?', 'do I have alerts on production?', 'show me my notifications'. Example: list_notifications(organization_id=<organization_id>). Example: list_notifications(organization_id=<organization_id>, offset=20, limit=20).

Input Schema

json-schema
limit: integer
offset: integer
organization_id: string | null

List Omni Gateway Environments list_omni_gateway_environments read-onlyidempotentopen-world

TOOL

Try it out

Arguments
List Anypoint environments available for managed Omni Gateway creation.

Input Schema

json-schema
organization_id: string | null
provider_id: string | null

List Omni Gateway Targets list_omni_gateway_targets read-onlyidempotentopen-world

TOOL

Try it out

Arguments
List managed Omni Gateway deployment targets for an environment.

Input Schema

json-schema
environment_id *: string
organization_id: string | null
provider_id: string | null

List Provider Gateways list_provider_gateways read-onlyopen-world

TOOL

Try it out

Arguments
List gateways for the active provider. Today only MuleSoft is supported (Kong / Apigee are roadmap), so the tool defaults `provider_id to provider-mulesoft and returns Omni Gateways without requiring select_active_provider to be called first. organization_id` defaults to the caller's active Anypoint org. Both parameters are optional. Paginated: pass offset/limit; if the response has has_more=true, request the next page with the returned next_offset.

Input Schema

json-schema
limit: integer
offset: integer
organization_id: string | null
provider_id: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

List Scanner Providers list_scanner_providers read-onlyidempotent

TOOL

Try it out

Arguments

This invocation has no input parameters.

Get the list of available scanner providers (Google Vertex, Microsoft Copilot, etc.)

Input Schema

This tool accepts no arguments.

List Scanner Runs list_scanner_runs read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to read all configured scanners with their last-run timestamps so the agent can answer questions about scanner schedule, freshness, and run-history without navigating to the Scanners page. Returns one row per scanner with: id, name, provider, status, lastRun (ISO timestamp or null when never run), schedule (cron), and agentsFound (count from the most recent run).

Optional filter: `provider_id` (case-insensitive substring match against the scanner's provider key/label) restricts the result to scanners for one provider — useful for prompts like 'which scanners for OpenAI haven't run recently'.

Use this for prompts like 'which scanners haven't run recently?', 'what scanners do I have?', 'is the X scanner running on schedule?', 'show me my scan history'.

Example: list_scanner_runs(organization_id=<organization_id>).
Example: list_scanner_runs(organization_id=<organization_id>, provider_id='openai').

Input Schema

json-schema
limit: integer
offset: integer
organization_id: string | null
provider_id: string | null

List All Secrets in Environment list_secret_refs read-onlyopen-world

TOOL

Try it out

Arguments
List ALL secret references (names and types) across every secret group in an organization + environment. Returns metadata only — never secret values or internal storage identifiers. Supports pagination via offset/limit. USE THIS for 'list/show the secrets in my environment'. Use list_integration_secrets instead to list only the secrets synced by ONE vault integration; use search_secrets to find a secret by name; use check_secret to verify one exists.

Input Schema

json-schema
environment_id: string | null
Target Anypoint environment UUID. Required unless environment_name is provided instead.
environment_name: string | null
limit: integer
offset: integer
organization_id: string | null

List Semantic Cache Configs list_semantic_cache_configs read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to list all semantic cache configurations for a given organization and environment. Returns config IDs, labels, embedding provider, and vector DB provider for each config. Use get_semantic_cache_config_detail to see full settings (threshold, TTL, etc.). Requires both organization_id and environment_id. Example: list_semantic_cache_configs(organization_id=<org_id>, environment_id=<env_id>).

Input Schema

json-schema
environment_id *: string
organization_id *: string

List Teams list_teams read-onlyopen-world

TOOL

Try it out

Arguments
Use this tool to read an organization's Anypoint Teams (the platform identity construct — NOT the Microsoft Teams messaging channel). Returns lightweight team rows so the agent can read the team tree or locate the root team (the team with no parent). Optional filters: search (by team name), parent_team_id (direct children of a team), and limit/offset pagination (default limit 50, max 200). Use for prompts like 'what teams exist in this org?', 'list all teams', 'find the root team', 'show the child teams of team X'. Example: list_teams(organization_id=<organization_id>). Example: list_teams(organization_id=<organization_id>, search=Payments).

Input Schema

json-schema
limit: integer
offset: integer
organization_id: string | null
Anypoint organization ID whose teams to list. Resolves from the active session when omitted.
parent_team_id: string | null
Restrict the result to the direct child teams of this team ID.
search: string | null
Filter to teams whose name matches this text.

List Universal Policies list_universal_policies read-onlyopen-world

TOOL

Try it out

Arguments
List the Universal (canonical) policy templates available to an organization. Each entry returns the template's 'configurationSchema' — a standard JSON Schema (type/properties/required/enum/const/minItems, incl. nested objects and arrays) describing the exact config fields to collect from the user before applying — plus which providers (mulesoft/anypoint, kong, apigee, azure, aws) each supports and the native policy name it becomes on each. Call this before 'apply_universal_policy' so you can render the config form from 'configurationSchema', present the right template name, and show provider coverage — all from one call; the values you gather go straight into apply_universal_policy's 'configuration' argument.

Input Schema

json-schema
organization_id: string
policy_name_hint: string

Login to MuleSoft Platform login read-onlyidempotentopen-world

TOOL

Try it out

Arguments
Authenticate with MuleSoft Platform. MUST be called before any other tool. Call WITHOUT arguments to display the interactive login panel where the user enters their credentials. Do NOT ask the user for username/password in the chat.

Input Schema

json-schema
password: string | null
username: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Logout from MuleSoft Platform logout idempotent

TOOL

Try it out

Arguments

This invocation has no input parameters.

Clear the stored authentication token.

Input Schema

This tool accepts no arguments.

Create / Onboard Vault Integration onboard_vault open-world

TOOL

Try it out

Arguments
Create, add, set up, connect, or register a new external vault provider integration (AWS Secrets Manager, Azure Key Vault, or HashiCorp Vault) using the managed raw-value flow — this is the tool for 'create an external vault for AWS Secrets Manager'. Common provider phrasings are normalized (e.g. 'aws', 'aws secret manager' -> aws_secrets_manager). Credentials are supplied as raw_secrets (the managed flow); credential_refs is NOT accepted here. Resolves the provider/auth-method auth schema and validates the supplied raw_secrets/connection_config against it, then connects to the vault and ABORTS if the connection fails — the integration is only created after a successful live connectivity test. The connection is considered successful ONLY if the vault is reachable AND the credential grants all required permissions (list, describe, get-value); a reachable vault whose credential is missing any of these is rejected and the response lists the missing permissions in 'missingPermissions' so the user knows exactly what to grant. Returns the created integration on success.

Input Schema

json-schema
auth_method: string
connection_config: object | null
description: string | null
Optional human-readable description (max 512 chars).
environment_id: string | null
Target Anypoint environment UUID. Required unless environment_name is provided instead.
environment_name: string | null
name: string
organization_id: string | null
provider: string
raw_secrets: object | null
sync_interval_minutes: integer
vault_url: string

Compare policy coverage across environments policy_coverage_summary read-onlyopen-world

TOOL

Try it out

Arguments
Cross-environment policy diff for one API. Caller supplies a list of `(instance_id, environment_id, environment_name) tuples (typically from read_app_view_state(scope='service_instances')); the tool partitions them by environment, runs audit_api_policies against the production + sandbox samples, and returns the policy-name diff between the two environments. Use this for prompts like 'compare policy coverage between production and staging' (W-22750961 #72). Args: organization_id (required), asset_id (required), instances (required, list of {id, environment_id, environment_name}). Returns: {summary, by_environment: {env_name: {instance_count, sampled, policy_names}}, diff: {shared, only_in_<env_a>, only_in_<env_b>}}`.

Input Schema

json-schema
asset_id *: string
instances *: array | string
organization_id *: string

Prepare Automated Policy Creation prepare_automated_policy_creation read-onlyopen-world

TOOL

Try it out

Arguments
Open the automated-policy creation wizard with scope options and policy templates.

Input Schema

json-schema
organization_id: string | null

Prepare Control Creation prepare_control_creation read-onlyopen-world

TOOL

Try it out

Arguments
Open the control creation wizard with scope options and control rule catalog data, using the same scope, selection, and naming flow as the web app.

Input Schema

json-schema
organization_id: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Prepare Policy Creation prepare_policy_creation read-onlyopen-world

TOOL

Try it out

Arguments
Load policy options for one asset instance. Returns only policies that are not already applied. Accepts api_instance_id (numeric) or asset_id (Exchange asset ID) — when asset_id is provided the numeric instance ID is resolved automatically. Pass policy_name_hint to filter the list to policies matching a name — use this when the user names a specific policy. After the user selects a policy from the selector UI, call get_policy_template_form with the same organization_id, environment_id, api_instance_id, plus the selected template_id/asset_id/group_id/asset_version/direction to open the policy form UI. For a non-MuleSoft external gateway (provider='kong'/'apigee'/'azure'), set provider and pass the numeric api_instance_id — the native policy catalog is read through the Anypoint API Manager Universal API (gateway_id is not used on this path). This routing is gated per organization; a closed gate returns a structured error.

Input Schema

json-schema
api_instance_id: string | null
Numeric API Manager instance ID. Provide this or asset_id; when asset_id is given the numeric ID is resolved automatically.
asset_id: string | null
Exchange asset ID of the API. Alternative to api_instance_id.
environment_id: string | null
Anypoint environment ID. Optional on the external-gateway (Universal API) path, where api_instance_id alone identifies the instance.
gateway_id: string | null
Gateway ID. Not used on the external-gateway Universal API path.
organization_id *: string
Anypoint organization (business group) ID that owns the instance.
policy_name_hint: string | null
Filter the returned policies to those whose name matches this hint. Use when the user names a specific policy.
provider: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Provision MCP Server provision_mcp_server open-world

TOOL

Try it out

Arguments
Provision a composite MCP server on Omni Gateway from selected catalog systems. Returns a job_id — poll with get_provision_status until complete or failed. PRECONDITIONS: organization_id and environment_id must be UUIDs (call list_business_groups + list_environments first — do NOT pass friendly names like 'development'). target_id / target_name come from list_provider_gateways. Each servers[] entry needs assetId + tools[] (tool names) from get_trusted_mcp_catalog; the upstream config and credential schema are resolved server-side from the assetId. For an org-owned Anypoint API (any assetId from this org's API catalog, not just get_trusted_mcp_catalog) you may instead pass a bare {assetId} or {assetId, tools} entry — the OpenAPI spec, per-operation tool schemas, and the upstream URL of one of its deployed instances are resolved server-side; tools is a list of "METHOD:/path" op keys (omit or leave empty to expose every operation). environment_id is the destination gateway environment, not a filter on the source instance: with one deployed instance it is used regardless of its own environment; with several, environment_id only disambiguates between them, and a still-ambiguous set is reported so you can pass servers[].upstream.url to pick one explicitly. If that assetId matches more than one API across this org's business groups, also pass groupId (and version, if needed) to disambiguate — the tool will report the candidates if you don't. If any lookup returns no usable entry, STOP and ask the user — do not invent IDs.

Input Schema

json-schema
base_path *: string
environment_id *: string
organization_id *: string
server_name *: string
servers *: array
target_id *: string
target_name *: string

Read app view state read_app_view_state read-only

TOOL

Try it out

Arguments
Read the frontend's current render state for the active thread. The frontend pushes its state on every navigation; this tool returns the latest snapshot for the requested scope. Use this INSTEAD of the legacy bridge tools (get_app_view_state, get_service_detail_state, get_instance_detail_state, get_notification_list_state, get_policy_form_state, get_policy_selector_state) — same data, no round-trip. scope values: 'app_view' (route + viewKind + entity ids + tabs), 'service_detail', 'instance_detail', 'service_governance', 'service_overview', 'service_instances', 'service_monitoring', 'service_listing', 'policy_form', 'policy_selector', 'notification_list', 'notification_create', 'notification_settings', 'cost_management'. Returns `{has_state: bool, scope, payload, updated_at}. When has_state` is False, the page hasn't pushed that slice — fall back to a server-side data-fetch tool for the relevant entity. Example: read_app_view_state(scope='app_view').

Input Schema

json-schema
scope *: string

Rename Business Group rename_business_group idempotentopen-world

TOOL

Try it out

Arguments
Use this tool to change ONLY the display name of an Anypoint business group. Write operation. Renaming is the sole business-group attribute editable headlessly — for ANY other change (owner, quota/entitlements) or to delete a business group, tell the user to use the Anypoint Access Management UI. Resolves the business group from the session when organization_id is omitted. Use for prompts like 'rename my business group to Acme Corp'. Example: rename_business_group(organization_id=<id>, new_name=Acme).

Input Schema

json-schema
new_name: string
organization_id: string | null
Business-group ID to rename. Resolves from the active session when omitted.

Rename Connected App rename_connected_app idempotentopen-world

TOOL

Try it out

Arguments
Use this tool to change ONLY the display name of an Anypoint connected app. Write operation — it NEVER rotates the client secret. Renaming is the sole connected-app attribute editable headlessly; for any other change (scopes, grant types, secret reset) or to delete an app, tell the user to use the Anypoint UI. client_id is the connected app's client id (from list_connected_apps). Use for prompts like 'rename the CI/CD connected app to Deploy Bot'. Example: rename_connected_app(client_id=<id>, new_name=Deploy Bot).

Input Schema

json-schema
client_id: string
new_name: string
organization_id: string | null
Anypoint organization ID that owns the connected app. Resolves from the active session when omitted.

Rename Environment rename_environment idempotentopen-world

TOOL

Try it out

Arguments
Use this tool to change ONLY the name of an Anypoint environment. Write operation. Renaming is the sole environment attribute editable headlessly — the type (sandbox/production) is immutable, and for any other change or to delete an environment, tell the user to use the Anypoint UI. Resolves the org from the session when organization_id is omitted. Use for prompts like 'rename environment X to QA'. Example: rename_environment(environment_id=<id>, new_name=QA).

Input Schema

json-schema
environment_id: string
new_name: string
organization_id: string | null
Anypoint organization / business-group ID that owns the environment. Resolves from the active session when omitted.

Search Global Content search_global_content read-onlyopen-world

TOOL

Try it out

Arguments
UI tool for embedded agents to search content across agents, MCP servers, and APIs in the MuleSoft Platform. Returns ranked results and an embeddable command-palette UI. You must pass exactly one business_group_id (Anypoint business group ID) for each search request.

Input Schema

json-schema
business_group_id *: string
query *: string
size: integer

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Search Known Issues search_known_issues read-onlyopen-world

TOOL

Try it out

Arguments
Search MuleSoft Known Issues database by query, product, and status. Returns issue details with workarounds and status information.

Input Schema

json-schema
limit: integer
product: string | null
query *: string
status: string | null

Search MuleSoft Documentation search_mulesoft_documentation read-onlyopen-world

TOOL

Try it out

Arguments
Search official MuleSoft product documentation to answer how-to questions, feature explanations, configuration guides, best practices, and version release notes. Use when the user asks HOW to do something, WHAT a MuleSoft product or concept is, or WHAT CHANGED in a specific version — not for live data about the user's org (use run_graphql_query or domain fetch tools for that). Supports optional version (e.g. '4.6') and product (e.g. 'API Manager') filters.

Input Schema

json-schema
limit: integer
product: string | null
query *: string
version: string | null

Search Repository Knowledge search_repository_knowledge read-only

TOOL

Try it out

Arguments
Search a curated static corpus of MuleSoft governance rulesets and ruleset YAML files. Use ONLY for ruleset-grounded questions: 'find a ruleset for API versioning', 'what does the anypoint-best-practices ruleset check', 'which rulesets enforce security headers'. Returns matches with sourcePath, rulesetKey (use with fetch_ruleset_details), snippet, and scores. Do NOT use for product how-to questions, feature explanations, or release notes — use search_mulesoft_documentation for those.

Input Schema

json-schema
lexical_top_n: integer
query *: string
source_path_prefixes: array | string | null
top_k: integer

Search Secrets by Name search_secrets read-onlyopen-world

TOOL

Try it out

Arguments
Search for secrets by PARTIAL name across ALL secret groups in an environment (requires at least 3 characters). Returns matching secret metadata (name, type, group name, expiration). USE THIS to find candidates when you know only part of a secret's name. Use check_secret instead to confirm one exact secret exists, or list_secret_refs to enumerate every secret.

Input Schema

json-schema
environment_id: string | null
Target Anypoint environment UUID. Required unless environment_name is provided instead.
environment_name: string | null
limit: integer
organization_id: string | null
search_term: string

Select Active Business Group select_active_business_group read-onlyopen-world

TOOL

Try it out

Arguments
Get the current active business group context and optionally set a new active business group by passing business_group_id. Use this for app-level context updates without launching the business group selector UI.

Input Schema

json-schema
business_group_id: string | null
name: string | null

Select Active Environment select_active_environment read-onlyopen-world

TOOL

Try it out

Arguments
Browse the available Anypoint environments for the active MuleSoft provider and set one as the active environment context.

Input Schema

json-schema
environment_id: string | null
organization_id: string | null
provider_id: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Select Active Provider select_active_provider read-onlyopen-world

TOOL

Try it out

Arguments
Pick the active gateway provider context for Omni Gateway tools (e.g. list_provider_gateways and the Omni Gateway wizard). Two-phase: call with no provider_id to present the available providers, then call again with the selected provider_id to commit. Do NOT use this tool for managing MuleSoft / Anypoint account credentials, logging in, logging out, or switching Anypoint user accounts — those flows are handled by the Anypoint connected-app session and are not user-driven in the MuleSoft Platform; under the connected-app setup users do not need to log in or out.

Input Schema

json-schema
provider_id: string | null

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Select API Version select_api_version read-onlyopen-world

TOOL

Try it out

Arguments
Show an interactive version selector for an API and notify the host when the user picks a version.

Input Schema

json-schema
asset_id *: string
organization_id *: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Show Observability Dashboards show_observability_performance read-onlyopen-world

TOOL

Try it out

Arguments
Load observability dashboards data for embedded MCP app rendering.

Input Schema

json-schema
environment: string
provider: string | null
time_range: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Validate Integration Connection test_integration_connection open-world

TOOL

Try it out

Arguments
Validate vault connectivity. Two modes: (1) Pre-create — provide provider, auth_method, vault_url, and credentials to validate BEFORE saving. Supply raw_secrets for the managed flow (the default) OR credential_refs for the reference flow; the mode is inferred from which one you send — do not send both. (2) Post-create — provide only integration_name or integration_id to validate an already-saved integration against its stored credentials (works for both managed and reference integrations). Returns connected=true ONLY when the vault is reachable AND the credential grants all required permissions (list, describe, get-value). When the vault is reachable but under-permissioned, connected=false, reachable=true, and 'missingPermissions' lists what must be granted before onboard_vault / edit_integration will save.

Input Schema

json-schema
auth_method: string | null
connection_config: object | null
credential_refs: object | null
environment_id: string | null
Target Anypoint environment UUID. Required unless environment_name is provided instead.
environment_name: string | null
integration_id: string | null
integration_name: string | null
Human-readable name of the vault integration (as shown by onboard_vault). Provide this OR integration_id — not both.
organization_id: string | null
provider: string | null
raw_secrets: object | null
vault_url: string | null
Vault endpoint URL, e.g. 'https://secretsmanager.us-east-1.amazonaws.com' or 'https://my-vault.vault.azure.net'. Max 1024 chars.

Test Scanner Connection test_scanner_connection read-onlyidempotent

TOOL

Try it out

Arguments
Test connection to a scanner provider before creating the scanner

Input Schema

json-schema
auth_fields: any | null
auth_method: string
provider *: string

Update MCP Server update_mcp_server open-world

TOOL

Try it out

Arguments
Update an existing catalog-managed MCP server. Diffs new configuration against deployed state and applies incremental changes. Returns a job_id for status polling. PRECONDITIONS: requires the same UUID-based IDs as provision_mcp_server (organization_id, environment_id, target_id all UUIDs from list_* tools), plus the deployed state from get_mcp_server_state. Never pass friendly names — every ID must be a UUID or a catalog-supplied identifier. servers[] entries follow the same shape as provision_mcp_server, including the bare {assetId} / {assetId, tools} form for org-owned Anypoint APIs and the groupId/version disambiguation for an assetId shared across business groups.

Input Schema

json-schema
api_id *: integer
asset_id *: string
current_upstream_ids: object | null
deployed_systems: array | null
environment_id *: string
organization_id *: string
server_name *: string
servers *: array
target_id *: string
target_name *: string

Update Model Proxy update_model_proxy open-world

TOOL

Try it out

Arguments
Update routes and routing config on an existing Model Proxy — the same PATCH the detail-page Save uses (xapi /apis/{id}, top-level upstreams + id-refs). Pass organization_id, the typed routes list, and asset_id (or api_instance_id). Omit environment_id.
MANDATORY, EVERY call, NO exceptions: call get_llm_proxy_routes IN THIS SAME TURN, immediately before this tool, and build routes list by taking its full route list and only applying the user's requested change on top — even if you (or an earlier turn in this conversation) already fetched the routes before. This tool REPLACES the whole route list and every semantic field wholesale: a route, upstream_ids, prompt_topic_ids, fallback_*, deny_topic_ids, or semantic_cache_config_id you don't resend is silently dropped from the proxy — not left unchanged. Do not rely on routes you constructed in an earlier turn or reconstructed from memory/chat history: multi-turn conversations lose context (older tool results get pruned), and a stale or partial re-send has broken production proxies by omitting prompt_topic_ids/upstream_ids on routes the user wasn't editing, which Anypoint then rejects or silently detaches. For every route the user is NOT changing this turn: carry over its upstream_ids and, on semantic proxies, its prompt_topic_ids verbatim from the fresh get_llm_proxy_routes read — do not omit them just because the user didn't mention that route. Do NOT ask the user to retype a credential for a kept route — copy its upstream_ids and omit selector fields so the stored key is reused (same as the UI leaving the key blank). Only new routes need provider + model + upstream_url plus an explicit credential_source chosen by the user. Dynamic uses the selector field(s); From Vault uses selections from the two Model Proxy vault lookup tools. The backend constructs the wire credential shape; literal API/AWS keys and caller-built URNs are rejected. Semantic updates follow the same topicMode as create: select existing prompt_topic_ids on advanced services, or prompt_topic {name, utterances} on basic (created on save). Resend fallback_*, deny_topic_ids_json / deny_topics_json, and semantic_cache_config_id from the fresh get_llm_proxy_routes read so those wizard fields are not cleared. REPLACES the full list: omit a current route to remove it.

Input Schema

json-schema
api_instance_id: string
asset_id: string
deny_topic_ids_json: string
deny_topics_json: string
environment_id: string
fallback_model: string
fallback_route: string
fallback_threshold: number
organization_id *: string
Anypoint organization ID
routes *: array
routing_strategy: string
semantic_cache_config_id: string
semantic_service_config_id: string

Update Semantic Cache Config update_semantic_cache_config open-world

TOOL

Try it out

Arguments
Use this tool to update a semantic cache configuration. Supports updating TTL (in seconds), similarity threshold (0.0 to 1.0), and LLM-based cache eligibility (enabled/disabled). Requires organization_id, environment_id, config_id, and at least one field to update. config_id accepts either the UUID or the config label. Example: update_semantic_cache_config(organization_id=<org_id>, environment_id=<env_id>, config_id='semantic-cache-16', ttl=10). Do not use it for Model Proxy routes, providers, models, routing strategies, or fallback changes. Obtain all values from the user request or a preceding semantic-cache lookup; never infer values from examples.

Input Schema

json-schema
config_id *: string
environment_id *: string
llm_eligibility_enabled: boolean | null
organization_id *: string
similarity_threshold: number | null
ttl: integer | null

View Agent Details view_agent_details read-onlyopen-world

TOOL

Try it out

Arguments
Show read-only details for one agent, including versions, instances, and metadata.

Input Schema

json-schema
asset_id *: string
asset_version: string | null
organization_id *: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

View API Instance Details view_api_instance_details read-onlyopen-world

TOOL

Try it out

Arguments
Show details for one API instance with a web-aligned header. Accepts either an instance object or identifiers to resolve it.

Input Schema

json-schema
api_version: string | null
asset_id *: string
asset_version: string | null
instance: object | null
instance_id: string | null
organization_id *: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

View API Instance Monitoring view_api_instance_monitoring read-onlyopen-world

TOOL

Try it out

Arguments
Show instance monitoring charts, traffic, and clients for one API instance.

Input Schema

json-schema
api_version: string | null
asset_id *: string
asset_version: string | null
instance: object | null
instance_id: string | null
organization_id *: string
time_range: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

View API Instance Policies view_api_instance_policies read-onlyopen-world

TOOL

Try it out

Arguments
Show the applied policies for one API instance, MuleSoft-hosted or external. A MuleSoft (Flex Gateway) instance is read from Anypoint API Manager with the same grouping UI as the web app; an EXTERNAL gateway instance (Kong / Apigee / Azure / AWS) has its native applied policies read through the Anypoint API Manager Universal API (gated per organization). Provider is deduced from the instance; pass provider only to force it. To CHANGE an external policy, use edit_applied_policy with the policyId listed here.

Input Schema

json-schema
api_version: string | null
asset_id *: string
asset_version: string | null
environment: string | null
instance: object | null
instance_id: string | null
organization_id *: string
provider: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

View API Version Details view_api_version_details read-onlyopen-world

TOOL

Try it out

Arguments
Show read-only details for one API version, including instances, metadata, and lifecycle fields.

Input Schema

json-schema
api_version: string | null
asset_id: string | null
asset_version: string | null
organization_id: string | null
version *: object

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

View API Version Governance Report view_api_version_governance_report read-onlyopen-world

TOOL

Try it out

Arguments
Show governance ruleset report summary and findings for one API version.

Input Schema

json-schema
api_name: string | null
api_version: string | null
asset_id *: string
group_id *: string
organization_id *: string
version *: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

View API Version Instances view_api_version_instances read-onlyopen-world

TOOL

Try it out

Arguments
Show available instances for one API version and allow selecting instances to send back to the host.

Input Schema

json-schema
api_version *: string
asset_id *: string
asset_version: string | null
organization_id *: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

View Governance Report view_governance_report read-only

TOOL

Try it out

Arguments
Service-centric governance rollup. Returns one row per cataloged service with its applied controls nested. Each service row carries compliance status, total violation/warning counts, and a list of controls (one per control evaluated against the service) with per-control violation/warning counts. Drill into one service with view_service_governance_findings to see the rule-level findings.

Input Schema

json-schema
organization_id *: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

View LLM Details view_llm_details read-onlyopen-world

TOOL

Try it out

Arguments
Show read-only details for one LLM model, including versions, instances, and metadata.

Input Schema

json-schema
asset_id *: string
asset_version: string | null
organization_id *: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

View MCP Server Details view_mcp_server_details read-onlyopen-world

TOOL

Try it out

Arguments
Show read-only details for one MCP server, including versions, instances, and metadata.

Input Schema

json-schema
asset_id *: string
asset_version: string | null
organization_id *: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

View Service Governance Findings view_service_governance_findings read-only

TOOL

Try it out

Arguments
Show one service's per-ruleset findings (rule occurrences with severity + message + path), optionally narrowed to one control via control_id. Per-ruleset rule lists are capped at 100 with a 'truncated' marker; when truncated, ask the user to filter by ruleset for the full list. Call view_governance_report first to get the service_id (and control_id, if narrowing).

Input Schema

json-schema
control_id: string
organization_id *: string
service_id *: string

UI Resource

text/html;profile=mcp-app

Hosts that implement the MCP Apps extension render this tool's output through the linked UI resource.

Agent Catalog anypoint-agent-catalog-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://agent-catalog/app.html from the MCP server.

Interactive HTML UI for browsing and selecting agents from the catalog

Resource

uri: ui://agent-catalog/app.html
mimeType: text/html;profile=mcp-app

Agent Details agent-details-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://agent/details.html from the MCP server.

Read-only details panel for one agent

Resource

uri: ui://agent/details.html
mimeType: text/html;profile=mcp-app

API Catalog anypoint-api-catalog-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://api-catalog/app.html from the MCP server.

Interactive HTML UI for browsing and selecting APIs from the catalog

Resource

uri: ui://api-catalog/app.html
mimeType: text/html;profile=mcp-app

API Instance Details api-instance-details-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://api-instance/details.html from the MCP server.

Read-only details header for one API instance

Resource

uri: ui://api-instance/details.html
mimeType: text/html;profile=mcp-app

API Instance Monitoring api-instance-monitoring-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://api-instance/monitoring.html from the MCP server.

Instance monitoring view aligned with the web app monitoring tab

Resource

uri: ui://api-instance/monitoring.html
mimeType: text/html;profile=mcp-app

API Instance Policies api-instance-policies-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://api-instance/policies.html from the MCP server.

Instance policy list aligned with the web app policies tab

Resource

uri: ui://api-instance/policies.html
mimeType: text/html;profile=mcp-app

API Version Details api-version-details-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://api-version/details.html from the MCP server.

Read-only details panel for one API version

Resource

uri: ui://api-version/details.html
mimeType: text/html;profile=mcp-app

API Version Governance Report api-version-governance-report-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://api-version/governance-report.html from the MCP server.

Governance report view for one API version

Resource

uri: ui://api-version/governance-report.html
mimeType: text/html;profile=mcp-app

API Version Instances api-version-instances-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://api-version/instances.html from the MCP server.

Interactive selector for API instances by version

Resource

uri: ui://api-version/instances.html
mimeType: text/html;profile=mcp-app

API Version Selector api-version-selector-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://api-version/selector.html from the MCP server.

Interactive selector for API versions

Resource

uri: ui://api-version/selector.html
mimeType: text/html;profile=mcp-app

Asset Policy Form asset-policy-form-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://asset-instance/policy-form.html from the MCP server.

Render a policy configuration schema and trigger policy creation

Resource

uri: ui://asset-instance/policy-form.html
mimeType: text/html;profile=mcp-app

Asset Policy Selector asset-policy-selector-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://asset-instance/policy-selector.html from the MCP server.

Select a policy not yet applied for one asset instance

Resource

uri: ui://asset-instance/policy-selector.html
mimeType: text/html;profile=mcp-app

MuleSoft Platform Login anypoint-login-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://auth/login-v2.html from the MCP server.

Interactive login panel for MuleSoft Platform authentication

Resource

uri: ui://auth/login-v2.html
mimeType: text/html;profile=mcp-app

Business Group Selector anypoint-business-group-selector-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://business-groups/app.html from the MCP server.

Interactive HTML UI for browsing and selecting business groups

Resource

uri: ui://business-groups/app.html
mimeType: text/html;profile=mcp-app

Environment Selector environment-selector-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://environment-selector/app.html from the MCP server.

Interactive selector for the active environment context

Resource

uri: ui://environment-selector/app.html
mimeType: text/html;profile=mcp-app

Omni Gateway Wizard omni-gateway-wizard-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://flex-gateway/wizard.html from the MCP server.

Interactive wizard for creating a managed Omni Gateway

Resource

uri: ui://flex-gateway/wizard.html
mimeType: text/html;profile=mcp-app

Global Search anypoint-global-search-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://global-search/app.html from the MCP server.

Embeddable command-palette style UI for global asset search

Resource

uri: ui://global-search/app.html
mimeType: text/html;profile=mcp-app

Governance Report governance-report-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://governance-report/app.html from the MCP server.

Interactive service-centric governance rollup with per-service findings drill-down.

Resource

uri: ui://governance-report/app.html
mimeType: text/html;profile=mcp-app

Governance Strategies governance-strategies-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://governance-strategies/list.html from the MCP server.

Interactive list of governance strategies

Resource

uri: ui://governance-strategies/list.html
mimeType: text/html;profile=mcp-app

Automated Policy Creation Wizard automated-policy-creation-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://governance/automated-policy-creation.html from the MCP server.

Interactive wizard for creating automated-policy governance strategies

Resource

uri: ui://governance/automated-policy-creation.html
mimeType: text/html;profile=mcp-app

Control Creation Wizard control-creation-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://governance/control-creation.html from the MCP server.

Interactive wizard for creating controls

Resource

uri: ui://governance/control-creation.html
mimeType: text/html;profile=mcp-app

LLM Catalog anypoint-llm-catalog-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://llm-catalog/app.html from the MCP server.

Interactive HTML UI for browsing and selecting LLMs from the catalog

Resource

uri: ui://llm-catalog/app.html
mimeType: text/html;profile=mcp-app

LLM Details llm-details-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://llm/details.html from the MCP server.

Read-only details panel for one LLM

Resource

uri: ui://llm/details.html
mimeType: text/html;profile=mcp-app

MCP Server Catalog anypoint-mcp-server-catalog-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://mcp-server-catalog/app.html from the MCP server.

Interactive HTML UI for browsing and selecting MCP servers from the catalog

Resource

uri: ui://mcp-server-catalog/app.html
mimeType: text/html;profile=mcp-app

MCP Server Provisioning mcp-server-provisioning-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://mcp-server-provisioning/app.html from the MCP server.

Interactive HTML UI for browsing the trusted MCP catalog, viewing provisioning status, and inspecting deployed server state

Resource

uri: ui://mcp-server-provisioning/app.html
mimeType: text/html;profile=mcp-app

MCP Server Details mcp-server-details-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://mcp-server/details.html from the MCP server.

Read-only details panel for one MCP server

Resource

uri: ui://mcp-server/details.html
mimeType: text/html;profile=mcp-app

Observability Dashboards observability-dashboards-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://observability/performance.html from the MCP server.

Render embedded observability dashboards directly in the MCP app.

Resource

uri: ui://observability/performance.html
mimeType: text/html;profile=mcp-app

Provider Gateways provider-gateways-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://provider-gateways/app.html from the MCP server.

Gateway inventory for the active provider

Resource

uri: ui://provider-gateways/app.html
mimeType: text/html;profile=mcp-app

Provider Selector provider-selector-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://provider-selector/app.html from the MCP server.

Interactive selector for the active provider context

Resource

uri: ui://provider-selector/app.html
mimeType: text/html;profile=mcp-app

Scanner Creation Wizard scanner-wizard-ui text/html;profile=mcp-app

RESOURCE

Try it out

Arguments

Reads ui://scanner/wizard-v2.html from the MCP server.

Interactive wizard for creating agent scanners

Resource

uri: ui://scanner/wizard-v2.html
mimeType: text/html;profile=mcp-app