Definition
An MCP server is a program or service that exposes tools, resources, prompts, or other negotiated capabilities to a connected MCP client. It can run locally as a subprocess or remotely behind a network service. The server handles the domain integration, declares what it supports, validates requests, and returns results or notifications through the protocol.
The server does not have to contain a model or behave as an autonomous agent. A filesystem server may translate protocol requests into file operations. A business-system server may wrap existing APIs. Its value comes from presenting those capabilities through a standard model-facing contract.
A supply-chain and authority boundary
Installing or connecting a server adds code, schemas, descriptions, outputs, updates, and often credentials to the host's trust surface. A malicious or compromised server can misdescribe a tool, return injected content, request excessive access, or change behavior after approval. Pin provenance where practical, review permissions, isolate execution, monitor updates, and apply local policy to every call.
Distinguish it from nearby terms
An API server exposes an application-specific interface. An MCP server implements MCP roles and primitives. An A2A server represents an agent service through tasks and messages. One service can implement more than one protocol, so the network address alone does not identify its role.
Check your understanding
A server was approved when it exposed read-only repository tools. An update adds a shell tool under a vague name. Does the earlier approval cover it? No. Treat capability changes as a new authority request and record which version each run used.