Skip to content

Nested TypeScript autocomplete is missing inside @FrontMcp decorator config #282

@alexmercerpo

Description

@alexmercerpo

Summary

When using @frontmcp/sdk with the decorator-style API in TypeScript, autocomplete works for the first level of the @FrontMcp(...) config object, but nested objects do not provide proper autocomplete.

For example, I can get completion for top-level properties like auth, but once I enter auth: { ... }, TypeScript/IDE autocomplete is missing or incomplete.

Example

import 'reflect-metadata';
import { FrontMcp, LogLevel } from '@frontmcp/sdk';
import { CalcApp } from './calc.app';

@FrontMcp({
  info: { name: 'Demo 🚀', version: '0.1.0' },
  apps: [CalcApp],
  logging: {
    level: LogLevel.Debug,
  },
  auth: {
    // expected nested autocomplete here, but it is missing/incomplete
  },
})
export default class Server {}

Actual behavior

  • Top-level autocomplete works for @FrontMcp({...})
  • Nested autocomplete inside objects like auth is missing or much weaker than expected

Expected behavior

Nested config objects should preserve full IntelliSense / autocomplete, for example inside:

  • auth
  • http
  • pubsub
  • pagination
  • elicitation
  • other nested config sections

Notes

This makes the decorator-style API harder to use, because the user can discover the top-level keys but not the inner structure.

It feels like the exposed decorator typing is not preserving nested IntelliSense well enough in editor usage.

Suggestion

One possible improvement would be to expose more explicit public interfaces/types for the config objects and derive schema validation from those types, rather than relying on schema-first inference only.

That may improve editor usability and make nested configuration autocomplete more predictable.

Metadata

Metadata

Labels

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions