developer
8037 TopicsAccess fixes released in version 2602 (Build 19725.20126)
Here's a summary of bug fixes in the latest version of Access: Bug Name Issue Fixed Monaco query editor applied unwanted autoformatting to passthrough queries The Monaco SQL editor was applying automatic formatting (such as adding whitespace or changing capitalization) to passthrough queries. Since passthrough queries are sent directly to the server's SQL engine without Access interpreting them, autoformatting could alter the SQL in ways that break server-specific syntax. Autoformatting is now disabled for passthrough queries, preserving the exact SQL as written. Monaco query editor font size did not match Access settings When using the Monaco SQL editor, the font size in the query editor didn't match the font size configured in Access's client settings. An incorrect unit conversion resulted in text appearing slightly larger than expected. The conversion has been corrected so the editor font size now matches the configured setting. Datasheet selection could extend past the last column When selecting cells in a datasheet by clicking and dragging, it was possible to extend the selection rectangle past the rightmost column into an empty area. Releasing the mouse and then clicking elsewhere would leave the selection highlight drawn in that empty area, since Access did not erase the over-extended selection. The selection is now properly limited to the actual columns of the datasheet. Please continue to let us know if this is helpful and share any feedback you have.139Views0likes1CommentWould Microsoft Teams SDK for Python (Preview) affect marketplace submission
Hi, I need to know if it's possible to publish a custom teams app and get validated to have the app in marketplace for public if it's developed using Teams SDK with python which is mentioned as still in preview. Teams SDK is now generally available for JavaScript and C#, supports Python in developer preview https://learn.microsoft.com/en-us/microsoftteams/platform/bots/overview https://learn.microsoft.com/en-us/microsoftteams/platform/resources/dev-preview/developer-preview-intro?tabs=new-teams-client https://github.com/microsoft/teams.py Thank you!56Views0likes2CommentsWhere Microsoft MVP Impact Meets Innovation: Microsoft 365 Community Conference 2026
Microsoft Most Valuable Professionals (MVPs) are the heartbeat of the Microsoft ecosystem—and at Microsoft 365 Community Conference 2026, your impact takes center stage. Imagine connecting face-to-face with the engineers behind the products you use every day. Picture conversations with Microsoft leaders shaping the future of collaboration and AI. Now add in deep, practical insight from the world’s most respected Microsoft practitioners—your fellow MVPs. Join us April 21–23 in Orlando, Florida for the Microsoft 365 Community Conference, where innovation, community, and real-world expertise come together. 👉 Exclusive MVP registration perk: Use discount code MVPS to save $200 on your conference pass. This code is reserved exclusively for Microsoft MVPs. MVPs: The People Attendees Come to Learn From—and Hang Out With Microsoft MVPs play a central role in shaping the conference experience. As trusted experts and recognized leaders in the community, MVPs bring hands on, scenario driven guidance directly to the stage—sharing what works in the real world of Microsoft 365. Throughout the event, MVPs are also the people attendees are most excited to meet, learn from, and spend time with—especially in the Microsoft Innovation Hub, where conversations go deeper, demos get hands on, and ideas turn into action. Whether you’re speaking, hosting conversations, or simply connecting between sessions, MVPs are the voices attendees seek out. Learn From the Leaders Defining What’s Next Kick off the event with an innovative keynote experience featuring some of the brightest minds at Microsoft, including: Jeff Teper, President, Microsoft 365 Collaborative Apps and Platforms Charles Lamanna, President, Business Apps & Agents Rohan Kumar, Corporate Vice President, Microsoft Security, Purview & Trust Vasu Jakkal, Corporate Vice President, Microsoft Security Business Together with MVPs and community leaders, these sessions explore how organizations can move forward with confidence in an AI powered world. Connect, Celebrate, and Be Part of the Community In addition to sessions and keynotes, MVPs are invited to moments designed to bring the community together: Unwind with great food, drinks, and conversation in the expo hall receptions, then continue the celebration at the attendee party—complete with rides inside Universal Orlando. Pick up MVP event swag and take home something memorable. And of course, take part in the annual Microsoft MVP photo, a tradition that celebrates the people who make this community exceptional. Build the Skills for the AI Era Develop the skills needed to thrive as a Frontier Firm through sessions led by innovators, builders, designers, Microsoft product teams, and MVPs shaping collaboration today. Highlights include: A fireside chat with Karuana Gatimu, Director, Customer Advocacy for AI & Collaboration, on how AI can elevate leadership. A deep look at how Teams is driving engagement across global communities with Murali Sitaram, Corporate Vice President, Viva Engage. The premiere of More Than Code, a short film celebrating SharePoint’s 25th birthday. These are just a few of the experiences planned, with more being added all the time. Explore the full session catalog to see where MVPs are speaking, connecting, and leading conversations across the conference—including in the Innovation Hub. We hope you’ll join us in Orlando to celebrate the community, share your expertise, and shape what’s next—together. 👉 Visit the Microsoft 365 Community Conference website to explore the full schedule and register using code MVPS to save $200.104Views0likes0CommentsWhen I install my app to a second channel in Teams, the this.onMessage will nto trigger
I have a bot which when installed to a channel will read messages using this.onMessage, if I add another channel to the same team it will also read the messages without installing the bot on that channel. However if a user installs the bot again, to the second channel which some users do, the second channel will not trigger the onMessage listener except when using the @botname command. I cant log errors anything because it just wont trigger. I feel like the context gets screwed up, all the other listeners fire on other channel Any help please?45Views0likes2CommentsMCP vs mcp-cli: Dynamic Tool Discovery for Token-Efficient AI Agents
Introduction The AI agent ecosystem is evolving rapidly, and with it comes a scaling challenge that many developers are hitting context window bloat. When building systems that integrate with multiple MCP (Model Context Protocol) servers, you're forced to load all tool definitions upfront—consuming thousands of tokens just to describe what tools could be available. mcp-cli: a lightweight tool that changes how we interact with MCP servers. But before diving into mcp-cli, it's essential to understand the foundational protocol itself, the design trade-offs between static and dynamic approaches, and how they differ fundamentally. Part 1: Understanding MCP (Model Context Protocol) What is MCP? The Model Context Protocol (MCP) is an open standard for connecting AI agents and applications to external tools, APIs, and data sources. Think of it as a universal interface that allows: AI Agents (Claude, Gemini, etc.) to discover and call tools Tool Providers to expose capabilities in a standardized way Seamless Integration between diverse systems without custom adapters New to MCP see https://aka.ms/mcp-for-beginners How MCP Works MCP operates on a simple premise: define tools with clear schemas and let clients discover and invoke them. Basic MCP Flow: Tool Provider (MCP Server) ↓ [Tool Definitions + Schemas] ↓ AI Agent / Client ↓ [Discover Tools] → [Invoke Tools] → [Get Results] Example: A GitHub MCP server exposes tools like: search_repositories - Search GitHub repos create_issue - Create a GitHub issue list_pull_requests - List open PRs Each tool comes with a JSON schema describing its parameters, types, and requirements. The Static Integration Problem Traditionally, MCP integration works like this: Startup: Load ALL tool definitions from all servers Context Window: Send every tool schema to the AI model Invocation: Model chooses which tool to call Execution: Tool is invoked and result returned The Problem: When you have multiple MCP servers, the token cost becomes substantial: Scenario Token Count 6 MCP Servers, 60 tools (static loading) ~47,000 tokens After dynamic discovery ~400 tokens Token Reduction 99% 🚀 For a production system with 10+ servers exposing 100+ tools, you're burning through thousands of tokens just describing capabilities, leaving less context for actual reasoning and problem-solving. Key Issues: ❌ Reduced effective context length for actual work ❌ More frequent context compactions ❌ Hard limits on simultaneous MCP servers ❌ Higher API costs Part 2: Enter mcp-cli – Dynamic Context Discovery What is mcp-cli? mcp-cli is a lightweight CLI tool (written in Bun, compiled to a single binary) that implements dynamic context discovery for MCP servers. Instead of loading everything upfront, it pulls in information only when needed. Static vs. Dynamic: The Paradigm Shift Traditional MCP (Static Context): AI Agent Says: "Load all tool definitions from all servers" ↓ Context Window Bloat ❌ ↓ Limited space for reasoning mcp-cli (Dynamic Discovery): AI Agent Says: "What servers exist?" ↓ mcp-cli responds AI Agent Says: "What are the params for tool X?" ↓ mcp-cli responds AI Agent Says: "Execute tool X" mcp-cli executes and responds Result: You only pay for information you actually use. ✅ Core Capabilities mcp-cli provides three primary commands: 1. Discover - What servers and tools exist? mcp-cli Lists all configured MCP servers and their tools. 2. Inspect - What does a specific tool do? mcp-cli info <server> <tool> Returns the full JSON schema for a tool (parameters, descriptions, types). 3. Execute - Run a tool mcp-cli call <server> <tool> '{"arg": "value"}' Executes the tool and returns results. Key Features of mcp-cli Feature Benefit Stdio & HTTP Support Works with both local and remote MCP servers Connection Pooling Lazy-spawn daemon avoids repeated startup overhead Tool Filtering Control which tools are available via allowedTools/disabledTools Glob Searching Find tools matching patterns: mcp-cli grep "*mail*" AI Agent Ready Designed for use in system instructions and agent skills Lightweight Single binary, minimal dependencies Part 3: Detailed Comparison Table Aspect Traditional MCP mcp-cli Protocol HTTP/REST or Stdio Stdio/HTTP (via CLI) Context Loading Static (upfront) Dynamic (on-demand) Tool Discovery All at once Lazy enumeration Schema Inspection Pre-loaded On-request Token Usage High (~47k for 60 tools) Low (~400 for 60 tools) Best For Direct server integration AI agent tool use Implementation Server-side focus CLI-side focus Complexity Medium Low (CLI handles it) Startup Time One call Multiple calls (optimized) Scaling Limited by context Unlimited (pay per use) Integration Custom implementation Pre-built mcp-cli Part 4: When to Use Each Approach Use Traditional MCP (HTTP Endpoints) when: ✅ Building a direct server integration ✅ You have few tools (< 10) and don't care about context waste ✅ You need full control over HTTP requests/responses ✅ You're building a specialized integration (not AI agents) ✅ Real-time synchronous calls are required Use mcp-cli when: ✅ Integrating with AI agents (Claude, Gemini, etc.) ✅ You have multiple MCP servers (> 2-3) ✅ Token efficiency is critical ✅ You want a standardized, battle-tested tool ✅ You prefer CLI-based automation ✅ Connection pooling and lazy loading are beneficial ✅ You're building agent skills or system instructions Conclusion MCP (Model Context Protocol) defines the standard for tool sharing and discovery. mcp-cli is the practical tool that makes MCP efficient for AI agents by implementing dynamic context discovery. The fundamental difference: MCP mcp-cli What The protocol standard The CLI tool Where Both server and client Client-side CLI Problem Solved Tool standardization Context bloat Architecture Protocol Implementation Think of it this way: MCP is the language, mcp-cli is the interpreter that speaks fluently. For AI agent systems, dynamic discovery via mcp-cli is becoming the standard. For direct integrations, traditional MCP HTTP endpoints work fine. The choice depends on your use case, but increasingly, the industry is trending toward mcp-cli for its efficiency and scalability. Resources MCP Specification mcp-cli GitHub New to MCP see https://aka.ms/mcp-for-beginners Practical demo: AnveshMS/mcp-cli-exampleMicrosoft Project Service Core Jan 2026 Update locked Plans table
We recently noted the Microsoft Project Service Core was updated to 1.0.161.1772: This update has locked our Plans table, no changes are allowed to the forms and creating new columns is greyed out: We cannot make use of Planner in our model driven app (Planner Premium, non-default environment). After a new Plan is created, the user receives this message when opening the Plan: Two days ago we were in this version 1.0.160.2874): and everything was working as expected. Any guidance would be much appreciated as we are not sure if this is a permanent lock or once the update cycle is completed we will be able to go back to edit Plan forms and columns. Thank you in advanceSolved1.5KViews9likes14CommentsHow do you actually unlock growth from Microsoft Teams Marketplace?
Hey folks 👋 Looking for some real-world advice from people who’ve been through this. Context: We’ve been listed as a Microsoft Teams app for several years now. The app is stable, actively used, and well-maintained - but for a long time, Teams Marketplace wasn’t a meaningful acquisition channel for us. Things changed a bit last year. We started seeing organic growth without running any dedicated campaigns, plus more mid-market and enterprise teams installing the app, running trials, and even using it in production. That was encouraging - but it also raised a bigger question. How do you actually systematize this and get real, repeatable benefits from the Teams Marketplace? I know there are Microsoft Partner programs, co-sell motions, marketplace benefits, etc. - but honestly, it’s been very hard to figure out: - where exactly to start - what applies to ISVs building Teams apps - how to apply correctly - and what actually moves the needle vs. what’s just “nice to have” On top of that, it’s unclear how (or if) you can interact directly with the Teams/Marketplace team. From our perspective, this should be a win-win: we invest heavily into the platform, build for Teams users, and want to make that experience better. Questions to the community: If you’re a Teams app developer: what actually worked for you in terms of marketplace growth? Which Partner programs or motions are worth the effort, and which can be safely ignored early on? Is there a realistic way to engage with the Teams Marketplace team (feedback loops, programs, office hours, etc.)? How do you go from “organic installs happen” to a structured channel? Would really appreciate any practical advice, lessons learned, or even “what not to do” stories 🙏 Thanks in advance!185Views2likes3CommentsProduct suite on top of SharePoint - Intelligent Decisioning - SharePoint Partner Showcase
We are excited to share a new episode on our partner showcase series focused on SharePoint in Microsoft 365. In this post, we focus on ID Live which is providing different kind of solutions on top of the native SharePoint build with SharePoint Framework.218Views0likes0CommentsSharePoint Online Content Security Policy (CSP): Enforcement Dates and Guidance
Content Security Policy (CSP) is a critical browser security feature designed to protect web applications. SharePoint Online is rolling out CSP enforcement for all tenants starting March 1, 2026.9.2KViews1like33CommentsBuilding Generative Pages in Power Platform
Artificial Intelligence is now embedded across the Power Platform, and Generative Pages are among its most significant innovations. Instead of manually arranging controls, configuring forms, linking views, or writing Power Fx expressions, creators can now describe their requirements in plain language. Power Apps then converts those instructions into a complete, responsive, and data-enabled page. This article explains how to build Generative Pages step by step, explores the technology behind them, shares practical prompt-writing tips, and compares them with conventional page designs. Understanding Generative Pages Generative Pages offer an AI-powered way to design pages in model-driven apps. Using natural language, makers can request complete layouts that automatically connect to Dataverse tables. An intelligent agent analyses the request and selects suitable React-based components and logic to match the intended purpose. For example, you might write: “Design a card gallery that displays account names, images, email addresses, websites, and phone numbers.” Based on this input, the system produces the structure, visual layout, and functional logic, optimized for performance and usability. Main Features Page creation using conversational language Native integration with Dataverse, supporting create, read, update, and delete actions (up to six tables per page) Automatically generated React code visible in the designer Support for uploading wireframes, screenshots, or sketches Interactive refinement through ongoing conversations with Copilot. Requirements for Getting Started Before using Generative Pages, make sure the following conditions are met: Your Power Platform environment is hosted in the US region. Copilot and AI features are enabled in environment settings. You are working within a model-driven app (canvas apps are not supported yet). Creating a Generative Page: Step-by-Step Guide Step 1: Open the App Designer Visit make.powerapps.com, sign in, and open your model-driven app in edit mode. Step 2: Start a New Generative Page In the designer, choose: Add a page → Describe a page This launches the AI-driven page creation interface. Step 3: Write Your Prompt Describe the goal, layout, and functionality of the page. Example: “Create a responsive page with a three-column card layout showing account records. Include name, image, website, email, and phone. Add search and filtering options. Optimize for mobile devices.” Clear and detailed prompts lead to better results. Step 4: Connect Dataverse Tables Select Add data → Add table and choose up to six tables, such as Account, Contact, or Opportunity. Step 5: Upload a Design Reference (Optional) Attach a wireframe or mock-up to help guide the layout. Even simple sketches improve visual accuracy. Step 6: Generate and Improve After generation, Power Apps displays the page and its underlying React structure. You can refine it with requests such as: “Increase card size” “Add a status badge” “Enable dark mode” “Sort by last activity date” All updates are handled through conversational prompts. Step 7: Publish the Page Each Generative Page must be published separately. Publishing the app alone does not activate newly generated pages. Writing Better Prompts: Practical Tips To get the best outcomes, follow these guidelines: Start With Data Details Mention tables, columns, relationships, and filters. Example: “Display active accounts only and sort by last modified date.” Be Specific About Layout Describe how elements should appear across devices. Example: “Use a three-column grid on desktop and a single column on mobile.” Use Visual References Upload sketches or screenshots to clarify expectations. Make Small, Gradual Changes Request improvements in stages instead of all at once. Example: “Add a search box that filters by account name.” Plan for Application Lifecycle Management Include Generative Pages in solutions when moving between environments. Known Limitations Although powerful, Generative Pages currently have some known limitations: Limited to Dataverse data sources (external connectors are only available through virtual tables) Availability restricted to US regions during early rollout Individual publishing is required Direct editing of generated React code is not supported Generative Pages vs. Traditional Pages Category Generative Pages Standard Pages (Forms, Views, Custom Pages) Creation method AI-driven natural language Manual setup with drag-and-drop and Power Fx Technology Auto-generated React components Native model-driven or canvas components Data sources Dataverse only Dataverse plus hundreds of connectors Development speed Very fast Moderate to slow Customization AI-guided refinements Full manual control Performance Optimized React rendering Depends on implementation ALM support Developing Enterprise-ready and mature When to Use Each Approach Choose Generative Pages If You Need: Rapid interface development Modern designs with minimal effort Dataverse-centred applications Quick creation of dashboards, lists, and task views Choose Standard Pages If You Need: Advanced customization Access to non-Dataverse data Stable and predictable ALM processes Detailed control over rules, forms, and formulas Conclusion Generative Pages significantly reduce the time required to design user interfaces in model-driven apps. Tasks that once took hours can now be completed in minutes. While they do not replace traditional pages, they provide a powerful starting point that allows developers to focus more on optimization and user experience. With AI-generated React components, built-in Dataverse intelligence, and conversational customization, Generative Pages are emerging as one of the fastest ways to create polished applications in Power Apps. As the technology matures, broader regional availability and deeper platform integration are expected. References: Generate a page using natural language with model-driven apps in Power Apps - Power Apps | Microsoft Learn Power Apps Developer Plan | Microsoft Power Platform