hermes-agent/tests/hermes_cli
Jonathan Barket 7fe6782a25 feat(tools): add "no_mcp" sentinel to exclude MCP servers per platform
Currently, MCP servers are included on all platforms by default. If a
platform's toolset list does not explicitly name any MCP servers, every
globally enabled MCP server is injected. There is no way to opt a
platform out of MCP servers entirely.

This matters for the API server platform when used as an execution
backend — each spawned agent session gets the full MCP tool schema
injected into its system prompt, dramatically inflating token usage
(e.g. 57K tokens vs 9K without MCP tools) and slowing response times.

Add a "no_mcp" sentinel value for platform_toolsets. When present in a
platform's toolset list, all MCP servers are excluded for that platform.
Other platforms are unaffected.

Usage in config.yaml:

    platform_toolsets:
      api_server:
        - terminal
        - file
        - web
        - no_mcp    # exclude all MCP servers

The sentinel is filtered out of the final toolset — it does not appear
as an actual toolset name.
2026-04-07 18:00:01 -07:00
..
__init__.py
test_anthropic_oauth_flow.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_anthropic_provider_persistence.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_api_key_providers.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_argparse_flag_propagation.py fix: --yolo and other flags silently dropped when placed before 'chat' subcommand (#5145) 2026-04-04 16:55:13 -07:00
test_atomic_json_write.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_atomic_yaml_write.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_auth_codex_provider.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_auth_commands.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_auth_nous_provider.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_banner_git_state.py fix: CLI/UX batch — ChatConsole errors, curses scroll, skin-aware banner, git state banner (#5974) 2026-04-07 17:59:42 -07:00
test_banner_skills.py
test_banner.py
test_chat_skills_flag.py
test_claw.py
test_cmd_update.py
test_coalesce_session_args.py
test_codex_models.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_commands.py feat(discord): register skills as native slash commands via shared gateway logic (#5603) 2026-04-06 12:09:36 -07:00
test_config_env_expansion.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_config_validation.py feat: config structure validation — detect malformed YAML at startup (#5426) 2026-04-05 23:31:20 -07:00
test_config.py fix: hermes auth remove now clears env-seeded credentials permanently (#5285) 2026-04-05 12:00:53 -07:00
test_copilot_auth.py
test_cron.py
test_doctor.py
test_env_loader.py
test_external_credential_detection.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_gateway_linger.py fix(cli): add missing subprocess.run() timeouts in gateway CLI (#5424) 2026-04-05 22:41:42 -07:00
test_gateway_runtime_health.py
test_gateway_service.py fix: add _profile_arg tests + move STT language to config.yaml 2026-04-07 17:59:16 -07:00
test_gateway.py fix(cli): add missing subprocess.run() timeouts in gateway CLI (#5424) 2026-04-05 22:41:42 -07:00
test_gemini_provider.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_launcher.py
test_logs.py feat: centralized logging, instrumentation, hermes logs CLI, gateway noise fix (#5430) 2026-04-06 00:08:20 -07:00
test_managed_installs.py
test_mcp_config.py
test_mcp_tools_config.py
test_model_normalize.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_model_provider_persistence.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_model_validation.py
test_models.py fix(nous): add 3-minute TTL cache to free-tier detection 2026-04-07 09:30:26 -07:00
test_nous_subscription.py feat: switch managed browser provider from Browserbase to Browser Use (#5750) 2026-04-07 08:40:22 -04:00
test_ollama_cloud_auth.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_path_completion.py
test_placeholder_usage.py
test_plugin_cli_registration.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_plugins_cmd.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_plugins.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_profile_export_credentials.py
test_profiles.py
test_runtime_provider_resolution.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_session_browse.py
test_sessions_delete.py
test_set_config_value.py
test_setup_matrix_e2ee.py fix: add missing shutil import for Matrix E2EE setup 2026-04-05 11:07:47 -07:00
test_setup_model_provider.py
test_setup_model_selection.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_setup_noninteractive.py
test_setup_openclaw_migration.py fix: repair 57 failing CI tests across 14 files (#5823) 2026-04-07 09:58:45 -07:00
test_setup_prompt_menus.py
test_setup.py
test_skills_config.py fix: respect per-platform disabled skills in Telegram menu and gateway dispatch (#4799) 2026-04-03 10:10:53 -07:00
test_skills_hub.py
test_skills_install_flags.py
test_skills_skip_confirm.py
test_skills_subparser.py
test_skin_engine.py
test_status_model_provider.py feat: switch managed browser provider from Browserbase to Browser Use (#5750) 2026-04-07 08:40:22 -04:00
test_status.py
test_subprocess_timeouts.py
test_tool_token_estimation.py
test_tools_config.py feat(tools): add "no_mcp" sentinel to exclude MCP servers per platform 2026-04-07 18:00:01 -07:00
test_tools_disable_enable.py
test_update_autostash.py
test_update_check.py refactor(tests): re-architect tests + fix CI failures (#5946) 2026-04-07 17:19:07 -07:00
test_update_gateway_restart.py refactor: simplify _get_service_pids — dedupe systemd scopes, fix self-import, harden launchd parsing 2026-04-06 00:09:06 -07:00
test_webhook_cli.py