¡Los SDKs de Python y Node.js ya están disponibles!
Plug-and-play autenticación para servidores MCP
MCP Auth te proporciona todo lo que necesitas para añadir autenticación lista para producción a tu servidor MCP. Sin semanas dedicadas a leer especificaciones o conectar componentes.
¿Por qué MCP Auth?
Salta las especificaciones. Salta el código repetitivo. Solo autenticación.
La especificación MCP requiere OAuth 2.1 y otros RFCs, proporciona una base sólida para la autenticación. Con MCP Auth, puedes ir más allá conectándote a un proveedor de confianza con solo unas pocas líneas de código.
Conéctate a cualquier proveedor. Es agnóstico al proveedor.
MCP Auth funciona con cualquier proveedor compatible con OAuth 2.1 o OpenID Connect. Elige uno de nuestra lista verificada o usa la herramienta para comprobar si tu proveedor es compatible.
Vamos a desplegar rápido y ser seguros.
¿Listo para producción? Te tenemos cubierto. MCP Auth sigue la especificación y las mejores prácticas, para que puedas lanzar con confianza.
Realmente pueden ser solo unas pocas líneas de código
- Python
- Node.js
mcp = FastMCP("MyMCPServer")
resource_identifier = "https://api.example.com"
mcp_auth = MCPAuth(
protected_resources=ResourceServerConfig(
metadata=ResourceServerMetadata(
resource=resource_identifier,
authorization_servers=[fetch_server_config('<auth-server-url>', AuthServerType.OIDC)],
scopes_supported=["read", "write"],
)
)
)
app = Starlette(
routes=[
*mcp_auth.resource_metadata_router().routes,
Mount('/', app=mcp.sse_app(), middleware=[Middleware(
mcp_auth.bearer_auth_middleware("jwt",
resource=resource_identifier,
audience=resource_identifier,
required_scopes=["read", "write"]
)
)])
]
)
@mcp.tool()
def whoami():
return mcp_auth.auth_info.claims
const server = new McpServer(/* ... */);
const resourceIdentifier = 'https://api.example.com';
const mcpAuth = new MCPAuth({
protectedResources: {
metadata: {
resource: resourceIdentifier,
authorizationServers: [await fetchServerConfig('<auth-server-url>', { type: 'oidc' })],
scopesSupported: ['read', 'write'],
}
}
});
const app = express();
app.use(mcpAuth.protectedResourceMetadataRouter());
app.use(mcpAuth.bearerAuth('jwt', {
resource: resourceIdentifier,
audience: resourceIdentifier,
requiredScopes: ['read', 'write']
}));
server.tool('whoami', ({ authInfo }) => {
return authInfo.claims;
});
¿Qué hay de los SDKs de MCP?
Los SDKs oficiales de MCP (Python, Node.js, etc.) son un excelente punto de partida. MCP Auth los utiliza en todos los tutoriales y puede servir como un fuerte complemento para tu configuración existente.
MCP Auth cierra la brecha entre "funciona" y "es seguro, escalable y mantenible" para la autenticación y autorización.
Está diseñado para trabajar junto con los SDKs ofreciendo:
- Soporte JWT de primera clase
- Herramientas agnósticas al proveedor
- Guías paso a paso para varios proveedores de identidad
Además, nos mantenemos al día con los cambios en la especificación MCP y los SDKs, para que tú no tengas que hacerlo.