Skip to main content
Glama
mafzaal

Dynamics 365 Finance & Operations MCP Server

by mafzaal

d365fo_update_profile

Modify configuration settings for a Dynamics 365 Finance & Operations environment profile, including URL, security, caching, and credentials, while automatically refreshing client connections.

Instructions

Update an existing D365FO environment profile with full configuration options.

Automatically invalidates all cached client connections to ensure they pick up the new profile settings on next use.

Args: name: Profile name baseUrl: D365FO base URL description: Profile description verifySsl: Whether to verify SSL certificates timeout: Request timeout in seconds useLabelCache: Whether to enable label caching labelCacheExpiryMinutes: Label cache expiry in minutes useCacheFirst: Whether to use cache-first behavior language: Default language code cacheDir: Custom cache directory path outputFormat: Default output format for CLI operations credentialSource: Credential source configuration. Set to null to use Azure Default Credentials. Can be: - Environment variables: {"sourceType": "environment", "clientIdVar": "MY_CLIENT_ID", "clientSecretVar": "MY_CLIENT_SECRET", "tenantIdVar": "MY_TENANT_ID"} - Azure Key Vault: {"sourceType": "keyvault", "vaultUrl": "https://vault.vault.azure.net/", "clientIdSecretName": "D365FO_CLIENT_ID", "clientSecretSecretName": "D365FO_CLIENT_SECRET", "tenantIdSecretName": "D365FO_TENANT_ID"}

Returns: Dictionary with update result including number of clients invalidated

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes
baseUrlNo
descriptionNo
verifySslNo
timeoutNo
useLabelCacheNo
labelCacheExpiryMinutesNo
useCacheFirstNo
languageNo
cacheDirNo
outputFormatNo
credentialSourceNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

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

With no annotations provided, the description carries full burden and does well by disclosing key behavioral traits: it's a mutation tool (update), automatically invalidates cached client connections, and returns a dictionary with results including invalidation count. It lacks details on permissions, error handling, or rate limits, but covers essential effects.

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

Conciseness4/5

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

The description is appropriately sized and front-loaded with the core purpose and key behavior. The parameter and return sections are detailed but necessary given the complexity. Some redundancy exists (e.g., listing all parameters), but overall structure is clear and efficient.

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

Completeness5/5

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

Given the tool's complexity (12 parameters, mutation operation, no annotations) and the presence of an output schema, the description is complete. It explains the purpose, behavior, parameters, and return value, covering all essential aspects without needing to duplicate schema details.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate. It provides detailed semantics for all 12 parameters, including examples for credentialSource (e.g., environment variables, Azure Key Vault) and clarifications like 'Set to null to use Azure Default Credentials.' This adds significant meaning beyond the bare schema.

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

Purpose5/5

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

The description clearly states the tool's purpose: 'Update an existing D365FO environment profile with full configuration options.' It specifies the verb ('update'), resource ('D365FO environment profile'), and scope ('full configuration options'), distinguishing it from sibling tools like d365fo_create_profile (create) and d365fo_delete_profile (delete).

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

Usage Guidelines4/5

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

The description provides clear context for usage by mentioning it updates 'an existing' profile and automatically invalidates cached connections, implying it should be used when profile settings need modification. However, it does not explicitly state when not to use it or name alternatives like d365fo_clone_profile or d365fo_validate_profile for related tasks.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/mafzaal/d365fo-client'

If you have feedback or need assistance with the MCP directory API, please join our Discord server