This is a gateway that turns any HTTP API into MCP tools without writing code. Point it at a JSON config file or a Postman collection and it converts endpoints into callable tools for Claude. Supports the usual HTTP methods and auth patterns (bearer tokens, API keys). The workflow is straightforward: export your Postman collection, run the server with that file, and your API is available to the LLM. There's a web-based editor for building configs visually if you don't have existing collections. Good for quickly prototyping LLM integrations with third-party APIs or for teams that already maintain Postman collections and want to expose them to AI assistants.
A meta API Gateway server that works with the Model Context Protocol (MCP). You can connect any API to LLMs (Claude, GPT, etc.) through MCP. This enables AI assistants to interact directly with APIs and access real-world data sources.
A user-friendly editor tool has been developed to create or edit JSON configuration files:
npm install -g meta-api-mcp-server
git clone https://github.com/savhascelik/meta-api-mcp-server.git
cd meta-api-mcp-server
npm install
# Load from default api-configs/ folder
meta-api-mcp-server
# Specify a configuration file (in the directory where you run the server, there should be a folder with this name and structured json in it)
meta-api-mcp-server path/to/config.json
# Load from a specific folder
meta-api-mcp-server path/to/configs/
# Load from a remote URL
meta-api-mcp-server https://example.com/api-config.json
# Load from a remote configuration list
meta-api-mcp-server https://example.com/config-list.json
# Load from a Postman Collection ( your filename must contain the word ‘postman’, I'll bind it to a variable when I have time )
meta-api-mcp-server path/to/My-API.postman_collection.json
To connect to an MCP client like Cursor, configure your mcp.json file as follows:
{
"mcpServers": {
"myApiServer": {
"command": "meta-api-mcp-server",
"args": [
],
"env": {
"MCP_CONFIG_SOURCE":"api-configs/flexweather-endpoints.json",
"API_KEY": "your-api-key-here"
}
}
}
}
{
"mcpServers": {
"myApiServer": {
"command": "meta-api-mcp-server",
"args": [
"server.js",
"path/to/api-config.json"
],
"env": {
"EXAMPLE_API_KEY": "your-api-key-here"
}
}
}
}
{
"mcpServers": {
"flexweather": {
"command": "node",
"args": [
"server.js"
],
"env": {
"MCP_CONFIG_SOURCE":"api-configs/flexweather-endpoints.json"
}
}
}
}
{
"mcpServers": {
"lemonsqueezy": {
"command": "node",
"args": [
"server.js"
],
"env": {
"MCP_CONFIG_SOURCE":"api-configs/lemon-squeezy-api.json",
"LEMON_SQUEEZY_API_KEY": ""
}
}
}
}
Using your existing Postman collections with Meta API MCP Server is now very easy! You can use hundreds of ready-made APIs without writing a single line of code.
meta-mcp my-collection.postman_collection.json
The server will automatically:
Add your API key to the .env file (the server will tell you which environment variable to use)
A user-friendly editor tool has been developed to create or edit JSON configuration files:
With this web tool, you can:
Postman Collections: You can upload your existing Postman collections to the editor tool and automatically convert them to MCP-compatible configurations. This allows you to quickly use your existing collections instead of configuring APIs from scratch.
The editor makes it easy to manage tool names, parameters, and all other configuration options.
The codebase is organized in a modular way to facilitate maintenance and extension:
meta-api-mcp-server/
├── serve.js
├── api-configs/ # Default config directory
└── package.json
You can manually configure APIs using the following JSON format:
{
"apiId": "my-api",
"handlerType": "httpApi",
"baseUrl": "https://api.example.com",
"authentication": {
"type": "bearerToken",
"envVariable": "MY_API_TOKEN"
},
"endpoints": [
{
"mcpOperationId": "getUsers",
"description": "Get a list of users",
"targetPath": "/users",
"targetMethod": "GET",
"parameters": [
{
"name": "page",
"in": "query",
"required": false,
"type": "integer",
"description": "Page number"
}
]
}
]
}
MIT
YOUR_API_KEY*secretIf the api you are connecting to requires api_key, you can use this variable and you can also define different variables