

Multi-Protocol Bridge
Communications
Available ActionsEach successful request consumes credits as outlined below.
ftp_upload5crftp_download5crftp_list5crftp_delete5crssh_execute5crmqtt_publish5cr
Details
Protocol Bridge is an HTTP gateway that enables AI agents, automation workflows, and modern applications to interact with traditional network protocols without native protocol support. It translates simple HTTP requests into FTP, SSH, and MQTT operations, making it easy to integrate file transfers, remote command execution, and IoT messaging into any system that can make web requests. The tool supports secure connections including FTPS, SSH key authentication, and MQTTS with TLS, ensuring enterprise-grade security for sensitive operations. Connection details can be passed via intuitive URL strings or explicit parameters, giving developers flexibility in how they configure each action. Protocol Bridge is ideal for building automation pipelines, connecting legacy infrastructure to modern APIs, orchestrating DevOps tasks, and enabling large language models to perform real-world actions across diverse systems. For email sending workflows, use the dedicated SMTP Mailer tool which provides a streamlined interface specifically optimized for email delivery.
Use Cases
FTP file upload automation, FTP file download, secure FTPS file transfer, remote directory listing, automated file deletion, SSH remote command execution, server administration automation, DevOps task orchestration, IoT MQTT message publishing, sensor data transmission, smart home device control, MQTT broker integration, AI agent protocol access, LLM tool integration, workflow automation, legacy system integration, HTTP to FTP bridge, HTTP to SSH gateway, HTTP to MQTT proxy, no-code automation backend, serverless protocol access, cloud function protocol support, CI/CD pipeline integration, infrastructure automation, remote server management, file synchronization, backup automation, system monitoring automation
Actions(6)
ftp_upload5cr3 params(2 required)Upload a file to an FTP or FTPS server. Supports text and base64-encoded binary content.
ftp_upload5cr3 params(2 required)Upload a file to an FTP or FTPS server. Supports text and base64-encoded binary content.
urlrequiredstringFTP/FTPS URL with path to the destination file (e.g., ftp://user:pass@ftp.example.com:21/path/to/file.txt). Use ftps:// for encrypted connections.
contentrequiredstringFile content to upload. For binary files, provide base64-encoded content and set content_encoding to 'base64'.
content_encodingstringHow content is encoded: 'text' for plain text, 'base64' for binary files
Values:
textbase64
Default:
textftp_download5cr2 params(1 required)Download a file from an FTP or FTPS server. Returns file content as text or base64.
ftp_download5cr2 params(1 required)Download a file from an FTP or FTPS server. Returns file content as text or base64.
urlrequiredstringFTP/FTPS URL with path to the file to download (e.g., ftp://user:pass@ftp.example.com:21/reports/q1.csv)
optionsobjectDownload options
Properties:
return_base64(boolean)- Return file content as base64 instead of text. Use for binary files.ftp_list5cr2 params(1 required)List the contents of a directory on an FTP or FTPS server.
ftp_list5cr2 params(1 required)List the contents of a directory on an FTP or FTPS server.
urlrequiredstringFTP/FTPS URL with path to the directory (e.g., ftp://user:pass@ftp.example.com:21/documents/)
optionsobjectListing options
Properties:
recursive(boolean)- List subdirectories recursivelyftp_delete5cr2 params(2 required)Delete a file on an FTP or FTPS server. Requires explicit confirmation via options.confirm_delete.
ftp_delete5cr2 params(2 required)Delete a file on an FTP or FTPS server. Requires explicit confirmation via options.confirm_delete.
urlrequiredstringFTP/FTPS URL with path to the file to delete (e.g., ftp://user:pass@ftp.example.com:21/old-files/archive.zip)
optionsrequiredobjectDelete options
Properties:
confirm_delete*(string)- Must be set to the string 'DELETE' to confirm file deletionssh_execute5cr3 params(2 required)Execute a shell command on a remote server via SSH. Supports password and key-based authentication.
ssh_execute5cr3 params(2 required)Execute a shell command on a remote server via SSH. Supports password and key-based authentication.
urlrequiredstringSSH URL (e.g., ssh://user:pass@server.example.com:22). For key auth, omit password and provide private_key in options.
contentrequiredstringShell command to execute on the remote server (e.g., 'ls -la /home/user')
optionsobjectSSH connection options
Properties:
timeout(integer)- Command timeout in secondsprivate_key(string)- SSH private key in PEM format for key-based authenticationknown_hosts(string)- SSH known hosts string for host verificationmqtt_publish5cr3 params(2 required)Publish a message to an MQTT or MQTTS broker. The topic is specified as the URL path.
mqtt_publish5cr3 params(2 required)Publish a message to an MQTT or MQTTS broker. The topic is specified as the URL path.
urlrequiredstringMQTT URL with the topic as the path (e.g., mqtt://user:pass@broker.example.com:1883/sensors/temperature). Use mqtts:// for TLS.
contentrequiredstringMessage payload to publish (plain text or JSON string)
optionsobjectMQTT publish options
Properties:
qos(integer)- Quality of Service level: 0=at most once, 1=at least once, 2=exactly onceretain(boolean)- Broker retains the message for future subscribersclient_id(string)- MQTT client identifier. Auto-generated if not provided.Frequently Asked Questions
How do I connect this tool to an external agent?
You can install the local MCP server by opening a terminal and running:
Install commands
npm install -g @agentpmt/mcp-router
agentpmt-setupThis will connect you to local agents like Claude Code, Windsurf, Grok Build, Cursor, etc.
Alternatively you can connect to the hosted version with this config block, no installation required:
Hosted MCP config
{
"mcpServers": {
"agentpmt": {
"type": "streamable-http",
"url": "https://api.agentpmt.com/mcp",
"headers": {
"Authorization": "Bearer <AGENTPMT_BEARER_TOKEN>",
"x-instance-metadata": "{\"client\":\"generic-mcp\",\"platform\":\"remote\"}"
}
}
}
}View MCP Connection Instructions for more details.
How does an external agent use this tool?
After the external agent is connected to an Agent Group that can use this tool, paste this prompt into the agent:
Agent prompt
Call the AgentPMT-Tool-Search-and-Execution tool with action 'get_schema' and tool_id 6948d263b54506f955d789f0 ("Multi-Protocol Bridge"). Then call the same tool with action 'call_tool', tool_id 6948d263b54506f955d789f0, and the parameters needed for my request.
The agent should fetch the tool schema first, collect the required parameters for your request, and then call the tool through AgentPMT.





