原文(日本語に翻訳)
Python Agent SDKの修正: --mcp-config で渡された type:'sdk' のMCPサーバーが起動時に削除されなくなりました。
原文(英語)
Fixed Python Agent SDK: type:'sdk' MCP servers passed via --mcp-config are no longer dropped during startup
概要
Python Agent SDKを使用する際に、--mcp-config オプションで設定ファイルを渡すと、type: 'sdk' と指定されたMCPサーバーがClaude Codeの起動時に無視(削除)されてしまうバグが修正されました。これにより、Python SDKベースのMCPサーバーが設定通りに認識されるようになります。
基本的な使い方
--mcp-config オプションで type: 'sdk' のMCPサーバーを指定する:
json
{
"mcpServers": {
"my-python-sdk-server": {
"type": "sdk",
"module": "my_mcp_module",
"args": []
}
}
}bash
claude --mcp-config ./mcp-config.json修正前はこの設定が無視されていましたが、修正後は正しく認識されます。
実践例
ユースケース: PythonでカスタムMCPサーバーを作成して使用する
python
# my_mcp_module.py
from claude_agent_sdk import MCPServer
class MyCustomServer(MCPServer):
async def handle_tool_call(self, tool_name, params):
if tool_name == "my_tool":
return {"result": "custom result"}設定ファイル(mcp-config.json):
json
{
"mcpServers": {
"my-custom-server": {
"type": "sdk",
"module": "my_mcp_module",
"class": "MyCustomServer"
}
}
}起動コマンド:
bash
claude --mcp-config ./mcp-config.json修正後は、my-custom-server が正しく認識され、Claudeがカスタムツールを使用できます。
ユースケース: CI/CDパイプラインでPython SDK MCPを使用する
yaml
# GitHub Actions での設定例
- name: Run Claude Code with custom MCP
run: |
claude --mcp-config ./ci-mcp-config.json --print "テストを実行してください"注意点
- この修正はPython Agent SDKを使用する場合のみ関連します
type: 'sdk'はPythonのAgent SDKで作成したサーバーを示す設定です- Node.jsベースのMCPサーバー(
type: 'stdio'やtype: 'sse')は影響を受けません