Skip to content
VS Code

mcp context server for VS Code

io.github.alex-feel/mcp-context-server

An MCP server that provides persistent multimodal context storage for LLM agents.

client:VS Code transport:stdio runtime:pypi

Install mcp context server in VS Code

.vscode/mcp.json

{
  "inputs": [
    {
      "type": "promptString",
      "id": "log-level",
      "description": "LOG_LEVEL",
      "password": true
    },
    {
      "type": "promptString",
      "id": "storage-backend",
      "description": "STORAGE_BACKEND",
      "password": true
    },
    {
      "type": "promptString",
      "id": "max-image-size-mb",
      "description": "MAX_IMAGE_SIZE_MB",
      "password": true
    },
    {
      "type": "promptString",
      "id": "max-total-size-mb",
      "description": "MAX_TOTAL_SIZE_MB",
      "password": true
    },
    {
      "type": "promptString",
      "id": "db-path",
      "description": "DB_PATH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "pool-max-readers",
      "description": "POOL_MAX_READERS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "pool-max-writers",
      "description": "POOL_MAX_WRITERS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "pool-connection-timeout-s",
      "description": "POOL_CONNECTION_TIMEOUT_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "pool-idle-timeout-s",
      "description": "POOL_IDLE_TIMEOUT_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "pool-health-check-interval-s",
      "description": "POOL_HEALTH_CHECK_INTERVAL_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "retry-max-retries",
      "description": "RETRY_MAX_RETRIES",
      "password": true
    },
    {
      "type": "promptString",
      "id": "retry-base-delay-s",
      "description": "RETRY_BASE_DELAY_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "retry-max-delay-s",
      "description": "RETRY_MAX_DELAY_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "retry-jitter",
      "description": "RETRY_JITTER",
      "password": true
    },
    {
      "type": "promptString",
      "id": "retry-backoff-factor",
      "description": "RETRY_BACKOFF_FACTOR",
      "password": true
    },
    {
      "type": "promptString",
      "id": "sqlite-foreign-keys",
      "description": "SQLITE_FOREIGN_KEYS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "sqlite-journal-mode",
      "description": "SQLITE_JOURNAL_MODE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "sqlite-synchronous",
      "description": "SQLITE_SYNCHRONOUS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "sqlite-temp-store",
      "description": "SQLITE_TEMP_STORE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "sqlite-mmap-size",
      "description": "SQLITE_MMAP_SIZE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "sqlite-cache-size",
      "description": "SQLITE_CACHE_SIZE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "sqlite-page-size",
      "description": "SQLITE_PAGE_SIZE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "sqlite-wal-autocheckpoint",
      "description": "SQLITE_WAL_AUTOCHECKPOINT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "sqlite-busy-timeout-ms",
      "description": "SQLITE_BUSY_TIMEOUT_MS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "sqlite-wal-checkpoint",
      "description": "SQLITE_WAL_CHECKPOINT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "shutdown-timeout-s",
      "description": "SHUTDOWN_TIMEOUT_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "shutdown-timeout-test-s",
      "description": "SHUTDOWN_TIMEOUT_TEST_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "queue-timeout-s",
      "description": "QUEUE_TIMEOUT_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "queue-timeout-test-s",
      "description": "QUEUE_TIMEOUT_TEST_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "circuit-breaker-failure-threshold",
      "description": "CIRCUIT_BREAKER_FAILURE_THRESHOLD",
      "password": true
    },
    {
      "type": "promptString",
      "id": "circuit-breaker-recovery-timeout-s",
      "description": "CIRCUIT_BREAKER_RECOVERY_TIMEOUT_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "circuit-breaker-half-open-max-calls",
      "description": "CIRCUIT_BREAKER_HALF_OPEN_MAX_CALLS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-connection-string",
      "description": "POSTGRESQL_CONNECTION_STRING",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-host",
      "description": "POSTGRESQL_HOST",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-port",
      "description": "POSTGRESQL_PORT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-user",
      "description": "POSTGRESQL_USER",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-password",
      "description": "POSTGRESQL_PASSWORD",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-database",
      "description": "POSTGRESQL_DATABASE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-pool-min",
      "description": "POSTGRESQL_POOL_MIN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-pool-max",
      "description": "POSTGRESQL_POOL_MAX",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-pool-timeout-s",
      "description": "POSTGRESQL_POOL_TIMEOUT_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-command-timeout-s",
      "description": "POSTGRESQL_COMMAND_TIMEOUT_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-migration-timeout-s",
      "description": "POSTGRESQL_MIGRATION_TIMEOUT_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-max-inactive-lifetime-s",
      "description": "POSTGRESQL_MAX_INACTIVE_LIFETIME_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-max-queries",
      "description": "POSTGRESQL_MAX_QUERIES",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-tcp-keepalives-idle-s",
      "description": "POSTGRESQL_TCP_KEEPALIVES_IDLE_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-tcp-keepalives-interval-s",
      "description": "POSTGRESQL_TCP_KEEPALIVES_INTERVAL_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-tcp-keepalives-count",
      "description": "POSTGRESQL_TCP_KEEPALIVES_COUNT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-statement-cache-size",
      "description": "POSTGRESQL_STATEMENT_CACHE_SIZE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-max-cached-statement-lifetime-s",
      "description": "POSTGRESQL_MAX_CACHED_STATEMENT_LIFETIME_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-max-cacheable-statement-size",
      "description": "POSTGRESQL_MAX_CACHEABLE_STATEMENT_SIZE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-ssl-mode",
      "description": "POSTGRESQL_SSL_MODE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "postgresql-schema",
      "description": "POSTGRESQL_SCHEMA",
      "password": true
    },
    {
      "type": "promptString",
      "id": "enable-semantic-search",
      "description": "ENABLE_SEMANTIC_SEARCH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "enable-embedding-generation",
      "description": "ENABLE_EMBEDDING_GENERATION",
      "password": true
    },
    {
      "type": "promptString",
      "id": "ollama-host",
      "description": "OLLAMA_HOST",
      "password": true
    },
    {
      "type": "promptString",
      "id": "ollama-auto-pull",
      "description": "OLLAMA_AUTO_PULL",
      "password": true
    },
    {
      "type": "promptString",
      "id": "ollama-pull-timeout-s",
      "description": "OLLAMA_PULL_TIMEOUT_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "embedding-ollama-truncate",
      "description": "EMBEDDING_OLLAMA_TRUNCATE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "embedding-ollama-num-ctx",
      "description": "EMBEDDING_OLLAMA_NUM_CTX",
      "password": true
    },
    {
      "type": "promptString",
      "id": "embedding-model",
      "description": "EMBEDDING_MODEL",
      "password": true
    },
    {
      "type": "promptString",
      "id": "embedding-dim",
      "description": "EMBEDDING_DIM",
      "password": true
    },
    {
      "type": "promptString",
      "id": "embedding-timeout-s",
      "description": "EMBEDDING_TIMEOUT_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "embedding-retry-max-attempts",
      "description": "EMBEDDING_RETRY_MAX_ATTEMPTS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "embedding-retry-base-delay-s",
      "description": "EMBEDDING_RETRY_BASE_DELAY_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "embedding-max-concurrent",
      "description": "EMBEDDING_MAX_CONCURRENT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "enable-summary-generation",
      "description": "ENABLE_SUMMARY_GENERATION",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-provider",
      "description": "SUMMARY_PROVIDER",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-model",
      "description": "SUMMARY_MODEL",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-max-tokens",
      "description": "SUMMARY_MAX_TOKENS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-timeout-s",
      "description": "SUMMARY_TIMEOUT_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-retry-max-attempts",
      "description": "SUMMARY_RETRY_MAX_ATTEMPTS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-retry-base-delay-s",
      "description": "SUMMARY_RETRY_BASE_DELAY_S",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-max-concurrent",
      "description": "SUMMARY_MAX_CONCURRENT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-prompt",
      "description": "SUMMARY_PROMPT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-min-content-length",
      "description": "SUMMARY_MIN_CONTENT_LENGTH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-ollama-num-ctx",
      "description": "SUMMARY_OLLAMA_NUM_CTX",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-ollama-truncate",
      "description": "SUMMARY_OLLAMA_TRUNCATE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-openai-reasoning-effort",
      "description": "SUMMARY_OPENAI_REASONING_EFFORT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "summary-anthropic-effort",
      "description": "SUMMARY_ANTHROPIC_EFFORT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "anthropic-api-key",
      "description": "ANTHROPIC_API_KEY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "enable-fts",
      "description": "ENABLE_FTS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "fts-language",
      "description": "FTS_LANGUAGE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "fts-rerank-window-size",
      "description": "FTS_RERANK_WINDOW_SIZE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "fts-rerank-gap-merge",
      "description": "FTS_RERANK_GAP_MERGE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "enable-hybrid-search",
      "description": "ENABLE_HYBRID_SEARCH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "hybrid-rrf-k",
      "description": "HYBRID_RRF_K",
      "password": true
    },
    {
      "type": "promptString",
      "id": "hybrid-rrf-overfetch",
      "description": "HYBRID_RRF_OVERFETCH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "hybrid-fts-or-threshold",
      "description": "HYBRID_FTS_OR_THRESHOLD",
      "password": true
    },
    {
      "type": "promptString",
      "id": "search-default-sort-by",
      "description": "SEARCH_DEFAULT_SORT_BY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "search-truncation-length",
      "description": "SEARCH_TRUNCATION_LENGTH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "enable-chunking",
      "description": "ENABLE_CHUNKING",
      "password": true
    },
    {
      "type": "promptString",
      "id": "chunk-size",
      "description": "CHUNK_SIZE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "chunk-overlap",
      "description": "CHUNK_OVERLAP",
      "password": true
    },
    {
      "type": "promptString",
      "id": "chunk-aggregation",
      "description": "CHUNK_AGGREGATION",
      "password": true
    },
    {
      "type": "promptString",
      "id": "chunk-dedup-overfetch",
      "description": "CHUNK_DEDUP_OVERFETCH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "enable-reranking",
      "description": "ENABLE_RERANKING",
      "password": true
    },
    {
      "type": "promptString",
      "id": "reranking-provider",
      "description": "RERANKING_PROVIDER",
      "password": true
    },
    {
      "type": "promptString",
      "id": "reranking-model",
      "description": "RERANKING_MODEL",
      "password": true
    },
    {
      "type": "promptString",
      "id": "reranking-max-length",
      "description": "RERANKING_MAX_LENGTH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "reranking-overfetch",
      "description": "RERANKING_OVERFETCH",
      "password": true
    },
    {
      "type": "promptString",
      "id": "reranking-cache-dir",
      "description": "RERANKING_CACHE_DIR",
      "password": true
    },
    {
      "type": "promptString",
      "id": "reranking-chars-per-token",
      "description": "RERANKING_CHARS_PER_TOKEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "reranking-intra-op-threads",
      "description": "RERANKING_INTRA_OP_THREADS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "reranking-cpu-mem-arena",
      "description": "RERANKING_CPU_MEM_ARENA",
      "password": true
    },
    {
      "type": "promptString",
      "id": "reranking-batch-size",
      "description": "RERANKING_BATCH_SIZE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "embedding-provider",
      "description": "EMBEDDING_PROVIDER",
      "password": true
    },
    {
      "type": "promptString",
      "id": "openai-api-key",
      "description": "OPENAI_API_KEY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "openai-api-base",
      "description": "OPENAI_API_BASE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "openai-organization",
      "description": "OPENAI_ORGANIZATION",
      "password": true
    },
    {
      "type": "promptString",
      "id": "azure-openai-api-key",
      "description": "AZURE_OPENAI_API_KEY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "azure-openai-endpoint",
      "description": "AZURE_OPENAI_ENDPOINT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "azure-openai-embedding-deployment-name",
      "description": "AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME",
      "password": true
    },
    {
      "type": "promptString",
      "id": "azure-openai-api-version",
      "description": "AZURE_OPENAI_API_VERSION",
      "password": true
    },
    {
      "type": "promptString",
      "id": "huggingfacehub-api-token",
      "description": "HUGGINGFACEHUB_API_TOKEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "voyage-api-key",
      "description": "VOYAGE_API_KEY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "voyage-truncation",
      "description": "VOYAGE_TRUNCATION",
      "password": true
    },
    {
      "type": "promptString",
      "id": "voyage-batch-size",
      "description": "VOYAGE_BATCH_SIZE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "langsmith-tracing",
      "description": "LANGSMITH_TRACING",
      "password": true
    },
    {
      "type": "promptString",
      "id": "langsmith-api-key",
      "description": "LANGSMITH_API_KEY",
      "password": true
    },
    {
      "type": "promptString",
      "id": "langsmith-project",
      "description": "LANGSMITH_PROJECT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "langsmith-endpoint",
      "description": "LANGSMITH_ENDPOINT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "metadata-indexed-fields",
      "description": "METADATA_INDEXED_FIELDS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "metadata-index-sync-mode",
      "description": "METADATA_INDEX_SYNC_MODE",
      "password": true
    },
    {
      "type": "promptString",
      "id": "mcp-transport",
      "description": "MCP_TRANSPORT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "fastmcp-host",
      "description": "FASTMCP_HOST",
      "password": true
    },
    {
      "type": "promptString",
      "id": "fastmcp-port",
      "description": "FASTMCP_PORT",
      "password": true
    },
    {
      "type": "promptString",
      "id": "fastmcp-stateless-http",
      "description": "FASTMCP_STATELESS_HTTP",
      "password": true
    },
    {
      "type": "promptString",
      "id": "disabled-tools",
      "description": "DISABLED_TOOLS",
      "password": true
    },
    {
      "type": "promptString",
      "id": "mcp-auth-token",
      "description": "MCP_AUTH_TOKEN",
      "password": true
    },
    {
      "type": "promptString",
      "id": "mcp-auth-client-id",
      "description": "MCP_AUTH_CLIENT_ID",
      "password": true
    },
    {
      "type": "promptString",
      "id": "mcp-auth-provider",
      "description": "MCP_AUTH_PROVIDER",
      "password": true
    },
    {
      "type": "promptString",
      "id": "mcp-server-instructions",
      "description": "MCP_SERVER_INSTRUCTIONS",
      "password": true
    }
  ],
  "servers": {
    "mcp-context-server": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "mcp-context-server"
      ],
      "env": {
        "LOG_LEVEL": "${input:log-level}",
        "STORAGE_BACKEND": "${input:storage-backend}",
        "MAX_IMAGE_SIZE_MB": "${input:max-image-size-mb}",
        "MAX_TOTAL_SIZE_MB": "${input:max-total-size-mb}",
        "DB_PATH": "${input:db-path}",
        "POOL_MAX_READERS": "${input:pool-max-readers}",
        "POOL_MAX_WRITERS": "${input:pool-max-writers}",
        "POOL_CONNECTION_TIMEOUT_S": "${input:pool-connection-timeout-s}",
        "POOL_IDLE_TIMEOUT_S": "${input:pool-idle-timeout-s}",
        "POOL_HEALTH_CHECK_INTERVAL_S": "${input:pool-health-check-interval-s}",
        "RETRY_MAX_RETRIES": "${input:retry-max-retries}",
        "RETRY_BASE_DELAY_S": "${input:retry-base-delay-s}",
        "RETRY_MAX_DELAY_S": "${input:retry-max-delay-s}",
        "RETRY_JITTER": "${input:retry-jitter}",
        "RETRY_BACKOFF_FACTOR": "${input:retry-backoff-factor}",
        "SQLITE_FOREIGN_KEYS": "${input:sqlite-foreign-keys}",
        "SQLITE_JOURNAL_MODE": "${input:sqlite-journal-mode}",
        "SQLITE_SYNCHRONOUS": "${input:sqlite-synchronous}",
        "SQLITE_TEMP_STORE": "${input:sqlite-temp-store}",
        "SQLITE_MMAP_SIZE": "${input:sqlite-mmap-size}",
        "SQLITE_CACHE_SIZE": "${input:sqlite-cache-size}",
        "SQLITE_PAGE_SIZE": "${input:sqlite-page-size}",
        "SQLITE_WAL_AUTOCHECKPOINT": "${input:sqlite-wal-autocheckpoint}",
        "SQLITE_BUSY_TIMEOUT_MS": "${input:sqlite-busy-timeout-ms}",
        "SQLITE_WAL_CHECKPOINT": "${input:sqlite-wal-checkpoint}",
        "SHUTDOWN_TIMEOUT_S": "${input:shutdown-timeout-s}",
        "SHUTDOWN_TIMEOUT_TEST_S": "${input:shutdown-timeout-test-s}",
        "QUEUE_TIMEOUT_S": "${input:queue-timeout-s}",
        "QUEUE_TIMEOUT_TEST_S": "${input:queue-timeout-test-s}",
        "CIRCUIT_BREAKER_FAILURE_THRESHOLD": "${input:circuit-breaker-failure-threshold}",
        "CIRCUIT_BREAKER_RECOVERY_TIMEOUT_S": "${input:circuit-breaker-recovery-timeout-s}",
        "CIRCUIT_BREAKER_HALF_OPEN_MAX_CALLS": "${input:circuit-breaker-half-open-max-calls}",
        "POSTGRESQL_CONNECTION_STRING": "${input:postgresql-connection-string}",
        "POSTGRESQL_HOST": "${input:postgresql-host}",
        "POSTGRESQL_PORT": "${input:postgresql-port}",
        "POSTGRESQL_USER": "${input:postgresql-user}",
        "POSTGRESQL_PASSWORD": "${input:postgresql-password}",
        "POSTGRESQL_DATABASE": "${input:postgresql-database}",
        "POSTGRESQL_POOL_MIN": "${input:postgresql-pool-min}",
        "POSTGRESQL_POOL_MAX": "${input:postgresql-pool-max}",
        "POSTGRESQL_POOL_TIMEOUT_S": "${input:postgresql-pool-timeout-s}",
        "POSTGRESQL_COMMAND_TIMEOUT_S": "${input:postgresql-command-timeout-s}",
        "POSTGRESQL_MIGRATION_TIMEOUT_S": "${input:postgresql-migration-timeout-s}",
        "POSTGRESQL_MAX_INACTIVE_LIFETIME_S": "${input:postgresql-max-inactive-lifetime-s}",
        "POSTGRESQL_MAX_QUERIES": "${input:postgresql-max-queries}",
        "POSTGRESQL_TCP_KEEPALIVES_IDLE_S": "${input:postgresql-tcp-keepalives-idle-s}",
        "POSTGRESQL_TCP_KEEPALIVES_INTERVAL_S": "${input:postgresql-tcp-keepalives-interval-s}",
        "POSTGRESQL_TCP_KEEPALIVES_COUNT": "${input:postgresql-tcp-keepalives-count}",
        "POSTGRESQL_STATEMENT_CACHE_SIZE": "${input:postgresql-statement-cache-size}",
        "POSTGRESQL_MAX_CACHED_STATEMENT_LIFETIME_S": "${input:postgresql-max-cached-statement-lifetime-s}",
        "POSTGRESQL_MAX_CACHEABLE_STATEMENT_SIZE": "${input:postgresql-max-cacheable-statement-size}",
        "POSTGRESQL_SSL_MODE": "${input:postgresql-ssl-mode}",
        "POSTGRESQL_SCHEMA": "${input:postgresql-schema}",
        "ENABLE_SEMANTIC_SEARCH": "${input:enable-semantic-search}",
        "ENABLE_EMBEDDING_GENERATION": "${input:enable-embedding-generation}",
        "OLLAMA_HOST": "${input:ollama-host}",
        "OLLAMA_AUTO_PULL": "${input:ollama-auto-pull}",
        "OLLAMA_PULL_TIMEOUT_S": "${input:ollama-pull-timeout-s}",
        "EMBEDDING_OLLAMA_TRUNCATE": "${input:embedding-ollama-truncate}",
        "EMBEDDING_OLLAMA_NUM_CTX": "${input:embedding-ollama-num-ctx}",
        "EMBEDDING_MODEL": "${input:embedding-model}",
        "EMBEDDING_DIM": "${input:embedding-dim}",
        "EMBEDDING_TIMEOUT_S": "${input:embedding-timeout-s}",
        "EMBEDDING_RETRY_MAX_ATTEMPTS": "${input:embedding-retry-max-attempts}",
        "EMBEDDING_RETRY_BASE_DELAY_S": "${input:embedding-retry-base-delay-s}",
        "EMBEDDING_MAX_CONCURRENT": "${input:embedding-max-concurrent}",
        "ENABLE_SUMMARY_GENERATION": "${input:enable-summary-generation}",
        "SUMMARY_PROVIDER": "${input:summary-provider}",
        "SUMMARY_MODEL": "${input:summary-model}",
        "SUMMARY_MAX_TOKENS": "${input:summary-max-tokens}",
        "SUMMARY_TIMEOUT_S": "${input:summary-timeout-s}",
        "SUMMARY_RETRY_MAX_ATTEMPTS": "${input:summary-retry-max-attempts}",
        "SUMMARY_RETRY_BASE_DELAY_S": "${input:summary-retry-base-delay-s}",
        "SUMMARY_MAX_CONCURRENT": "${input:summary-max-concurrent}",
        "SUMMARY_PROMPT": "${input:summary-prompt}",
        "SUMMARY_MIN_CONTENT_LENGTH": "${input:summary-min-content-length}",
        "SUMMARY_OLLAMA_NUM_CTX": "${input:summary-ollama-num-ctx}",
        "SUMMARY_OLLAMA_TRUNCATE": "${input:summary-ollama-truncate}",
        "SUMMARY_OPENAI_REASONING_EFFORT": "${input:summary-openai-reasoning-effort}",
        "SUMMARY_ANTHROPIC_EFFORT": "${input:summary-anthropic-effort}",
        "ANTHROPIC_API_KEY": "${input:anthropic-api-key}",
        "ENABLE_FTS": "${input:enable-fts}",
        "FTS_LANGUAGE": "${input:fts-language}",
        "FTS_RERANK_WINDOW_SIZE": "${input:fts-rerank-window-size}",
        "FTS_RERANK_GAP_MERGE": "${input:fts-rerank-gap-merge}",
        "ENABLE_HYBRID_SEARCH": "${input:enable-hybrid-search}",
        "HYBRID_RRF_K": "${input:hybrid-rrf-k}",
        "HYBRID_RRF_OVERFETCH": "${input:hybrid-rrf-overfetch}",
        "HYBRID_FTS_OR_THRESHOLD": "${input:hybrid-fts-or-threshold}",
        "SEARCH_DEFAULT_SORT_BY": "${input:search-default-sort-by}",
        "SEARCH_TRUNCATION_LENGTH": "${input:search-truncation-length}",
        "ENABLE_CHUNKING": "${input:enable-chunking}",
        "CHUNK_SIZE": "${input:chunk-size}",
        "CHUNK_OVERLAP": "${input:chunk-overlap}",
        "CHUNK_AGGREGATION": "${input:chunk-aggregation}",
        "CHUNK_DEDUP_OVERFETCH": "${input:chunk-dedup-overfetch}",
        "ENABLE_RERANKING": "${input:enable-reranking}",
        "RERANKING_PROVIDER": "${input:reranking-provider}",
        "RERANKING_MODEL": "${input:reranking-model}",
        "RERANKING_MAX_LENGTH": "${input:reranking-max-length}",
        "RERANKING_OVERFETCH": "${input:reranking-overfetch}",
        "RERANKING_CACHE_DIR": "${input:reranking-cache-dir}",
        "RERANKING_CHARS_PER_TOKEN": "${input:reranking-chars-per-token}",
        "RERANKING_INTRA_OP_THREADS": "${input:reranking-intra-op-threads}",
        "RERANKING_CPU_MEM_ARENA": "${input:reranking-cpu-mem-arena}",
        "RERANKING_BATCH_SIZE": "${input:reranking-batch-size}",
        "EMBEDDING_PROVIDER": "${input:embedding-provider}",
        "OPENAI_API_KEY": "${input:openai-api-key}",
        "OPENAI_API_BASE": "${input:openai-api-base}",
        "OPENAI_ORGANIZATION": "${input:openai-organization}",
        "AZURE_OPENAI_API_KEY": "${input:azure-openai-api-key}",
        "AZURE_OPENAI_ENDPOINT": "${input:azure-openai-endpoint}",
        "AZURE_OPENAI_EMBEDDING_DEPLOYMENT_NAME": "${input:azure-openai-embedding-deployment-name}",
        "AZURE_OPENAI_API_VERSION": "${input:azure-openai-api-version}",
        "HUGGINGFACEHUB_API_TOKEN": "${input:huggingfacehub-api-token}",
        "VOYAGE_API_KEY": "${input:voyage-api-key}",
        "VOYAGE_TRUNCATION": "${input:voyage-truncation}",
        "VOYAGE_BATCH_SIZE": "${input:voyage-batch-size}",
        "LANGSMITH_TRACING": "${input:langsmith-tracing}",
        "LANGSMITH_API_KEY": "${input:langsmith-api-key}",
        "LANGSMITH_PROJECT": "${input:langsmith-project}",
        "LANGSMITH_ENDPOINT": "${input:langsmith-endpoint}",
        "METADATA_INDEXED_FIELDS": "${input:metadata-indexed-fields}",
        "METADATA_INDEX_SYNC_MODE": "${input:metadata-index-sync-mode}",
        "MCP_TRANSPORT": "${input:mcp-transport}",
        "FASTMCP_HOST": "${input:fastmcp-host}",
        "FASTMCP_PORT": "${input:fastmcp-port}",
        "FASTMCP_STATELESS_HTTP": "${input:fastmcp-stateless-http}",
        "DISABLED_TOOLS": "${input:disabled-tools}",
        "MCP_AUTH_TOKEN": "${input:mcp-auth-token}",
        "MCP_AUTH_CLIENT_ID": "${input:mcp-auth-client-id}",
        "MCP_AUTH_PROVIDER": "${input:mcp-auth-provider}",
        "MCP_SERVER_INSTRUCTIONS": "${input:mcp-server-instructions}"
      }
    }
  }
}

VS Code prompts for each input the first time the server starts, so no secret is written to the file. VS Code docs

mcp context server in other clients