hermes-agent/tools
teknium1 64ff8f065b feat(mcp): add HTTP transport, reconnection, security hardening
Upgrades the MCP client implementation from PR #291 with:

- HTTP/Streamable HTTP transport: support 'url' key in config for remote
  MCP servers (Notion, Slack, Sentry, Supabase, etc.)
- Automatic reconnection with exponential backoff (1s-60s, 5 retries)
  when a server connection drops unexpectedly
- Environment variable filtering: only pass safe vars (PATH, HOME, etc.)
  plus user-specified env to stdio subprocesses (prevents secret leaks)
- Credential stripping: sanitize error messages before returning to the
  LLM (strips GitHub PATs, OpenAI keys, Bearer tokens, etc.)
- Configurable per-server timeouts: 'timeout' and 'connect_timeout' keys
- Fix shutdown race condition in servers_snapshot variable scoping

Test coverage: 50 tests (up from 30), including new tests for env
filtering, credential sanitization, HTTP config detection, reconnection
logic, and configurable timeouts.

All 1162 tests pass (1162 passed, 3 skipped, 0 failed).
2026-03-02 18:40:03 -08:00
..
environments Merge PR #219: fix: guard POSIX-only process functions for Windows compatibility 2026-03-02 17:07:49 -08:00
__init__.py refactor: streamline cron job handling and update CLI commands 2026-02-21 16:21:19 -08:00
approval.py fix(security): add re.DOTALL to prevent multiline bypass of dangerous command detection 2026-03-01 03:23:29 +03:00
browser_tool.py feat(api): implement dynamic max tokens handling for various providers 2026-02-26 20:23:56 -08:00
clarify_tool.py More major refactor/tech debt removal! 2026-02-21 20:22:33 -08:00
code_execution_tool.py fix: guard POSIX-only process functions for Windows compatibility 2026-03-01 01:54:27 +03:00
cronjob_tools.py fix: cron prompt injection scanner bypass for multi-word variants 2026-02-26 13:55:54 +03:00
debug_helpers.py refactor: consolidate debug logging across tools with shared DebugSession class 2026-02-21 03:53:24 -08:00
delegate_tool.py fix(delegate_tool): update max_iterations default from 25 to 50 for improved task handling 2026-03-02 00:51:10 -08:00
file_operations.py fix(tools): preserve empty content in ReadResult.to_dict() 2026-03-01 02:42:15 +03:00
file_tools.py feat: add docker_volumes config for custom volume mounts 2026-02-28 07:12:48 +10:00
fuzzy_match.py Cleanup time! 2026-02-20 23:23:32 -08:00
honcho_tools.py feat: add Honcho AI-native memory integration 2026-02-26 18:07:17 -05:00
image_generation_tool.py More major refactor/tech debt removal! 2026-02-21 20:22:33 -08:00
interrupt.py feat: enhance interrupt handling and container resource configuration 2026-02-23 02:11:33 -08:00
mcp_tool.py feat(mcp): add HTTP transport, reconnection, security hardening 2026-03-02 18:40:03 -08:00
memory_tool.py Fix memory tool entry parsing when content contains section sign 2026-02-28 01:33:41 +03:00
mixture_of_agents_tool.py More major refactor/tech debt removal! 2026-02-21 20:22:33 -08:00
openrouter_client.py fix(headers): update X-OpenRouter-Categories to include 'productivity' 2026-02-28 10:38:49 -08:00
patch_parser.py Add file manipulation tools and enhance setup scripts 2026-02-05 03:49:46 -08:00
process_registry.py Merge PR #219: fix: guard POSIX-only process functions for Windows compatibility 2026-03-02 17:07:49 -08:00
registry.py More major refactor/tech debt removal! 2026-02-21 20:22:33 -08:00
rl_training_tool.py More major refactor/tech debt removal! 2026-02-21 20:22:33 -08:00
send_message_tool.py feat: enhance interrupt handling and container resource configuration 2026-02-23 02:11:33 -08:00
session_search_tool.py refactor(cli): Finalize OpenAI Codex Integration with OAuth 2026-02-28 21:47:51 -08:00
skill_manager_tool.py Harden agent attack surface: scan writes to memory, skills, cron, and context files 2026-02-25 23:43:15 -05:00
skills_guard.py Harden agent attack surface: scan writes to memory, skills, cron, and context files 2026-02-25 23:43:15 -05:00
skills_hub.py Fix ClawHub Skills Hub adapter for updated API 2026-03-02 16:11:49 +01:00
skills_sync.py refactor: enhance error handling with structured logging across multiple modules 2026-02-21 03:32:11 -08:00
skills_tool.py fix(security): block path traversal in skill_view file_path (fixes #220) 2026-03-02 02:00:09 -08:00
terminal_tool.py refactor: remove unnecessary single-element loop in disk usage calc 2026-03-02 04:40:13 -08:00
todo_tool.py More major refactor/tech debt removal! 2026-02-21 20:22:33 -08:00
transcription_tools.py refactor: streamline API key retrieval in transcription and TTS tools 2026-02-26 19:56:42 -08:00
tts_tool.py refactor: streamline API key retrieval in transcription and TTS tools 2026-02-26 19:56:42 -08:00
vision_tools.py fix(headers): update X-OpenRouter-Categories to include 'productivity' 2026-02-28 10:38:49 -08:00
web_tools.py refactor(cli): Finalize OpenAI Codex Integration with OAuth 2026-02-28 21:47:51 -08:00