Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

366 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
FrontMCP Logo

The production-grade, TypeScript-first framework for building MCP servers — decorators, DI, auth, and Streamable HTTP, batteries included.

NPM - @frontmcp/sdk Node License Snyk

DocsQuickstartAPI ReferenceDiscord


FrontMCP turns the Model Context Protocol into a typed, declarative framework. You write clean @Tool, @Resource, and @App classes; FrontMCP handles the protocol, transport, dependency injection, sessions, auth, and execution flow — and the same server runs locally and ships to production unchanged.

import 'reflect-metadata';

import { FrontMcp, LogLevel } from '@frontmcp/sdk';

import HelloApp from './hello.app';

@FrontMcp({
  info: { name: 'Demo', version: '0.1.0' },
  apps: [HelloApp],
  http: { port: 3000 },
  logging: { level: LogLevel.Info },
})
export default class Server {}

Why FrontMCP

  • Typed by default — decorators + Zod schemas give end-to-end types from input to output, with editor autocomplete and compile-time checks.
  • Batteries included — auth (OAuth/JWKS/DCR), sessions, transport, discovery, and DI are built in, not bolted on.
  • Ship anywhere — one codebase deploys to Node, Vercel, AWS Lambda, Cloudflare Workers, or a serverless bundle.
  • Production-minded — stateful/stateless sessions, high-availability transport, structured observability, and a 95%+ tested core.
  • Extensible — plugins, lifecycle hooks, OpenAPI adapters, and external MCP sub-apps when you outgrow the defaults.

Installation

Node.js 24+ required.

# New project (recommended)
npx frontmcp create my-app

# Existing project
npm i -D frontmcp @types/node@^24
npx frontmcp init

Full setup guide: Installation · Quickstart

Capabilities

Build — decorator-configured @FrontMcp server and @App domains; typed @Tool, @Resource, and @Prompt primitives; @Agent multi-step chains; and scoped Providers / DI.

SecureRemote & Local OAuth, JWKS, DCR, per-app auth with stateful / stateless sessions (JWT or UUID transport IDs).

Connect & operateStreamable HTTP + SSE transport, every MCP protocol revision from 2024-11-05 through 2026-07-28 on one endpoint, capability discovery, elicitation, hooks, HTTP-discoverable skills, tool UI / MCP Apps, an in-process Direct Client (connectOpenAI / connectClaude), and first-class deployment.

Extend & tooling — official plugins (Cache, Remember, CodeCall, Dashboard), the OpenAPI adapter, a UI library (HTML/React widgets, SSR, MCP Bridge), an E2E testing framework, and a CLI (create, init, dev, build, inspect, doctor).

→ Full reference: docs.agentfront.dev/frontmcp

Packages

You install frontmcp (the CLI) and @frontmcp/sdk. Everything else is either pulled in for you or opt-in.

Core

Package Description
frontmcp The CLI — create, init, dev, build, inspect, doctor
@frontmcp/sdk Core framework — decorators, DI, flows, transport, MCP protocol
@frontmcp/auth Authentication, OAuth, JWKS, DCR/CIMD, credential vault
@frontmcp/testing E2E test framework with fixtures and matchers

Extend

Package Description
@frontmcp/plugins Plugin authoring toolkit + official plugin re-exports
@frontmcp/adapters OpenAPI adapter — generate tools from an OpenAPI spec
@frontmcp/skills Curated SKILL.md catalog for scaffolding and skills install
@frontmcp/guard Policy/guard rules for tool inputs and outputs
@frontmcp/observability Structured logging, metrics, and tracing helpers

UI

Package Description
@frontmcp/react React hooks + client for talking to a FrontMCP server
@frontmcp/ui React components, SSR renderers, MCP Bridge
@frontmcp/uipack React-free themes, build tools, platform adapters

Runtime & storage

Package Description
@frontmcp/edge Run a server on Cloudflare Workers / V8 isolates from a config
@frontmcp/storage-sqlite SQLite-backed session, task, and elicitation stores
@frontmcp/nx Nx generators and executors for FrontMCP workspaces

Internal

Published so the packages above resolve, but not intended for direct use:

Package Description
@frontmcp/protocol The single boundary to the upstream MCP SDK — protocol types
@frontmcp/di Dependency injection container
@frontmcp/utils Shared utilities — naming, URI, crypto, FS
@frontmcp/lazy-zod Lazily-loaded Zod wrapper that keeps cold starts small

Official plugins

Package Description
@frontmcp/plugin-cache Cache tool results with a TTL
@frontmcp/plugin-remember Per-session memory (this.remember)
@frontmcp/plugin-approval Human approval gates before a tool runs
@frontmcp/plugin-codecall Let the model compose tool calls as code
@frontmcp/plugin-dashboard Built-in web dashboard
@frontmcp/plugin-feature-flags Toggle tools and apps at runtime
@frontmcp/plugin-skilled-openapi OpenAPI → skills + meta-tools for large APIs

Version Alignment

Keep all @frontmcp/* packages on the same version. A clear "version mismatch" error is thrown at boot if versions drift. (Production Build)

Contributing

PRs welcome! See CONTRIBUTING.md for workflow, coding standards, and the PR checklist.

License

Apache-2.0

About

TypeScript-first framework for the Model Context Protocol (MCP). You write clean, typed code; FrontMCP handles the protocol, transport, DI, session/auth, and execution flow.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

146 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages