developer
8120 TopicsAccess fixes released in Version 2603 (Build 19822.20114)
Here's a summary of bug fixes in the latest version of Access: Bug Name Issue Fixed Edge Browser Control didn't navigate from code when inside a tab control When the Edge Browser control was hosted in a tab control, calls to the Navigate method from VBA succeeded, but the control didn’t refresh to show the new page. Switching tabs forced the refresh. The control now refreshes automatically after navigation, even when it’s hosted in a tab control. Some Unicode characters displayed incorrectly in Quick Import Certain extended Unicode characters were displayed as squares when importing data using Quick Import. These characters are now displayed correctly. Modern Chart titles truncated in Print Preview When viewing a report containing Modern Charts in Print Preview, chart titles might be truncated. Chart titles now render correctly in Print Preview. Some Unicode characters displayed incorrectly in exported object names When exporting an object whose name contained certain extended Unicode characters, the sheet name in the exported file displayed the characters incorrectly. These characters are now preserved correctly during export. Some Unicode characters displayed incorrectly in error messages for long object names When renaming a database object to a name that was too long, the error message displayed certain extended Unicode characters incorrectly. These characters now display correctly in error messages. Standard colors in Access didn't match other Office apps The standard color palette in Access used different color values than other Office applications like Word and Excel. For example, the standard red in Access was #ED1C24 instead of the updated Office standard red #EE0000. The color palette has been updated to match the rest of Office. Field.Properties("Precision") and Properties("Scale") on a query column caused the query to execute Accessing the Precision or Scale properties of a field in a query's Fields collection caused the query to execute. This was a regression that broke add-ins and code that enumerate field properties, since query execution can be expensive and have side effects. These properties are now returned without executing the query. Toggle filter button in status bar didn't work when no records were displayed When a form filter resulted in no matching records, clicking the Toggle Filter button in the status bar to remove the filter had no effect. The button now properly removes the filter even when the filtered result set is empty. PDF files with capitalized extension didn't render in Edge Browser Control When navigating to a PDF file using the Edge Browser control, if the file extension was capitalized (e.g., ".PDF" instead of ".pdf"), the file contents were rendered as raw text instead of as a formatted PDF document. The extension comparison is now case-insensitive. Monaco SQL editor inserted blank lines in multi-line comments When switching between Design View and SQL View, the Monaco SQL editor inserted blank lines between each line inside /* multi-line comment */ blocks. This affected both local and passthrough queries. The editor now preserves the original comment formatting. Please continue to let us know if this is helpful and share any feedback you have.538Views2likes2CommentsPartner perspective: How Breakthru uses App Advisor and AI-listing optimization to drive growth
Optimizing a Marketplace listing isn’t just a marketing exercise—it directly impacts discoverability, demand, and revenue. But knowing what to change (and when) can be challenging for software development companies. In this partner‑written blog post, Marketplace software development company Breakthru shares firsthand experience using AI‑powered listing recommendations in App Advisor to move from guesswork to confident, data‑driven optimization—without risking listing performance. Dan Langille also reflects on how App Advisor became a core part of their business, what’s working in practice, and how AI is changing how teams iterate on their Marketplace presence. 👉 Read the partner story here: Improve Marketplace outcomes with AI‑powered listing recommendations in App Advisor Discussion prompts for the community: Would AI‑driven recommendations change how often you iterate on your listing? Have you used App Advisor for selling and growing app and AI agent sales? Curious to hear how other Marketplace partners are approaching listing optimization today!From Terminal to Autonomous Coding: Mastering GitHub Copilot CLI ACP Server
Introduction The rise of AI-powered development is no longer just about autocomplete—it’s about autonomous agents that can think, act, and collaborate. At the center of this transformation is the Agent Client Protocol (ACP) and its integration with GitHub Copilot CLI. If you’ve ever wanted to: Integrate Copilot into your own tools Build custom AI-driven developer workflows Orchestrate coding agents in CI/CD Then understanding the GitHub Copilot CLI ACP Server is a game-changer. This article will take you from zero to advanced, covering concepts, architecture, setup, and real-world use cases. What Is Agent Client Protocol (ACP)? The Agent Client Protocol (ACP) is an open standard designed to connect clients (like IDEs or tools) with AI agents in a consistent and interoperable way. Why ACP Exists Before ACP: Every IDE needed custom integration for each AI agent Every agent needed custom APIs per editor ACP solves this by introducing a universal communication layer. Key Idea “Any editor can talk to any agent.” Core Capabilities ACP enables: Standardized messaging between client and agent Streaming responses Tool execution with permissions Session lifecycle management Multi-agent coordination This makes ACP a foundation layer for the agentic developer ecosystem. What Is GitHub Copilot CLI ACP Server? GitHub Copilot CLI can run as an ACP-compatible server, exposing its AI capabilities programmatically. 👉 In simple terms: It turns Copilot into a backend AI agent service that any tool can connect to. According to GitHub Docs: Copilot CLI can run in ACP mode using a flag It supports standardized communication via ACP It enables integration with IDEs, pipelines, and custom tools Architecture: How ACP + Copilot CLI Works Components Component Role Client Sends prompts, receives responses ACP Protocol Standard communication layer Copilot CLI AI agent executing tasks System Files, repos, tools Getting Started (Beginner Level) Install GitHub Copilot CLI Ensure: Copilot subscription is active CLI installed and authenticated Start ACP Server Default (stdio mode – recommended) TCP Mode (for remote systems) stdio: Best for IDE integration TCP: Best for distributed systems Connect Using ACP Client (Example) Using TypeScript SDK: You: Start Copilot as a process Create streams Initialize connection Send prompt Receive streaming response ACP uses: NDJSON streams over stdin/stdout Event-driven communication ACP Workflow Explained A typical flow looks like this: Step-by-step lifecycle Initialize connection Create session Send prompt Agent processes task Streaming updates returned Optional tool execution (with permissions) Session ends ACP supports: Text + multimodal inputs Incremental responses Cancellation and control Real-World Use Cases IDE Integration (Custom Editors) Build your own AI-powered editor: Connect via ACP Send code context Receive suggestions CI/CD Automation Imagine: Use ACP to: Auto-fix bugs Generate tests Refactor code Multi-Agent Systems ACP enables: Copilot + other agents working together Task delegation Workflow orchestration Custom Developer Tools Examples: AI code review dashboards Internal dev assistants ChatOps integrations Advanced Concepts Session Management ACP allows: Isolated sessions Custom working directories Context persistence Streaming Responses Instead of waiting: Receive responses in chunks Build real-time UIs Permission Handling ACP includes: Tool execution approvals Security boundaries Controlled automation Extensibility ACP supports: Multiple SDKs (TypeScript, Python, Rust, Kotlin) Custom clients Future protocol evolution ACP vs Traditional Integration Feature Traditional APIs ACP Integration Custom per tool Standardized Streaming Limited Native Multi-agent Hard Built-in Extensibility Low High Interoperability Poor Excellent Why ACP + Copilot CLI Is a Big Deal This combination unlocks: ✅ Platform-level AI integration No more vendor lock-in per editor ✅ True agentic workflows Agents don’t just suggest—they act ✅ Ecosystem growth Any tool can plug into Copilot Challenges & Considerations ACP is still in public preview Requires understanding of: Streams Async communication Debugging agent workflows can be complex Future of Developer Experience ACP represents a shift toward: “AI-native development platforms” Future possibilities: Fully autonomous CI/CD pipelines Cross-agent collaboration Self-healing codebases Final Thoughts The GitHub Copilot CLI ACP Server is not just a feature—it’s a foundation for the next generation of software development. If you are: A developer → build smarter tools A tech lead → design AI-driven workflows A CTO aspirant → understand this deeply Then ACP is something you must master early. Quick Summary ACP = Standard protocol for AI agents Copilot CLI = Can run as ACP server Enables = IDEs, CI/CD, multi-agent systems Key power = interoperability + automationA new Excel Think Tank
After nearly 30 years of using Excel commercially, I am now coming to retirement. But before I finally hang up my Excel boots, I have setup a small Excel think tank. The idea being people can send me their issues and I will work with you to build your permanent solution in Excel. I have created a number of solutions from Email Validator, Automatic dashboard creators, Fraud analysis, Auto resume makes, Music Syns (All in Excel), so if give it try.38Views0likes0CommentsLost Access to Microsoft Authenticator
Hello team, I reimage my phone, unfortunately lost Microsoft Authenticator, I dont have cloud backup enabled in my Authenticator, I try login account in Microsoft Authenticator, but still ask me Authenticator verification, and no other option (like email, SMS, or backup codes) shown, I'm register Microsoft 365 developer account, i'm only admin, could you please let me know the exact steps I need to take or if there is a support escalation route I should follow, thanks for advance.38Views0likes2CommentsAccess fixes released in Version 2604 (Build 16.0.19929.20090)
Bug Name Issue Fixed Values display in the wrong control when using a form as a sublist When a form was used as a sublist (subdatasheet), field values could display in the wrong control, showing data in incorrect positions. Values now display in the correct controls. Applications that use the Access Database Engine (ACEOLEDB) terminate unexpectedly on exit Third-party applications using the Access Database Engine (ACEOLEDB) provider could terminate unexpectedly when closing. The shutdown sequence has been corrected. Long Text field corrupted when a query updates a record while a user is editing it When a query updated a Long Text field on a record that was simultaneously open for editing, the field data could become corrupted. The record update now correctly handles concurrent access to Long Text fields. Rendering errors with Aptos (Detail) font Controls using the Aptos (Detail) font variant could render incorrectly, with characters appearing misaligned or garbled. The font rendering has been corrected. Standard colors in Access didn't match other Office apps The standard color palette in Access used different color values than other Office applications like Word and Excel. The color palette has been updated to match the rest of Office. Option Group with Vertical Anchor Bottom: option buttons show incorrect visual state after clicking When an option group control had its Vertical Anchor property set to Bottom, clicking an option button would not correctly update the visual state of the buttons. The visual state now updates correctly regardless of the anchor setting. Query Design: Insert/Delete Columns don't work when ribbon is set to Show Tabs Only In Query Design view, the Insert Columns and Delete Columns commands on the ribbon did not work when the ribbon display option was set to "Show Tabs Only." The commands now work correctly regardless of ribbon display mode. SQL View: Ctrl+K should toggle pretty formatting off/on In the Monaco SQL editor, the Ctrl+K keyboard shortcut did not toggle SQL formatting. Ctrl+K now correctly toggles pretty formatting on and off. Monaco editor incorrectly converts Unicode characters in SQL view When switching between Design View and SQL View, the Monaco SQL editor could incorrectly convert certain Unicode characters, corrupting the SQL text. Unicode characters are now preserved correctly. Importing text files with Unicode characters in the filename fails Attempting to import a text file whose filename contained certain Unicode characters would fail. File imports now handle Unicode filenames correctly. Added VarP and StDevP to the Totals query aggregate dropdown The VarP (population variance) and StDevP (population standard deviation) aggregate functions were missing from the Totals row dropdown in Query Design view. They have been added alongside the existing Var and StDev options. Added VarP and StDevP to the datasheet totals row dropdown The VarP and StDevP aggregate functions were missing from the Totals row dropdown in Datasheet view. They have been added to match the options available in Query Design view. Access hangs at shutdown when VBA holds temporary DAO field references Access could hang during shutdown when VBA code created temporary DAO field references. The shutdown process now correctly cleans up temporary field references. Full Screen Mode ribbon display option does nothing in Access Selecting "Full Screen Mode" from the ribbon display options had no effect in Access. This option now works correctly, hiding the ribbon to maximize the available workspace.972Views3likes6CommentsExcel App Builder: Should Excel Support Turning Workbooks into Standalone Low-Code Applications?
Excel has been much more than a spreadsheet application for a long time. In many organizations, Excel is already used as an informal low-code development platform. Advanced workbooks often contain not only data and formulas, but complete domain-specific logic: calculation models, planning tools, dashboards, input forms, reports, simulations, administrative workflows, and sometimes even small internal business applications. This is one of Excel’s greatest strengths. It allows domain experts, power users, analysts, engineers, teachers, consultants, and small businesses to build working tools without becoming full-time software developers. However, there is a structural limitation: the final product usually remains an Excel workbook. That creates several problems: the user needs a compatible Excel installation, macro security and Trust Center settings can block functionality, formulas and business logic are difficult to protect properly, distribution and updates are not as clean as with real applications, workbook-based tools often look less professional than standalone software, user interface, data, and logic are often mixed together in the same file. I believe Microsoft could turn this existing reality into a major strategic opportunity. Core proposal: Excel App Builder / Excel Runtime My suggestion is an official Excel App Builder or Excel Runtime. The idea would be to allow selected Excel workbooks to be packaged as protected standalone applications. Excel would continue to serve as the calculation, data, and automation engine in the background. The end user would not necessarily see the workbook itself. Instead, they would interact with a clean application interface: input forms, buttons, dashboards, charts, reports, controlled tables, and export options. Possible output formats could include: Windows apps, web apps, Teams apps, SharePoint apps, mobile-friendly internal tools, protected specialist applications. This would not replace Power Apps. In my view, it could complement Power Apps very well. Excel could remain the place where fast domain logic, calculations, prototypes, and models are created. Power Apps, Dataverse, Azure, and the wider Microsoft ecosystem could then support larger, scalable, enterprise-level workflows. In other words: Excel could become the natural entry point into Microsoft’s low-code ecosystem. Why this could matter strategically Excel already has an enormous “hidden developer base”: people who are not traditional programmers, but who build useful tools with formulas, tables, Power Query, Power Pivot, VBA, Office Scripts, and now AI assistance. This is a unique market position. Many of these users would not start with C#, JavaScript, Python, or a full application framework. But they already start with Excel. They already build the logic there. The missing step is a professional way to package, protect, distribute, and update those solutions. An official App Builder could: strengthen Excel’s long-term relevance, differentiate Excel from simpler spreadsheet competitors, create a stronger bridge between Excel and Power Platform, give power users a professional deployment path, create new commercial licensing opportunities, reduce the need for fragile VBA/UI workarounds, make Excel-based tools more secure and maintainable. Example use cases A small engineering office creates a technical calculation workbook and exports it as a protected customer tool. A school or university builds a grading, diagnostic, or planning tool with Excel logic but provides staff with a clean app interface. A small business turns an Excel-based quotation calculator into an internal sales app. A finance department packages a planning model as a controlled scenario tool for managers. A consultant builds specialized calculation tools and distributes them professionally without exposing the workbook structure. These are not exotic scenarios. Many people already build this kind of logic in Excel today. The difference would be that Microsoft could provide an official, safe, and professional deployment path. Supporting features that would make this stronger 1. Modern UI layer for Excel-based apps Excel-based applications would need a modern interface layer: forms, dialogs, navigation pages, buttons, card layouts, dashboards, responsive views, mobile-friendly layouts, role-based views, binding to cells, tables, named ranges, and data models. This would create a clearer separation between data, logic, and user interface. 2. Protected workbook logic A professional app export would require strong protection options: hidden formulas, protected named ranges, protected scripts or macro logic, defined input areas, digital signing, controlled editing, update mechanisms, possible licensing controls for commercial distribution. 3. Formula cells with controlled manual override One frequent Excel problem is that users overwrite formulas. A useful new cell mode could be: default formula + optional manual override The cell would keep the original formula internally but allow a controlled manual exception value. Excel could show whether the formula is active or manually overridden. This would remove many helper-column and VBA workarounds in planning, pricing, grading, budgeting, and technical models. 4. Native database layer inside Excel Excel is widely used as a database, even when that becomes fragile. A native database layer could support: primary keys, relationships between tables, required fields, validation rules, change history, duplicate detection, form views, simple queries, optional cloud synchronization. This should feel like a natural extension of Excel tables, not like a separate database product. 5. Multidimensional workbook models Many workbooks use separate sheets for months, locations, versions, departments, or scenarios. This often creates duplication and maintenance problems. Excel could support native dimensions for tables and models, for example: time period, location, scenario, version, department. Formulas, charts, dashboards, and PivotTables could become dimension-aware. This would be especially useful for financial planning, controlling, simulations, scientific models, and project planning. Why now? AI is changing how people build with Excel. Copilot and other AI tools make it easier for non-programmers to generate formulas, scripts, models, and structured workflows. That means more users will be able to build complex Excel-based solutions. But if AI helps users create more advanced workbooks, the next logical question is: How can these workbooks be safely packaged, shared, protected, and used as real tools? An Excel App Builder could be the answer. Possible first step This does not need to start as a massive platform. A realistic first version could be experimental: selected workbook ranges, simple input forms, protected formulas, dashboard view, Windows or web runtime, export as an internal app, optional Teams or SharePoint integration. It could even begin as an Excel Labs / Microsoft Garage style experiment to test demand and gather feedback from power users, developers, and organizations. Core question for the community Excel is already used as a hidden development platform. Should Microsoft make this official? Would an Excel App Builder / Excel Runtime be useful for your organization, clients, or internal tools? Which feature would matter most in a first version? protected workbook runtime, modern UI layer, formula override cells, native database layer, multidimensional models, Power Platform integration, commercial app distribution? I would be very interested to hear how other Excel users, developers, MVPs, and Microsoft product people see this idea. In short: Excel already allows millions of people to build domain-specific logic. Microsoft could turn that strength into an official, secure, and economically attractive low-code application platform.56Views0likes1Comment🖼️Streamline Image Generation Workflow in Foundry Toolkit
Integrating image generation into a production AI application has historically meant juggling multiple surfaces — browsing models in the Foundry portal, setting up deployments via the Azure CLI, testing prompts in a separate tool, then stitching together API credentials before writing a single line of app code. That context-switching adds friction at exactly the moment you want to be experimenting. With this release, the full image generation workflow — discover, deploy, prompt, iterate, export code — lives inside your editor. A few things this unlocks for developers: 🎨GPT-Image-2 in the Model Catalog GPT-Image-2 via Microsoft Foundry is now listed in the Foundry Toolkit Model Catalog. You can browse its capabilities, review inference parameters, and deploy it to any Azure AI Foundry project directly from the sidebar — no portal tab-switching required. To get started: Open FOUNDRY TOOLKIT → My Resources → Model Catalog Search for gpt-image-2 and select it to view model details and inference parameters. Click Deploy to add it to your active Foundry project. ✨Image Playground With GPT-Image-2 deployed, the Playground automatically surfaces an Image Playground mode. Describe what you want, hit generate, and see results side by side — no REST client, no extra tooling. Use the View Code shortcut to copy the API call directly into your project. To generate your first image: Click + New Playground in the Playground tab — the mode auto-selects Image Playground when gpt-image-2 is the active model. Type a prompt and send — generated images appear in the canvas with download controls. Click View Code (top right) to get a ready-to-paste code snippet for your application. Image generation is one of the fastest-growing use cases in production AI applications — from dynamic content creation to data augmentation to UI asset generation. This update ensures developers building on Microsoft Foundry have a first-class path to ship those capabilities faster. 🚀 Get Started Today Ready to experience the future of AI development? Here's how to get started: 📥 Download: Install the Foundry Toolkit from the Visual Studio Code Marketplace 📖 Learn: Explore our comprehensive Foundry Toolkit Documentation We'd love to hear from you! Whether it's a feature request, bug report, or feedback on your experience, join the conversation and contribute directly on our GitHub repository. Happy Coding!Microsoft Teams PowerShell Module 7.6.0 is broken
Dear Community I have a few Script with Microsoft Teams PowerShell, witch authenticate via Access Token. Everything works fine until latest Microsoft Teams PowerShell Module Update 7.6.0. I got following Error with the Script. Connect-MicrosoftTeams : Could not load file or assembly 'Microsoft.IdentityModel.JsonWebTokens, Version=8.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified. If I downgrade my environment from Version 7.6.0 to Version 7.5.0 and rerun my script, the authentication is working as expected. What is wrong here with latest PowerShell Module 7.6.0 and how can I resolve the issue Many thanks for sharing any hint or tip ANDY446Views3likes3CommentsBuilding an Enterprise Knowledge Copilot with Foundry IQ and Agentic Retrieval on Azure AI
Every enterprise has the same problem: knowledge scattered across SharePoint, file shares, wikis, and email. This article walks through building a knowledge copilot that unifies that data behind a single conversational interface — using Microsoft's Foundry IQ knowledge bases and the agentic retrieval engine in Azure AI Search. The Problem: Fragmented Knowledge, Fragmented Answers Enterprise AI projects today share a common pain point. Each new agent or copilot that needs to answer questions from company data must rebuild its own retrieval pipeline from scratch — data connections, chunking logic, embeddings, routing, permissions — all duplicated project after project. The result is a tangle of fragmented, siloed pipelines that are expensive to maintain and inconsistent in quality. Consider a field technician troubleshooting equipment. The answer might span a vendor manual stored in OneLake, a company repair policy on SharePoint, and a public electrical standard on the web. Traditional single-index RAG cannot orchestrate across those sources in one pass. The technician waits, the issue escalates, and productivity drops. Foundry IQ, announced in public preview in November 2025, addresses this directly. It provides a unified knowledge layer for agents — a single endpoint that replaces per-project RAG pipelines with a reusable, topic-centric knowledge base that any number of agents can consume. What Is Foundry IQ? Foundry IQ introduces four capabilities built on top of Azure AI Search: Knowledge Bases — Reusable, topic-centric collections (e.g., "employee policies," "product documentation") available directly in the Foundry portal. Rather than wiring retrieval logic into every agent, you define a knowledge base once and ground multiple agents through a single API. Indexed and Federated Knowledge Sources — A knowledge base can draw from Azure Blob Storage, OneLake, SharePoint, Azure AI Search indexes, the web, and MCP servers (MCP in private preview). Developers do not need to manage different retrieval strategies per source; the knowledge base presents a unified endpoint. Agentic Retrieval Engine — A self-reflective query engine that uses AI to plan, search, and synthesize answers with configurable retrieval reasoning effort. Enterprise-Grade Security — Document-level access control and alignment with existing permissions models. Microsoft Purview sensitivity labels are respected through the indexing and retrieval pipeline, so classified content remains governed as it flows into knowledge bases. For indexed sources, Foundry IQ automatically manages the full indexing pipeline: content is ingested, chunked, vectorized, and prepared for hybrid retrieval. When Azure Content Understanding is enabled, complex documents gain layout-aware enrichment — tables, figures, and headers are extracted and structured without extra engineering work. How Agentic Retrieval Works Single-shot RAG — one query, one index, one pass — breaks down when questions are ambiguous, multi-hop, or span several data silos. Foundry IQ's agentic retrieval engine treats retrieval as a multi-step reasoning task rather than a keyword lookup: Plan — The engine analyzes the conversation and decomposes the query into focused sub-queries, deciding which knowledge sources to consult. Search — Sub-queries run concurrently against selected sources using keyword, vector, or hybrid techniques. Rank — Semantic reranking identifies the most relevant results. Reflect — If the information gathered is insufficient, the engine iterates — issuing follow-up queries autonomously. Synthesize — Results are unified into a natural-language answer with source references. Developers control this behaviour through a high-level retrieval reasoning effort setting. Lower effort suits fast, lightweight lookups; higher effort enables iterative search and richer planning across the entire data estate. Real-world impact: AT&T integrated Azure AI Search and retrieval-augmented generation into its multi-agent framework, reducing customer resolution times by 33 percent, cutting average handle time by nearly 10 percent, and scaling 71 AI solutions to 100,000 employees. Ontario Power Generation used agentic retrieval to sift through over 40 years of nuclear operating experience, enabling data-driven decision-making and helping new staff learn from decades of institutional knowledge. Architecture Overview Step-by-Step: Setting Up the Knowledge Copilot Provision Resources You need an Azure AI Search service (Basic tier or above), a Microsoft Foundry project, an embedding model deployment (e.g., text-embedding-3-large), and an LLM deployment (e.g., gpt-4.1) for query planning and answer generation. .NET 8 or later is required for the C# SDK. Create a Knowledge Base in Azure AI Search Using the Azure.Search.Documents preview SDK, define an index, a knowledge source pointing to your data, and a knowledge base with OutputMode set to AnswerSynthesis for natural-language answers with citations. The following C# snippet (adapted from the official Azure AI Search quickstart) shows the knowledge base creation: using Azure; using Azure.Identity; using Azure.Search.Documents.Indexes; var searchEndpoint = "https://<your-service>.search.windows.net"; var aoaiEndpoint = "https://<your-resource>.openai.azure.com/"; var indexClient = new SearchIndexClient( new Uri(searchEndpoint), new DefaultAzureCredential()); // Configure the LLM for query planning and answer synthesis var openAiParameters = new AzureOpenAIVectorizerParameters { ResourceUri = new Uri(aoaiEndpoint), DeploymentName = "gpt-4.1", ModelName = "gpt-4.1" }; var model = new KnowledgeBaseAzureOpenAIModel(openAiParameters); // Create the knowledge base with answer synthesis enabled var knowledgeBase = new KnowledgeBase("<knowledge-base-name>") { OutputMode = KnowledgeBaseOutputMode.AnswerSynthesis, AnswerInstructions = "Provide a concise answer based on the retrieved documents.", Models = { model } }; await indexClient.CreateOrUpdateKnowledgeBaseAsync(knowledgeBase); Connect an Agent to the Knowledge Base via MCP Each knowledge base exposes a Model Context Protocol (MCP) endpoint that MCP-compatible agents can call. The Foundry IQ-specific agent SDK currently offers full code samples for Python and REST API, but you can use the general-purpose MCP tooling in C# to achieve the same connection. The following pattern is drawn from the official Microsoft Learn documentation on MCP tools with Foundry Agents: using Azure.AI.Projects; using Azure.Identity; var endpoint = "https://<your-resource>.services.ai.azure.com/api/projects/<your-project>"; var model = "gpt-4.1-mini"; // Point the MCP tool at the knowledge base's MCP endpoint var mcpTool = new MCPToolDefinition( serverLabel: "enterprise_kb", serverUrl: "https://<search-service>.search.windows.net" + "/knowledgebases/<kb-name>/mcp?api-version=2025-11-01-preview"); mcpTool.AllowedTools.Add("knowledge_base_retrieve"); // Create the agent with the MCP tool attached var projectClient = new AIProjectClient(new Uri(endpoint), new DefaultAzureCredential()); var agentVersion = await projectClient.AgentAdministrationClient .CreateAgentVersionAsync( "enterprise-copilot", new ProjectsAgentVersionCreationOptions( new DeclarativeAgentDefinition(model) { Instructions = "You are a company knowledge assistant. " + "Always search the knowledge base before answering. " + "If the knowledge base has no answer, say so clearly.", Tools = { mcpTool } })); The agent instructions are critical — explicitly requiring the agent to use the knowledge base prevents it from answering purely from the LLM's training data. Query the Copilot Once the agent is published, your application layer simply sends user questions via the Azure AI Projects SDK or REST API. The agent autonomously invokes the knowledge base tool, retrieves grounded context, and returns an answer with citations referencing the original documents. Trade-offs and Considerations Dimension Detail Maturity Foundry IQ is in public preview — not recommended for production workloads without accepting preview SLA terms. Cost Agentic retrieval has two billing streams: token-based billing from Azure AI Search for retrieval, and billing from Azure OpenAI for query planning and answer synthesis. Latency vs. Quality Higher retrieval reasoning effort produces better answers but adds latency due to iterative search. For sub-second lookups, use minimal effort; for complex multi-hop questions, use medium. C# SDK Coverage The Foundry IQ–specific agent connection SDK currently supports Python and REST API. C# support is available for the underlying agentic retrieval queries and for general MCP tool integration. Security Document-level ACLs from SharePoint are enforced at query time. For per-user authorization in Foundry Agent Service, the current preview does not support per-request MCP headers — use the Azure OpenAI Responses API as an alternative. Key Takeaways Foundry IQ transforms enterprise RAG from a bespoke, per-project exercise into a managed, reusable knowledge layer. You define a knowledge base once, connect it to your data sources, and any number of agents or apps can consume it. The agentic retrieval engine handles query planning, multi-source search, semantic reranking, and iterative refinement — capabilities that previously required significant custom engineering. For .NET developers, the Azure AI Search C# SDK and the MCP tooling in the Agent Framework provide the building blocks to integrate this into your applications today. References: What is Foundry IQ? Create a knowledge base in Azure AI Search Foundry IQ: Unlocking ubiquitous knowledge for agents