Featurely Docs

MCP Server

Give AI assistants full knowledge of all Featurely SDK packages via the Model Context Protocol.

featurely-mcp

featurely-mcp is a Model Context Protocol server that gives AI editors — Claude, Cursor, Windsurf, VS Code Copilot — complete, accurate knowledge of all Featurely SDK packages without leaving your editor.

The MCP server is not installed as a local npm dependency. It runs via npx and is registered in your editor's config file as featurely-docs. Keep any existing featurely entry that points at https://www.featurely.no/api/mcp — that name belongs to the remote Featurely MCP.

Quick setup via CLI

The fastest way to configure the MCP server is with the Featurely CLI:

npx featurely-cli@latest mcp setup

This detects installed editors and writes the correct config automatically. The server is registered as featurely-docs (a legacy featurely entry whose command runs featurely-mcp is removed and replaced by that featurely-docs entry). An existing featurely entry for https://www.featurely.no/api/mcp (the hosted MCP) is left unchanged, as are other servers. Running setup again updates featurely-docs in place and does not create a duplicate. Supported editors: Claude Desktop, Cursor, VS Code Copilot, Windsurf.

Manual configuration

Claude Desktop

Edit ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "featurely-docs": {
      "command": "npx",
      "args": ["-y", "featurely-mcp@latest"]
    }
  }
}

Cursor

.cursor/mcp.json (project-level) or ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "featurely-docs": {
      "command": "npx",
      "args": ["-y", "featurely-mcp@latest"]
    }
  }
}

Windsurf

~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "featurely-docs": {
      "command": "npx",
      "args": ["-y", "featurely-mcp@latest"]
    }
  }
}

VS Code (Copilot)

.vscode/mcp.json:

{
  "servers": {
    "featurely-docs": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "featurely-mcp@latest"]
    }
  }
}

After saving the config, restart your editor.

Available tools

Once connected, your AI assistant can call five tools:

ToolDescription
list_packagesList all Featurely SDK packages with a short description and install command
get_package_docsComplete docs for a package: overview, installation, full API reference, and examples
get_installation_guideInstallation and quick-start guide for a specific package
get_api_referenceFull API reference — constructor config, all methods, all types
get_code_examplesRunnable code examples including React and Next.js integrations

All tools accept a package parameter:

ValuePackage
"error-tracker"featurely-error-tracker
"feature-reporter"featurely-feature-reporter
"site-manager"featurely-site-manager
"i18n"featurely-i18n
"logger"featurely-logger

Requirements

  • Node.js 18 or later
  • npx (included with Node.js)

The package is run via npx -y featurely-mcp@latest, so no global installation is needed. That always pulls the most recent version.

Hosted MCP and internal

The docs server above does not write to your project. The hosted MCP at https://www.featurely.no/api/mcp does. Its create_feature and update_feature_status tools accept an optional internal boolean.

Toolinternal
create_featureOptional. Features and bugs default to true when projectId is the Featurely platform project (iGBUmKRzcovPHJAP1Z6Y). Every other project defaults to false. An explicit true or false always wins. Widget and SDK submissions are not this tool; they stay public.
update_feature_statusOptional. Set false to show the item on the public board, feeds, and public APIs again. Set true to hide it. Omit the field to leave the flag unchanged.

get_api_reference for feature-reporter documents the same internal field on POST /api/public/v1/features. Public reads never return internal items. A direct request for one returns 404.

Hosted MCP and translations

The hosted MCP can read and write translation keys, so an AI assistant can add keys and translate them without opening the dashboard.

ToolScopeDescription
list_translation_keystranslations:readLists keys with default text and per-locale translations, plus the project's default and supported locales. Filter with namespace, query, or missingLocale to find keys that still need a translation for one locale. Paged with limit (max 200) and offset.
upsert_translation_keystranslations:writeCreates keys and adds translations in bulk (max 200 keys per call).

upsert_translation_keys takes projectId, keys and an optional overwrite flag. Each item in keys has:

FieldRequiredDescription
keyYesLetters, digits, dots, underscores and hyphens, max 200 characters
defaultTextYesThe source text, max 5000 characters
namespace, categoryNoNamespace for lazy-loaded bundles, and a free-form category
translationsNoLocale code to text, for example { "no": "Hjem", "de": "Startseite" }

Missing keys are created. Existing keys are only filled in: default text, namespace, category and locale values that are already set are kept, unless overwrite is true. Locale values are merged per locale, so sending one locale never removes another. The result lists the keys that were created, updated and unchanged, and any unsupportedLocales that are not enabled for the project. Those are still stored, so enable them under Translations in the dashboard to serve them.

Existing connections do not have the translation scopes yet. Reconnect the MCP server and choose read or write access again to enable these tools.