
achetronic/mcp-forge
Developer toolsЭта страница переведена автоматически. Технические детали смотрите в оригинале. Открыть оригинал
achetronic/mcp-forge — это кандидат на MCP-сервер, импортированный из https://github.com/achetronic/mcp-forge.
Обзор
achetronic/mcp-forge — это кандидат на MCP-сервер, импортированный из https://github.com/achetronic/mcp-forge.
Обзор (машинный перевод)
Готовый к производству шаблон сервера MCP (Model Context Protocol) (включая авторизацию oauth), встроенный в Go, который работает с ведущими поставщиками ИИ.
Мотивация
Спецификация MCP относительно новая и не содержит полной документации по сборке полноценных серверов в Go.
Этот шаблон обеспечивает полностью совместимый MCP-сервер, который бесшовно интегрируется с удалёными провайдерами, такими как Claude Web и OpenAI,
но и с местными провайдерами, такими как Claude Desktop.
Особенности
-
🔐 OAuth RFC 8414 и RFC 9728 совместимость
-
Поддержка конечных точек
.well-known/oauth-protected-resourceи.well-known/oauth-authorization-server -
Оба конца конфигурируемы
-
🛡️ Несколько методов валидации JWT
-
Делегирован внешним системам, таким как Istio
-
Локально валидированы на основе выражений JWKS URI и CEL для утверждений
-
📋 Логи доступа могут исключать или редактировать поля
-
🚀 Готов к производству: включает полные примеры, Dockerfile, Helm Chart и GitHub Actions для CI
-
⚡ Очень легко расширяется: добавляются витамины для производства в хороший сок: mcp-go
Развертывание
Производство 🚀
Развернуть в Kubernetes с помощью карты Helm, расположенной в каталоге chart/.
Эта страница переведена автоматически. Технические детали смотрите в оригинале.
README
Показан фрагмент оригинального README. Открыть оригинал.
MCP Forge
A production-ready MCP (Model Context Protocol) server template (oauth authorization included) built in Go that works with major AI providers.
Motivation
The MCP specification is relatively new and lacks comprehensive documentation for building complete servers in Go. This template provides a fully compliant MCP server that integrates seamlessly with remote providers like Claude Web, and OpenAI, but with local providers like Claude Desktop too.
Features
-
🔐 OAuth RFC 8414 and RFC 9728 compliant
- Support for
.well-known/oauth-protected-resourceand.well-known/oauth-authorization-serverendpoints - Both endpoints are configurable
- Support for
-
🛡️ Several JWT validation methods
- Delegated to external systems like Istio
- Locally validated based on JWKS URI and CEL expressions for claims
-
📋 Access logs can exclude or redact fields
-
🚀 Production-ready: Included full examples, Dockerfile, Helm Chart and GitHub Actions for CI
-
⚡ Super easy to extend: Production vitamins added to a good juice: mcp-go
Deployment
Production 🚀
Deploy to Kubernetes using the Helm chart located in the chart/ directory.
Our recommendations for remote servers in production:
-
Use a consistent hashring HTTP proxy in front of your MCP server when using MCP Sessions
-
Use an HTTP proxy that performs JWT validation in front of the MCP instead of using the included middleware:
- Protect your MCP exactly in the same way our middleware does, but with a super tested and scalable proxy instead
- Improve your development experience as you don’t have to do anything, just develop your MCP tools
-
Use an OIDP that:
- Cover Oauth Dynamic Client Registration
- Is able to custom your JWT claims.
👉 Keycloak covers everything you need in the Oauth2 side
👉 Istio covers all you need to validate the JWT in front of your MCP
👉 Hashrouter uses a configurable and truly consistent hashring to route the traffic, so your sessions are safe with it. It has been tested under heavy load in production scenarios
How to develop your MCP
Prerequisites
- Go 1.24+
Modify the code and run
Установка
npx mcp-remote http://localhost:8080/mcp --transport http-only --header Authorization: Bearer ${JWT} --header X-Validated-Jwt: ${JWT}Конфигурация
// file: claude_desktop_config.json
{
"mcpServers": {
"stdio": {
"command": "/home/example/mcp-forge/bin/mcp-forge-linux-amd64",
"args": [
"--config",
"/home/example/mcp-forge/docs/config-stdio.yaml"
]
}
}
}