strands mcp服务器

Strands Agent的双向MCP集成。
pip install strands-mcp-server______________________________________________________________________
概述
- mcp服务器 -将代理暴露为MCP服务器
- mcp客户端 -连接到MCP服务器
- 命令行界面 -克劳德桌面版stdio
graph LR
subgraph "Your Strands Agent"
A[Tools: calculator, shell, etc.]
B[mcp_server tool]
C[mcp_client tool]
A --> B
C --> A
end
subgraph "Server Mode"
B -->|HTTP/stdio| D[MCP Protocol]
D --> E[Claude Desktop]
D --> F[Other Agents]
D --> G[Custom Clients]
end
subgraph "Client Mode"
H[Remote MCP Servers] -->|HTTP/stdio/SSE| I[MCP Protocol]
I --> C
end
subgraph "CLI"
J[uvx strands-mcp-server] -->|Local Mode| D
J -->|Proxy Mode| I
end
style A fill:#2d3748,stroke:#4a5568,color:#fff
style B fill:#2b6cb0,stroke:#2c5282,color:#fff
style C fill:#38a169,stroke:#2f855a,color:#fff
style D fill:#805ad5,stroke:#6b46c1,color:#fff
style I fill:#805ad5,stroke:#6b46c1,color:#fff
style E fill:#d69e2e,stroke:#b7791f,color:#fff
style F fill:#d69e2e,stroke:#b7791f,color:#fff
style G fill:#d69e2e,stroke:#b7791f,color:#fff
style H fill:#e53e3e,stroke:#c53030,color:#fff
style J fill:#48bb78,stroke:#38a169,color:#fff______________________________________________________________________
快速开始
服务器:
from strands import Agent
from strands_mcp_server import mcp_server
agent = Agent(tools=[..., mcp_server])
agent("start mcp server on port 8000")客户:
from strands import Agent
from strands_mcp_server import mcp_client
agent = Agent(tools=[mcp_client])
agent.tool.mcp_client(
action="connect",
connection_id="remote",
transport="http",
server_url="http://localhost:8000/mcp"
)
agent.tool.mcp_client(
action="call_tool",
connection_id="remote",
tool_name="calculator",
tool_args={"expression": "42 * 89"}
)适用于Claude Desktop/Kiro/等代理。..:
{
"mcpServers": {
"my-agent": {
"command": "uvx",
"args": ["strands-mcp-server", "--cwd", "/path/to/project"]
}
}
}______________________________________________________________________
API
mcp服务器
| 参数 | 默认值 | 说明 |
|---|---|---|
action | 必填项 | start, stop, status, list |
transport | http | http 或 stdio |
port | 8000 | 港口 |
tools | 无 | 要公开的工具(无=全部) |
expose_agent | True | 包括 invoke_agent |
stateless | False | 多节点就绪 |
mcp客户端
| 参数 | 说明 |
|---|---|
action | connect, disconnect, list_tools, call_tool |
connection_id | 连接ID |
transport | http, stdio, sse |
server_url | 服务器URL |
tool_name | 调用工具 |
tool_args | 工具参数 |
发票代理
完全代理访问权限 expose_agent=True:
agent.tool.mcp_client(
action="call_tool",
connection_id="remote",
tool_name="invoke_agent",
tool_args={"prompt": "Calculate 2 + 2"}
)______________________________________________________________________
命令行界面
uvx strands-mcp-server [OPTIONS]| 选项 | 描述 |
|---|---|
--cwd PATH | 工作目录 |
--upstream-url URL | 上游服务器(代理) |
--system-prompt TEXT | 系统提示 |
--no-agent-invocation | 禁用invoke_agent |
--debug | 调试模式 |
示例:
# Local
uvx strands-mcp-server --cwd /path/to/project
# Proxy
uvx strands-mcp-server --upstream-url http://localhost:8000/mcp______________________________________________________________________
故障排除
# Debug
uvx strands-mcp-server --cwd /path --debug
# Check connection
curl http://localhost:8000/mcp
# Port in use
lsof -i :8000 && kill -9
# Claude logs
tail -f ~/Library/Logs/Claude/mcp*.log______________________________________________________________________
链接
______________________________________________________________________
许可证: Apache 2.0
