Skip to content

Latest commit

 

History

433 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
FrontMCP - The TypeScript way to build MCP servers

NPM Node License Snyk Discord

frontmcp.dev  ·  Learn  ·  Reference  ·  Examples  ·  Playground  ·  Blog

npx frontmcp create my-app, then npm run dev: an MCP server running on localhost:3000

Write a tool. Ship a server.

Classes in, protocol out. FrontMCP handles transport, DI, sessions, auth and execution flow, and the same server runs locally and in production unchanged.

import 'reflect-metadata';

import { App, FrontMcp, Tool, ToolContext, z } from '@frontmcp/sdk';

@Tool({
  name: 'add',
  description: 'Adds two numbers together',
  inputSchema: { a: z.number(), b: z.number() },
})
class AddTool extends ToolContext {
  async execute(input: { a: number; b: number }) {
    return input.a + input.b;
  }
}

@App({ id: 'calc', name: 'Calculator', tools: [AddTool] })
class CalcApp {}

@FrontMcp({
  info: { name: 'Demo', version: '0.1.0' },
  apps: [CalcApp],
  http: { port: 3000 },
})
export default class Server {}
Typed end to end, auth built in, ship anywhere, every stage is a hook, tools with a face, one endpoint for any client

Start

npx frontmcp create my-app        # new project (Node 24+)
npx frontmcp init                 # or add FrontMCP to an existing one

Then follow Learn on frontmcp.dev, or browse Tools, Resources, Prompts, Agents, Auth, Plugins, Tool UI, Testing and Deployment. Try it live in the Playground.

Packages

Install frontmcp (CLI) and @frontmcp/sdk. The rest is pulled in for you, or opt-in. Keep every @frontmcp/* package on the same version; a mismatch fails fast at boot (why).

Core and extensions
Package What it does
frontmcp CLI: create, init, dev, build, inspect, doctor
@frontmcp/sdk Core framework: decorators, DI, flows, transport, MCP protocol
@frontmcp/auth OAuth, JWKS, DCR/CIMD, sessions, credential vault
@frontmcp/testing E2E test framework with fixtures and matchers
@frontmcp/adapters Generate tools from an OpenAPI spec
@frontmcp/skills Curated SKILL.md catalog for scaffolding and skills install
@frontmcp/guard Rate limits, concurrency and policy guards
@frontmcp/observability Structured logging, metrics and tracing
@frontmcp/react React hooks and client for a FrontMCP server
@frontmcp/ui / uipack Widgets, SSR renderers, MCP Bridge, themes
@frontmcp/edge Run a server on Cloudflare Workers / V8 isolates
@frontmcp/storage-sqlite SQLite session, task and elicitation stores
@frontmcp/nx Nx generators and executors

Internal, published so the above resolve: protocol, di, utils, lazy-zod.

Official plugins
Package What it does
@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 to skills and meta-tools for big APIs

PRs welcome: see CONTRIBUTING. Released under the Apache-2.0 license.

Docs also mirrored at docs.agentfront.dev/frontmcp.

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

145 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages