# Fetch data from your systems

> **Note**
>
> This page shows one way to set this up. The extensions it uses fit this scenario, and other combinations work too. See [Ways to use it](overview.md#ways-to-use-it) and [Choose an extension](extensions/overview.md) for the full list.

Medical writers at a pharmaceutical company draft clinical study reports and protocol amendments in CKEditor 5. An internal study registry holds the study data: treatment arms, doses, and enrollment figures. To get the chat’s help with a section, writers paste that data in by hand. The pasted copy is out of date as soon as enrollment or the protocol changes.

An [MCP server](extensions/mcp-tools.md) gives the agent direct read access to the registry. In this example, the server exposes two tools:

* `get_study` returns a study’s current record: phase, design, treatment arms with doses, endpoints, enrollment, and site count.
* `search_products` searches the product master for product names, strengths, formulations, and the markets where each is approved.

<a id="what-you-set-up">

## What you set up

1. Host an MCP server that calls the registry’s API and exposes one tool per operation.
2. Protect the server with an authorization header that it checks on every request.
3. Register the server for the environment through the admin API with a token that has the `ai:admin` permission. The request carries the server URL and the authorization header.

The agent calls the server’s tools while it answers chat messages and in [Document Processing](document-processing.md). Actions and reviews do not use MCP tools.

<a id="what-you-get">

## What you get

The agent decides which requests need the registry. When a writer asks, “Add the study design to the Methods section for protocol VLM-3021,” the agent calls `get_study` and drafts the section from the current record. For a question such as “Is the 50 mg tablet approved in Japan?”, the agent calls `search_products` and answers in the chat without editing the document. For a request to shorten the synopsis, the agent calls no tool.

<a id="next-steps">

## Next steps

* **[MCP server for your app’s knowledge in Node.js](../../examples/ckeditor-ai/knowledge-mcp-server-nodejs.md)** has the server code and the registration request.
* **[MCP tools](extensions/mcp-tools.md)** covers connecting a server, how it authenticates, and where its tools apply.

---

Full index of the Cloud Services documentation: [llms.txt](../../../llms.txt)
