Skip to content

Address PR feedback: make model required, add HTTP transport support#2

Open
hev wants to merge 1 commit intomainfrom
bridge-testing
Open

Address PR feedback: make model required, add HTTP transport support#2
hev wants to merge 1 commit intomainfrom
bridge-testing

Conversation

@hev
Copy link
Copy Markdown

@hev hev commented Dec 21, 2025

Summary

  • Make ClaudeCodeConfig.model required (no default) to prevent accidentally using wrong model
  • Add docstring explaining model vs model_name naming convention
  • Add HTTP transport support for remote MCP gateways (e.g., ContextBridge)
  • Add quick benchmark mode for faster validation runs

Changes

PR Feedback Addressed

  1. Defaults (mcpuniverse/agent/claude_code.py):

    • Removed default value for model parameter
    • Added validation in __init__ that raises ValueError if model not specified
    • Clear error message with example model names
  2. model vs model_name (mcpuniverse/agent/claude_code.py):

    • Added docstring note explaining the naming convention:
      • Agent configs use model (follows OpenAI Agent SDK conventions)
      • LLM configs use model_name (for direct API access)

Additional Improvements

  • Add HttpConfig class and HTTP transport support in ServerConfig
  • Add contextbridge server config with template variable {{CONTEXTBRIDGE_API_KEY}}
  • Add server_list_example.json with documentation on transport types
  • Add quick benchmark mode (BENCHMARK_MODE=quick) for 3 tasks, 5 iterations
  • Update test configs to ensure model is always specified

Test plan

  • Verify ClaudeCodeAgent raises error when model not specified
  • Run quick benchmark: BENCHMARK_MODE=quick pytest tests/benchmark/test_benchmark_repository_management_claude_code.py
  • Verify HTTP transport works with ContextBridge gateway

🤖 Generated with Claude Code

Changes:
- Make ClaudeCodeConfig.model required (no default) to prevent accidentally
  using wrong model. Added validation in __init__ with helpful error message.
- Add docstring explaining model vs model_name naming convention (agents use
  'model', LLMs use 'model_name' - follows OpenAI Agent SDK conventions)
- Add HTTP transport support for remote MCP gateways (e.g., ContextBridge)
- Add HttpConfig class and update ServerConfig to support HTTP transport
- Add contextbridge server config with template variable for API key
- Add server_list_example.json with documentation on transport types
- Add quick benchmark mode (BENCHMARK_MODE=quick) for faster validation
- Update test configs to ensure model is always specified

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@hev
Copy link
Copy Markdown
Author

hev commented Dec 21, 2025

 

After signing up at gatewaycontextbridge.ai I ran npx mcp-remote [https://gateway.contextbridge.ai/mcp](https://gateway.contextbridge.ai/mcp) to do grab an auth token which then redirect to localhost. I initially thought this was a bug but it worked for me I am not totally sure how as I didn't think I had anything running locally, but presumably the mcp-remote handled the request? 

I then changed the following in the benchmark (see new PR). 
  1. Skip MCP manager client building for HTTP servers (the Claude Code SDK handles OAuth natively)
  2. Build HTTP configs directly for the SDK. But http wasn't supported, so then I changed to mcp-stdiio.
 
I still had some trouble getting things to work and ended up going back and forth between see and http transport, and finalizing on http. I also decided to add an env var to run a reduced version of the gh benchmark tests because they still take a long time and were stretching my tokens on the subscription (due to multi-tasking it was still inconvenient to switch between Claude subscriptions so I was using my own). 

The end result I ended up at was, I successfully hit the search_tools tool but didn't get any tool execution happening when running CB. More details are in the PR, and I am happy to push up the trace file it its helpful (tho I suspect it's best to repeat yourself or together and look at your server logs for tool_search).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant