Elium

Search and read a company's governed Elium knowledge base, with the permissions of the authenticated user.

Documentation

MCP

Connect Elium with ChatGPT, Claude or your own system.

About

The Model Context Protocol (MCP) is an open standard that allows AI models and external applications to securely access real-time, contextual data from connected systems. In the context of Elium, MCP enables a bridge between your knowledge base and AI tools such as ChatGPT or other compliant assistants.

Through MCP, an AI assistant can query your Elium content, for example, to answer user questions, summarise documentation, or provide context-aware support without needing to manually copy or export data. Access is managed via OAuth authentication, ensuring that only authorised users and applications can retrieve information based on their Elium permissions.

Each Elium instance exposes its MCP endpoint at https://your-platform-name.elium.com/services/mcp, which can be used to connect your platform’s knowledge securely to external AI ecosystems.

Available tools

Once a connection is established, the Elium MCP server exposes five read-only tools that an AI assistant can call to retrieve information from your knowledge base. Every tool runs with the permissions of the authenticated user, so an assistant can only ever access content that user is already allowed to see in Elium.

ToolWhat it does
findRelevantArticlesSearches the whole knowledge base by meaning. The default way to answer a question.
findSpecificArticlesSearches with filters: keywords, template, spaces, date range.
readArticleReturns the full content and metadata of one article.
findSpacesLists the spaces the user can access.
findTemplatesLists the article templates available.

findRelevantArticles

Performs a semantic (meaning-based) search of the whole knowledge base from a natural-language question and returns the most relevant articles, ranked by relevance. It takes no filters and no scoping. This is the tool an assistant uses by default to answer a question.

Each result includes the article title, a link to open it, and a matching content snippet. Snippets can also come from attached documents, when those are the best match.

findSpecificArticles

Runs a more targeted search, for when an assistant needs to filter rather than rank by meaning. It supports:

  • keyword search (a result must contain all the terms supplied)
  • filtering by template, by specific spaces, and by a date range
  • choosing the sort order
  • capping the number of results (10 by default, up to 50)

This is useful for requests such as "the five most recent articles created from the Policy template in the HR space".

readArticle

Retrieves the complete content of a single article from its identifier, returned as Markdown, together with its key metadata: owner, space, template, tags, any custom attributes (label and value), review or expiry date, approval status, last-version date, and whether the article is archived.

An assistant typically calls this after a search, when it needs more context than a snippet provides. It uses the metadata to judge how current and how reliable the content is.

Note: very long articles (bodies over about 15,000 characters) are truncated. In that case the assistant is given a link to read the full version online.

findSpaces

Lists the spaces the user can access. This shows an assistant how the knowledge base is organised, and it returns the space IDs needed to scope a search with findSpecificArticles.

An optional name filter narrows the list. It matches anywhere in the name and ignores case and accents. Omit it to list every accessible space.

Each result gives the space and the user's rights in it: whether they can post content, whether publishing is direct or goes through an approval workflow, their role, and the number of members.

This is useful as a first step before a targeted search, or for requests such as "which spaces can I publish to?".

findTemplates

Lists the article templates (article types) available, and shows whether each template is global or installed in specific spaces. It takes the same optional name filter as findSpaces.

This lets an assistant find the right template before it filters a search, for requests such as "find all articles that use the FAQ template".

Examples in practice

Here are a few things a connected assistant can do, and the tools it uses behind the scenes.

  • "How do I request parental leave?" A meaning-based search (findRelevantArticles) answers from the most relevant HR articles, with links.
  • "Summarise the policies we updated this quarter." A filter by template and date range (findSpecificArticles), then a read of each result (readArticle) to summarise it.
  • "Is our data-retention policy still up to date?" A read of the article (readArticle), then a check of its review date and approval status before answering.
  • "Which spaces can I post to?" A list of the user's spaces and their rights (findSpaces).
  • "Find every FAQ article in the Support space." A template lookup (findTemplates), a space lookup (findSpaces), then a filtered search (findSpecificArticles).

Every example runs with the user's own permissions. The assistant never sees content that the user could not already open in Elium.

Regarding authentication

Elium uses the OAuth 2.0 protocol to authenticate and authorise access to the MCP endpoint. OAuth ensures that external applications can only access Elium data on behalf of users who have explicitly granted permission.

There are two ways to configure OAuth authentication for MCP integrations:

1. Manual OAuth client creation (preferred)

Platform administrators can manually create an OAuth client directly in the Elium Admin Panel. (There is a step by step tutorial just below)

Once created, the client credentials (client ID and client secret) can be used to authenticate with the MCP endpoint according to the OAuth 2.0 flow.

This approach gives administrators full control over the client configuration and redirect URLs.

2. Dynamic client registration (DCR)

Optionally, Elium supports Dynamic Client Registration (DCR).

When DCR is enabled, external systems can register themselves dynamically as OAuth clients on your instance.

To enable DCR, Elium will request:

  • A client_name to identify the external application
  • A list of allowed redirect_uris that define where users are redirected after authentication

Only requests matching the whitelisted redirect URLs are accepted, ensuring that access tokens are issued securely to legitimate applications.

This option is on demand and available through simple request at support@elium.com

While this mechanism is secure under standard use, we recommend only allowing trusted redirect URLs to reduce risks of attacks.

Recommendation

For third-party or experimental integrations, we recommend using manual OAuth client creation for tighter administrative control.

Setup instructions

Select your app’s section for detailed setup instructions.

ChatGPT

⚠️ Custom MCP is still in dev in ChatGPT.

Step 1: create the ChatGPT connected app in Elium

Step 2: add the custom connector to ChatGPT

You might need to activate Developer mode to do this (in the Connectors section).

Click on "Advanced Settings" then toggle the Developer Mode.

Go back to the Connect screen and click "Create".

The MCP server's URL of Elium is: https:// your-platform-name.elium.com/services/mcp

Select "OAuth" from the authentication dropdown.

Accept the connection.

You can now search in your Elium platform directly from ChatGPT.

Claude

Step 1: create the Claude connected app in Elium

Step 2: add the custom connector to Claude

The MCP server's URL of Elium is: https:// your-platform-name.elium.com/services/mcp

Use Client ID and secret from Elium connected app.

Step 3: enable it in the conversation

You can now search in Elium from your Claude conversation.