Skip to content
OneviumDocs
On this page

Connect and verify an MCP server

Choose a transport and scope, then verify the connection and access boundaries with an actual tool call.

Connect an external tool#

MCP servers expose tools to a conversation. This guide covers a local filesystem server and the public Microsoft Learn documentation server, using Onevium's actual configuration fields.

Open the right configuration surface#

Open Plugins → MCP from the left sidebar. Choose the intended project in the scope selector, then Add → Add manually to open the configuration form. Choose Personal · all projects when the server should be configured at user scope. The selected scope determines where a new manual entry is saved.

Add → Add with AI, or @MCP in a conversation, asks the assistant to help with configuration. The AI entry prepares a conversation draft; add the service details and send it before setup starts.

The older right-side MCP Servers → Add Server shortcut still creates a global/user entry. For project scope, use the unified page above or the .mcp.json example below.

For the local example, install Node/npm and prepare a folder containing hello.txt with the text MCP demo ready. Use an absolute folder path and keep unrelated files outside it.

Add the local filesystem example#

Fill the form as follows:

FieldValue
Server Namedocs-files
Server Typestdio
Commandnpx
Arguments, one per lineThe three lines below
Environment Variables (JSON){}
text
-y
@modelcontextprotocol/server-filesystem
/absolute/path/to/mcp-demo

Replace the last line with your prepared directory, for example C:/mcp-demo on Windows. Click Add Server, confirm the entry is enabled, then open a new test conversation. The package and allowed-directory behavior are documented by the official filesystem server.

Add a remote HTTP server#

Microsoft Learn's official MCP server uses Streamable HTTP and requires no authentication. Add a second entry:

FieldValue
Server Namemicrosoft-learn
Server TypeHTTP
URLhttps://learn.microsoft.com/api/mcp
Headers (JSON){}
Environment Variables (JSON){}

Save it and ask: “Use microsoft-learn to find Microsoft's documentation for creating a .NET console app; return the official source link.” A browser GET to this endpoint may return 405; test it through MCP instead.

Form and JSON fields#

FieldUsed for
stdioStarting a local process; Command and Arguments are separate
HTTPA remote Streamable HTTP endpoint
SSEA server explicitly documenting the older SSE transport; do not select it merely because output streams
HeadersRemote request headers as a JSON object, such as an Authorization header when that server requires one
Environment VariablesVariables provided to a local process; values are strings in a JSON object
JSON tabThe configuration for one server, not an outer mcpServers object

For example, the remote entry's JSON tab can contain:

json
{
  "type": "http",
  "url": "https://learn.microsoft.com/api/mcp"
}

Keep a server in one project#

The simplest path is Plugins → MCP, choose the project, then Add → Add manually. After saving, keep that project selected and confirm the entry appears there.

To maintain the same configuration as a project file, create or merge the entry into .mcp.json at the project root. Preserve other servers already in the file:

json
{
  "mcpServers": {
    "microsoft-learn": {
      "type": "http",
      "url": "https://learn.microsoft.com/api/mcp"
    }
  }
}

Reopen the project's conversation and check that the entry is shown under that project. Project JSON needs the outer mcpServers map; the Add Server dialog's JSON tab does not. Keep credentials out of committed example files.

Verify the tools, not just the entry#

For docs-files, ask the assistant to list its actual allowed directories and read hello.txt. Expect the prepared directory and MCP demo ready. For Microsoft Learn, inspect the returned documentation link and tool source.

The filesystem server also has write tools. Its allowed roots can change when a client supplies Roots; verify the returned directories rather than assuming the launch argument is the final boundary. The server row provides enable/disable, Edit, Restart, and Delete actions.

Troubleshoot a server#

Error or symptomWhat to check
Command not foundNode/npm installation and the actual executable path
Invalid JSONUse double quotes, string values, and no comments or trailing comma
Remote 401/403That server's required headers and account access; the Learn example needs neither
Changed config, old toolsReconnect/restart the entry and start a new test conversation
Duplicate tool namesIdentify the server and scope before disabling a duplicate

Next steps#

Use plugins for packaged integrations, permissions for action controls, and settings reference for network and tool settings.