Search Oryxen

Search tools, jump to categories, and open key destinations

All field notes
Field note 05Agent tooling

How to evaluate an MCP server before connecting it to an agent that can act

Treat every MCP server as a privileged service that acts with its own credentials, not the caller's. Before you connect one, record what tools it exposes and what each tool can reach, check which protocol revision it implements, decide which credential actually performs the action, and plan to re-read its tool descriptions on every session. Approval at install time is not approval at run time, so the evaluation has to be repeatable rather than a one-time check.

By Kaviyarasu Viswanathan

Bottom line up front

Treat every MCP server as a privileged service that acts with its own credentials, not the caller's. Before you connect one, record what tools it exposes and what each tool can reach, check which protocol revision it implements, decide which credential actually performs the action, and plan to re-read its tool descriptions on every session. Approval at install time is not approval at run time, so the evaluation has to be repeatable rather than a one-time check.

01

Start with what the server can reach, not what it claims to do

An MCP server is a program that runs tools and returns results to the model. The consequential question is not whether the tool is useful but what it can touch when it runs: which repositories, cloud accounts, databases, secrets, and file paths are reachable using the credentials it holds. Write that inventory down before you evaluate anything else, because a tool that reads a public API and a tool that can write to production are not comparable decisions.

The server executes with its own credentials rather than the caller's. That single fact changes the review: the permission set you are approving is the server's, and any user who can trigger the server inherits whatever it was granted. When a server's reach is wider than the workflow it was adopted for, the correct outcome is a narrower server, not a longer risk acceptance.

  • List every tool the server exposes and mark each as read-only, write, or destructive.
  • Record which credential performs each action and where that credential is stored.
  • Write down what is reachable but not currently used, and why it is still granted.
02

Check which specification revision the server implements

The protocol has changed materially, and servers do not move in lockstep. The published MCP security guidance and the 2026 revision of the specification tighten authorization requirements and remove session-handling behaviour that earlier disclosures relied on. A server running an older revision can retain weaker behaviour long after the specification improved, so the version an approved server implements is part of the evaluation record.

Record the version alongside the approval date, and re-check it after any server update. A version that was acceptable at adoption may no longer describe what is running after an upgrade, which is exactly why the check belongs in a repeatable process rather than a one-time gate.

03

Treat tool descriptions as input, not documentation

Tool descriptions are read by the model, which makes them instructions. A description can be changed by a server update after the server was approved, and published guidance and independent research in 2026 have both described cases where a server behaved benignly during review and then altered its behaviour later. The practical consequence is that a server that was safe when you inspected it is not guaranteed safe on the next session.

That does not mean treating every server as malicious. It means scope: describe a server as reviewed as of a specific date and a specific version, prefer servers whose update history you can see, and keep the option to re-inspect. Where the workflow is sensitive, plan for runtime inspection of what a tool actually asks for rather than relying on the description alone.

  • Record the server version and the date the description set was last reviewed.
  • Prefer a pinned or vendored server over a remotely updated one for sensitive workflows.
  • Decide in advance what you will do when a description changes, before it changes.
04

Make the approval something you can repeat

Published government and industry guidance converges on the same operational shape: inventory what is deployed, allowlist what is approved, grant least privilege, and log invocations with enough detail to reconstruct what happened. None of those controls is specific to one product, and none of them is satisfied by having reviewed a server once.

For most teams the honest starting point is a short list: one or two servers, an explicit record of what each can reach, a defined owner, and a date to revisit. A small governed set that you understand is easier to reason about than a large one you have approved in bulk. Oryxen's directory can help you discover candidate servers by category, but it cannot establish what a specific server is permitted to do in your environment.

Questions this note can answer

Useful boundaries, stated plainly.

Does this article say MCP servers are unsafe?

No. It describes a review method that assumes any installed server can be revisited, updated, and re-inspected. The conclusions are about process, not about the safety of a particular server or the protocol as a whole.

Is reviewing a server once enough?

For most workflows, no. A server can change its tool set or behaviour through an update, so the useful record is which version was reviewed on which date, with a defined trigger to review it again.

Oryxen method

Oryxen publishes public research frameworks and makes their sources, uncertainty, and update triggers visible. This field note does not replace direct provider documentation or a team’s own technical, legal, security, financial, or operational evaluation.

Read methodology and corrections