{"id":34512419,"url":"https://github.com/agentfront/frontmcp","last_synced_at":"2026-02-25T03:01:26.141Z","repository":{"id":322535764,"uuid":"1086864840","full_name":"agentfront/frontmcp","owner":"agentfront","description":"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.","archived":false,"fork":false,"pushed_at":"2026-02-20T19:00:05.000Z","size":24612,"stargazers_count":141,"open_issues_count":3,"forks_count":5,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-20T21:44:55.610Z","etag":null,"topics":["ai","framework","javascript","mcp","mcp-server","typescript"],"latest_commit_sha":null,"homepage":"https://agentfront.dev","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/agentfront.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-10-31T02:50:38.000Z","updated_at":"2026-02-20T18:34:34.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/agentfront/frontmcp","commit_stats":null,"previous_names":["agentfront/frontmcp"],"tags_count":26,"template":false,"template_full_name":null,"purl":"pkg:github/agentfront/frontmcp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentfront%2Ffrontmcp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentfront%2Ffrontmcp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentfront%2Ffrontmcp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentfront%2Ffrontmcp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/agentfront","download_url":"https://codeload.github.com/agentfront/frontmcp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/agentfront%2Ffrontmcp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29807694,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-24T22:43:48.403Z","status":"ssl_error","status_checked_at":"2026-02-24T22:43:18.536Z","response_time":75,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","framework","javascript","mcp","mcp-server","typescript"],"created_at":"2025-12-24T04:10:42.376Z","updated_at":"2026-02-25T03:01:26.136Z","avatar_url":"https://github.com/agentfront.png","language":"TypeScript","readme":"\u003cdiv align=\"center\"\u003e\n\n\u003cpicture\u003e\n  \u003csource width=\"400\" media=\"(prefers-color-scheme: dark)\" srcset=\"https://raw.githubusercontent.com/agentfront/frontmcp/refs/heads/main/docs/assets/logo/frontmcp.dark.svg\"\u003e\n  \u003csource width=\"400\" media=\"(prefers-color-scheme: light)\" srcset=\"https://raw.githubusercontent.com/agentfront/frontmcp/refs/heads/main/docs/assets/logo/frontmcp.light.svg\"\u003e\n  \u003cimg width=\"400\" alt=\"FrontMCP Logo\" src=\"https://raw.githubusercontent.com/agentfront/frontmcp/refs/heads/main/docs/assets/logo/frontmcp.light.svg\"\u003e\n\u003c/picture\u003e\n\u003chr\u003e\n\n**The TypeScript way to build MCP servers with decorators, DI, and Streamable HTTP.**\n\n[![NPM - @frontmcp/sdk](https://img.shields.io/npm/v/@frontmcp/sdk.svg?v=2)](https://www.npmjs.com/package/@frontmcp/sdk)\n[![Node](https://img.shields.io/badge/node-%3E%3D22-339933?logo=node.js\u0026logoColor=white)](https://nodejs.org)\n[![License](https://img.shields.io/github/license/agentfront/frontmcp.svg?v=1)](https://github.com/agentfront/frontmcp/blob/main/LICENSE)\n[![Snyk](https://snyk.io/test/github/agentfront/frontmcp/badge.svg)](https://snyk.io/test/github/agentfront/frontmcp)\n\n[Docs][docs-home] \u0026bull; [Quickstart][docs-quickstart] \u0026bull; [API Reference][docs-sdk-ref] \u0026bull; [Discord](https://discord.gg/frontmcp)\n\n\u003c/div\u003e\n\n---\n\nFrontMCP is a **TypeScript-first framework** for the [Model Context Protocol (MCP)](https://modelcontextprotocol.io).\nYou write clean, typed code; FrontMCP handles the protocol, transport, DI, session/auth, and execution flow.\n\n```ts\nimport 'reflect-metadata';\nimport { FrontMcp, LogLevel } from '@frontmcp/sdk';\nimport HelloApp from './hello.app';\n\n@FrontMcp({\n  info: { name: 'Demo', version: '0.1.0' },\n  apps: [HelloApp],\n  http: { port: 3000 },\n  logging: { level: LogLevel.Info },\n})\nexport default class Server {}\n```\n\n## Installation\n\n**Node.js 22+** required (24 recommended).\n\n```bash\n# New project (recommended)\nnpx frontmcp create my-app\n\n# Existing project\nnpm i -D frontmcp @types/node@^22\nnpx frontmcp init\n```\n\n\u003e Full setup guide: [Installation][docs-install]\n\n## Capabilities\n\n| Capability           | Description                                                                     | Docs                            |\n| -------------------- | ------------------------------------------------------------------------------- | ------------------------------- |\n| **@FrontMcp Server** | Decorator-configured server with info, apps, HTTP, logging, session, auth       | [Server][docs-server]           |\n| **@App**             | Organizational units grouping tools, resources, prompts with optional isolation | [Apps][docs-apps]               |\n| **@Tool**            | Typed actions with Zod schemas — class or function style                        | [Tools][docs-tools]             |\n| **@Resource**        | Read-only data exposure with static and template URIs                           | [Resources][docs-resources]     |\n| **@Prompt**          | Reusable message templates returning `GetPromptResult`                          | [Prompts][docs-prompts]         |\n| **@Agent**           | Orchestrated multi-step tool chains                                             | [Agents][docs-agents]           |\n| **Elicitation**      | Request structured user input mid-flow                                          | [Elicitation][docs-elicitation] |\n| **Skills**           | HTTP-discoverable tool manifests for agent marketplaces                         | [Skills][docs-skills]           |\n| **Discovery**        | Automatic capability advertisement for MCP clients                              | [Discovery][docs-discovery]     |\n| **Authentication**   | Remote OAuth, Local OAuth, JWKS, DCR, per-app auth                              | [Authentication][docs-auth]     |\n| **Sessions**         | Stateful/stateless session modes with JWT or UUID transport IDs                 | [Server][docs-server]           |\n| **Direct Client**    | In-process `create()`, `connect()`, `connectOpenAI()`, `connectClaude()`        | [Direct Client][docs-direct]    |\n| **Transport**        | Streamable HTTP + SSE with session headers                                      | [Transport][docs-transport]     |\n| **Ext-Apps**         | Mount external MCP servers as sub-apps                                          | [Ext-Apps][docs-ext-apps]       |\n| **Hooks**            | 5 hook families: tool, list-tools, HTTP, resource, prompt                       | [Hooks][docs-hooks]             |\n| **Providers / DI**   | Scoped dependency injection with GLOBAL and CONTEXT scopes                      | [Providers][docs-providers]     |\n| **Plugins**          | Cache, Remember, CodeCall, Dashboard — or build your own                        | [Plugins][docs-plugins]         |\n| **Adapters**         | Generate tools from OpenAPI specs                                               | [Adapters][docs-adapters]       |\n| **Testing**          | E2E fixtures, matchers, HTTP mocking for MCP servers                            | [Testing][docs-testing]         |\n| **UI Library**       | HTML/React widgets, SSR, MCP Bridge, web components                             | [UI][docs-ui]                   |\n| **CLI**              | `create`, `init`, `dev`, `build`, `inspector`, `doctor`                         | [CLI][docs-install]             |\n| **Deployment**       | Local dev, production builds, version alignment                                 | [Deployment][docs-deploy]       |\n\n## Packages\n\n| Package                               | Description                                            |\n| ------------------------------------- | ------------------------------------------------------ |\n| [`@frontmcp/sdk`](libs/sdk)           | Core framework — decorators, DI, flows, transport      |\n| [`@frontmcp/cli`](libs/cli)           | CLI tooling (`frontmcp create`, `dev`, `build`)        |\n| [`@frontmcp/auth`](libs/auth)         | Authentication, OAuth, JWKS, credential vault          |\n| [`@frontmcp/adapters`](libs/adapters) | OpenAPI adapter for auto-generating tools              |\n| [`@frontmcp/plugins`](libs/plugins)   | Official plugins: Cache, Remember, CodeCall, Dashboard |\n| [`@frontmcp/testing`](libs/testing)   | E2E test framework with fixtures and matchers          |\n| [`@frontmcp/ui`](libs/ui)             | React components, hooks, SSR renderers                 |\n| [`@frontmcp/uipack`](libs/uipack)     | React-free themes, build tools, platform adapters      |\n| [`@frontmcp/di`](libs/di)             | Dependency injection container (internal)              |\n| [`@frontmcp/utils`](libs/utils)       | Shared utilities — naming, URI, crypto, FS (internal)  |\n\n## Version Alignment\n\nKeep all `@frontmcp/*` packages on the same version. A clear **\"version mismatch\"** error is thrown at boot if versions drift. ([Production Build][docs-production])\n\n## Contributing\n\nPRs welcome! See [CONTRIBUTING.md](./CONTRIBUTING.md) for workflow, coding standards, and the PR checklist.\n\n## License\n\n[Apache-2.0](./LICENSE)\n\n\u003c!-- docs links --\u003e\n\n[docs-home]: https://docs.agentfront.dev/frontmcp 'FrontMCP Docs'\n[docs-install]: https://docs.agentfront.dev/frontmcp/getting-started/installation 'Installation'\n[docs-quickstart]: https://docs.agentfront.dev/frontmcp/getting-started/quickstart 'Quickstart'\n[docs-sdk-ref]: https://docs.agentfront.dev/frontmcp/sdk-reference/overview 'SDK Reference'\n[docs-server]: https://docs.agentfront.dev/frontmcp/servers/server 'The FrontMCP Server'\n[docs-apps]: https://docs.agentfront.dev/frontmcp/servers/apps 'Apps'\n[docs-tools]: https://docs.agentfront.dev/frontmcp/servers/tools 'Tools'\n[docs-resources]: https://docs.agentfront.dev/frontmcp/servers/resources 'Resources'\n[docs-prompts]: https://docs.agentfront.dev/frontmcp/servers/prompts 'Prompts'\n[docs-agents]: https://docs.agentfront.dev/frontmcp/servers/agents 'Agents'\n[docs-elicitation]: https://docs.agentfront.dev/frontmcp/servers/elicitation 'Elicitation'\n[docs-skills]: https://docs.agentfront.dev/frontmcp/servers/skills 'Skills'\n[docs-discovery]: https://docs.agentfront.dev/frontmcp/servers/discovery 'Discovery'\n[docs-auth]: https://docs.agentfront.dev/frontmcp/authentication/overview 'Authentication'\n[docs-direct]: https://docs.agentfront.dev/frontmcp/deployment/direct-client 'Direct Client'\n[docs-transport]: https://docs.agentfront.dev/frontmcp/deployment/transport 'Transport'\n[docs-ext-apps]: https://docs.agentfront.dev/frontmcp/servers/ext-apps 'Ext-Apps'\n[docs-hooks]: https://docs.agentfront.dev/frontmcp/extensibility/hooks 'Hooks'\n[docs-providers]: https://docs.agentfront.dev/frontmcp/extensibility/providers 'Providers'\n[docs-plugins]: https://docs.agentfront.dev/frontmcp/plugins/overview 'Plugins'\n[docs-adapters]: https://docs.agentfront.dev/frontmcp/adapters/overview 'Adapters'\n[docs-testing]: https://docs.agentfront.dev/frontmcp/testing/overview 'Testing'\n[docs-ui]: https://docs.agentfront.dev/frontmcp/ui/overview 'UI Library'\n[docs-deploy]: https://docs.agentfront.dev/frontmcp/deployment/local-dev-server 'Deployment'\n[docs-production]: https://docs.agentfront.dev/frontmcp/deployment/production-build 'Production Build'\n","funding_links":[],"categories":["📚 Projects (2474 total)"],"sub_categories":["MCP Servers"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagentfront%2Ffrontmcp","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fagentfront%2Ffrontmcp","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fagentfront%2Ffrontmcp/lists"}