Skip to main content
Glama

Unleash MCP (Feature Toggle)

flags.ts1.74 kB
/** * Feature flag resources for Unleash MCP Server */ import { ResourceTemplate } from "@modelcontextprotocol/sdk/server/mcp.js"; import { getAllFeatureFlags } from "../unleash/get-all-feature-flags.js"; import { getFeatureFlag } from "../unleash/get-feature-flag.js"; /** * Resource handler for listing all feature flags */ export async function handleFlagsList(uri: URL) { try { const features = await getAllFeatureFlags(); return { contents: [{ uri: uri.href, text: JSON.stringify(features, null, 2) }] }; } catch (error: any) { return { contents: [{ uri: uri.href, text: JSON.stringify({ error: error.message }) }] }; } } /** * Resource handler for getting specific feature flag details */ export async function handleFlagDetails(uri: URL, { flagName }: { flagName: string }) { try { const feature = await getFeatureFlag(flagName); if (!feature) { return { contents: [{ uri: uri.href, text: JSON.stringify({ error: `Feature flag '${flagName}' not found` }) }] }; } return { contents: [{ uri: uri.href, text: JSON.stringify(feature, null, 2) }] }; } catch (error: any) { return { contents: [{ uri: uri.href, text: JSON.stringify({ error: error.message }) }] }; } } /** * Feature flag resources for registration */ export const flagResources = [ { name: "flags-list", template: "unleash://flags", handler: handleFlagsList }, { name: "flag-details", template: new ResourceTemplate("unleash://flags/{flagName}", { list: undefined }), handler: handleFlagDetails } ];

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cuongtl1992/unleash-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server