🎩 You're Invited:Meet the Socket team at Black Hat in Las Vegas, August 3-6.RSVP
Sign In

@frontmcp/protocol

Package Overview
Dependencies
Maintainers
1
Versions
42
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@frontmcp/protocol

Centralized MCP protocol types, server, and client re-exports for FrontMCP

Source
npmnpm
Version
1.6.0
Version published
Weekly downloads
1.2K
-3.74%
Maintainers
1
Weekly downloads
 
Created
Source

@frontmcp/protocol

The single boundary between FrontMCP and the upstream @modelcontextprotocol/sdk.

NPM

Internal package. It is published so the other @frontmcp/* packages can resolve it — you should not import it from application code. Import MCP types from @frontmcp/sdk instead, and use McpClient from @frontmcp/testing for a raw client in tests.

Why it exists

libs/protocol/src/types.ts is the only file in the whole monorepo that transitively imports @modelcontextprotocol/sdk. Everything else — SDK, adapters, plugins, auth, tests — imports from @frontmcp/protocol.

That indirection means swapping, pinning, or dropping the upstream package is a one-file change instead of a repo-wide refactor. The @nx/dependency-checks lint rule enforces it: adding a direct upstream import anywhere else fails the build.

✅ Route through the boundary:

import { CallToolRequestSchema, McpError, type Tool } from '@frontmcp/protocol';

❌ Never import the upstream package directly — that locks every call site to it:

import { McpError } from '@modelcontextprotocol/sdk/types.js';

If a type you need is not reachable from @frontmcp/protocol, re-export it from libs/protocol/src/types.ts rather than reaching around the boundary.

What it exports

AreaContents
Protocol typesRequests, results, notifications, schemas, McpError, capabilities
Protocol 2026-07-28Types the upstream SDK does not ship yet — see below
ServerMcpServer, StreamableHTTPServerTransport, WebStandardStreamableHTTPServerTransport
ClientClient, StreamableHTTPClientTransport, SSEClientTransport
Transportsstdio (Node + browser), in-memory
Auth typesAuthInfo and friends

Node and browser/worker variants are selected automatically through package subpath imports, so the same import works in every runtime FrontMCP targets.

Protocol 2026-07-28

The upstream SDK tops out at 2025-11-25. Revision 2026-07-28 is therefore defined here — MCP_20260728_META, MCP_20260728_ERROR_CODES, CacheableResult, DiscoverResult, InputRequiredResult, SubscriptionFilter, and the rest.

Everything is additive: the 2025-and-earlier types are untouched, because a FrontMCP server serves both eras on the same endpoint. When upstream catches up, types-20260728.ts is the only file that has to change.

See the protocol versions guide for what the revision changed and how FrontMCP selects one per request.

License

Apache-2.0

Keywords

mcp

FAQs

Package last updated on 02 Aug 2026

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts