Copilot Studio agent will not answer from a SharePoint list: checks and a flow workaround
Short answer: Microsoft's Copilot Studio page says an agent can use SharePoint lists as a knowledge source, so a missing answer points to a limit or a setting, not a missing feature. Check the list limits first. If the list is outside them, add a flow as a tool that reads the list and hands rows back to the agent.
What Microsoft says lists support
Microsoft's page "Add SharePoint as a knowledge source" says: "Your agent can use these lists as a knowledge source." It also says users authenticate with their SharePoint credentials, and "At a minimum, the user must have Read permissions to the SharePoint site or list to access the content."
If a user lacks permission, Microsoft's troubleshooting page says the system returns no results and no error: "it appears as if no documents were found."
Check these limits first
Microsoft's "Quotas and limits" page lists these list rules:
- "Document libraries aren't supported as lists."
- "SharePoint list queries only return data from the first 2,048 rows of data."
- "You can't select list views as a knowledge source."
- "SharePoint lists with more than 12 lookup columns in the default view aren't supported."
- "The Attachments column doesn't support indexing or reasoning over attachments."
- Up to 15 lists, and up to 35,000 rows across all 15 lists, as long as the total rows don't exceed 120,000. Microsoft's "Add SharePoint as a knowledge source" page adds: "For the best results, only use up to 10 lists per agent."
The troubleshooting page adds that "Copilot Studio agents require Dataverse search to use a SharePoint list as a knowledge source." If Dataverse search is off in the environment, the list can't be queried. Ask your admin to turn it on.
Two more items from the same page: if "Restricted SharePoint Search" is turned on for your tenant, SharePoint as a knowledge source is blocked, and guest users in SSO-enabled apps do not get generative answers from SharePoint sources.
Step 1. Find out which check fails
- Open the list in SharePoint and confirm the person asking the agent can open it.
- Count the rows. Compare the count with 2,048 and 35,000.
- Open the default view. Count the Lookup columns. The limit is 12.
- Confirm you picked a list, not a document library or a view.
- Ask your admin about Dataverse search and Restricted SharePoint Search.
Step 2. If the list is too big, use a flow as a tool
Microsoft says agent flows can be added to agents as tools: "the agent's orchestrator can call the flow at runtime to retrieve data or perform actions on behalf of the user." Our advice, not a Microsoft rule: use this when you need rows past the first 2,048, or a filtered slice such as only open items.
The flow must meet these rules from Microsoft's page "Add an agent flow as a tool to an agent":
- It has the When an agent calls the flow trigger and a Respond to the agent action.
- The Asynchronous response toggle is Off under Networking in the Respond to the agent action settings.
- It is published.
- It responds within the 100-second action limit.
Build the flow:
- In Copilot Studio or Power Automate, create an agent flow with the trigger When an agent calls the flow.
- Add a text input, for example "Status", so the agent can pass a filter value.
- Add the SharePoint action Get items. Pick your site and list.
- In Get items, open Advanced options. Put your filter in Filter Query. Microsoft's page shows the form: Location eq 'Midwest' and Status eq 'Approved'.
- In Top Count, enter the number of rows you need. Microsoft's Get items page says the default item limit is 100 and you can increase it up to the list view threshold of 5,000.
- Open the action settings and turn Pagination on if the list has more than 5,000 items. Microsoft's page says a filter on a list with more than 5000 items can return no records when no match sits in the first 5000 items.
- Add the action Respond to the agent and return the columns the agent needs as text.
- Save and publish the flow.
Keep the returned data small. Return only the columns the answer needs. The 100-second limit counts the whole flow.
Step 3. Add the flow to the agent
Microsoft's page gives these steps. Exact names may differ on your screen.
- In Copilot Studio, select Agents, then select your agent.
- Go to the Tools page and select Add a tool.
- Select Flow.
- Select your flow.
- Select Add and configure.
- Update the description so the agent knows when to call the flow. Select Save.
Our advice, not a Microsoft rule: write the description in plain words, such as "Returns open requests from the Requests list. Pass the Status value."
Columns that can break the answer
Microsoft's limits page lists lookup and attachment limits for list knowledge, and no managed metadata rule. Our advice, not a Microsoft rule: if a column holds managed metadata, test the flow output on one row. If the value comes back as an object instead of text, return the label as text in the Respond to the agent step.
For a different problem, see "Power Automate Get items returns only 100 rows".
When to get help
You can build all of this yourself in Microsoft 365. If you would rather have it built and tested for your team, I do that. A tracker like this is a fixed price: $5,000 for one, built in 2 weeks. See "What a SharePoint tracker costs to build". Bring one example of the problem to a free call.
I am Al Davies. I run 250 High Street LLC and build SharePoint trackers and Power Automate flows for operations teams. I work remotely. The first call is free, and I will not try to sell you anything.
See trackers I built: Tools I built
FAQ
Can a Copilot Studio agent use a SharePoint list as knowledge?
Yes. Microsoft says "Your agent can use these lists as a knowledge source," with limits on rows, lookups and views.
Why does my Copilot Studio agent say it cannot help when the list has the answer?
Microsoft lists causes: missing Read permission, Dataverse search off, Restricted SharePoint Search on, or a list outside the limits.
How many rows can a Copilot Studio agent read from a SharePoint list?
Microsoft says list queries only return data from the first 2,048 rows.
Can I use a SharePoint list view as a knowledge source?
No. Microsoft says "You can't select list views as a knowledge source."
What must a flow have to work as an agent tool?
The When an agent calls the flow trigger, a Respond to the agent action, published status, and a reply inside 100 seconds.
Sources
- Microsoft Learn, Add SharePoint as a knowledge source - Microsoft Copilot Studio
- Microsoft Learn, Quotas and limits - Microsoft Copilot Studio
- Microsoft Learn, SharePoint Knowledge Sources Don't Return Results - Copilot Studio
- Microsoft Learn, Add an agent flow as a tool to an agent - Microsoft Copilot Studio
- Microsoft Learn, Use agent flows with your agent - Microsoft Copilot Studio
- Microsoft Learn, In-depth analysis into 'Get items' and 'Get files' SharePoint actions for flows in Power Automate