- Custom data source via the API is a push model. You create a collection with the Unblocked REST API and upload documents to it. Unblocked indexes what you send and cites those documents in answers.
- Custom MCP is a pull model. You connect a Model Context Protocol (MCP) server that is reachable over public HTTPS, and Unblocked calls its read-only tools while it answers a question. Nothing is ingested or indexed.
Compare the two options
When to use the API custom data source
Use the API when the content behaves like a document set you can hand over:- The data is static or changes slowly, such as internal documentation, runbooks, policies, or exported reports.
- You can build and upload the content on a cadence, for example nightly or after a publish step.
- You don’t want to expose any infrastructure to the public internet.
- Answers don’t need to reflect the state of a system at the moment the question is asked.
- You want the content to appear as a cited reference in answers.
When to use Custom MCP
Use Custom MCP when the answer depends on the current state of a running system:- You need live context, such as querying a database, a dashboard, or an internal tool on demand.
- No built-in Unblocked data source exists for the system. This covers internal tools, proprietary APIs, and platforms Unblocked doesn’t support yet, such as PagerDuty, Grafana, Backstage, LaunchDarkly, or Splunk.
- The system can expose an MCP server over public HTTPS. Local, private-network, and plain-HTTP servers aren’t supported.
- The server authenticates with OAuth or HTTP headers.
- The tools you need are read-only. Unblocked uses
annotations.readOnlyHintwhen the server provides it, and otherwise evaluates the tool description and excludes tools that might modify data.