Skip to main content
Glama

Strands MCP Server

by cagataycali

strands-mcp-server

PyPI

Bidirectional MCP integration for Strands Agents.

pip install strands-mcp-server

Overview

  • mcp_server - Expose agent as MCP server

  • mcp_client - Connect to MCP servers

  • CLI - stdio for Claude Desktop

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

Quick Start

Server:

from strands import Agent from strands_mcp_server import mcp_server agent = Agent(tools=[..., mcp_server]) agent("start mcp server on port 8000")

Client:

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"} )

For Agents like Claude Desktop/Kiro/...:

{ "mcpServers": { "my-agent": { "command": "uvx", "args": ["strands-mcp-server", "--cwd", "/path/to/project"] } } }

API

mcp_server

Parameter

Default

Description

action

required

start

,

stop

,

status

,

list

transport

http

http

or

stdio

port

8000

Port

tools

None

Tools to expose (None = all)

expose_agent

True

Include

invoke_agent

stateless

False

Multi-node ready

mcp_client

Parameter

Description

action

connect

,

disconnect

,

list_tools

,

call_tool

connection_id

Connection ID

transport

http

,

stdio

,

sse

server_url

Server URL

tool_name

Tool to call

tool_args

Tool arguments

invoke_agent

Full agent access when expose_agent=True:

agent.tool.mcp_client( action="call_tool", connection_id="remote", tool_name="invoke_agent", tool_args={"prompt": "Calculate 2 + 2"} )

CLI

uvx strands-mcp-server [OPTIONS]

Option

Description

--cwd PATH

Working directory

--upstream-url URL

Upstream server (proxy)

--system-prompt TEXT

System prompt

--no-agent-invocation

Disable invoke_agent

--debug

Debug mode

Examples:

# Local uvx strands-mcp-server --cwd /path/to/project # Proxy uvx strands-mcp-server --upstream-url http://localhost:8000/mcp

Troubleshooting

# Debug uvx strands-mcp-server --cwd /path --debug # Check connection curl http://localhost:8000/mcp # Port in use lsof -i :8000 && kill -9 <PID> # Claude logs tail -f ~/Library/Logs/Claude/mcp*.log

Links


License: Apache 2.0

Deploy Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Bidirectional MCP integration that allows Strands agents to both expose themselves as MCP servers and connect to other MCP servers as clients, enabling seamless agent-to-agent communication and tool sharing.

  1. Overview
    1. Quick Start
      1. API
        1. mcp_server
        2. mcp_client
        3. invoke_agent
      2. CLI
        1. Troubleshooting
          1. Links

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/cagataycali/strands-mcp-server'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server