MCP Actions Adapter
@SecretiveShell
A simple adapter to convert a MCP server to a GPT actions compatible API
Overview
What is MCP Actions Adapter?
MCP Actions Adapter is a tool that converts any MCP (Model Context Protocol) server into an API compatible with OpenAI GPT Actions. It is designed for developers who want to expose MCP server tools as custom actions in OpenAI's GPT platform.
How to use MCP Actions Adapter?
Install with uv tool install mcp-actions-adapter. Create a config.json file following the same format used by Claude Desktop (an example is provided). Start a Cloudflare tunnel with cloudflared tunnel --url http://localhost:8000, then run the adapter with uv run mcp-actions-adapter -c config.json --url ${CF_TUNNEL_URL}. Finally, open the Custom GPT builder and paste the contents of http://localhost:8000/openapi.json into the schema box.
Key features of MCP Actions Adapter
- Converts an MCP server to a GPT Actions compatible API
- Uses the same config.json format as Claude Desktop
- Provides a live OpenAPI schema at
/openapi.json - Requires only a Cloudflare tunnel for public access
- Licensed under MIT
Use cases of MCP Actions Adapter
- Expose MCP server tools as custom actions in OpenAI GPTs
- Bridge existing MCP tools with OpenAI’s GPT Actions framework
- Quickly prototype GPT custom actions without writing a separate API
FAQ from MCP Actions Adapter
What does MCP Actions Adapter do?
It converts an MCP server to a GPT Actions compatible API, allowing MCP tools to be used as custom actions in OpenAI's GPT platform.
How do I install MCP Actions Adapter?
Install it using uv tool install mcp-actions-adapter. Ensure you have uv and cloudflared available on your system.
How do I configure MCP Actions Adapter?
Create a config.json file with the same structure used by Claude Desktop. An example config file is provided in the repository.
How do I make the adapter publicly accessible?
Start a Cloudflare tunnel pointing to http://localhost:8000 using the command cloudflared tunnel --url http://localhost:8000, then run the adapter with the tunnel URL passed via the --url parameter.