MetaCall MCP Server
A Model Context Protocol (MCP) server that exposes MetaCall FaaS operations as AI-callable tools, letting LLMs like Claude manage your MetaCall deployments directly.
What this POC does
This server wraps three MetaCall API endpoints as MCP tools:
| Tool | Description | Underlying API | |---|---|---| | list_deployments | Lists all active FaaS deployments on your account | GET /api/deploy/list | | call_function | Calls a deployed function by name with arguments | POST /api/call | | deploy_from_repo | Deploys a Git repository to MetaCall FaaS | POST /api/repository/add |
Prerequisites
- Node.js ≥ 18
- A MetaCall account with an API token
Setup
npm install
Configuration
Export your MetaCall API token as an environment variable before running:
export METACALL_TOKEN=your_token_here
You can find your token in the MetaCall Dashboard under Settings → API Tokens.
Running
npm run start
On success you'll see on stderr: `` MetaCall MCP Server running... ``
The server communicates over stdio, so Claude Desktop connects to it as a subprocess.
Connecting to Claude Desktop
Add the following to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"metacall": {
"command": "npm",
"args": ["run", "start"],
"cwd": "/path/to/metacall-mcp",
"env": {
"METACALL_TOKEN": "your_token_here"
}
}
}
}
Restart Claude Desktop and you'll see the MetaCall tools available in the tools panel.
Tool Reference
list_deployments
No parameters. Returns a JSON array of all deployments on your account.
call_function
| Parameter | Type | Description | |---|---|---| | suffix | string | Deployment path/suffix (e.g. "my-app") | | name | string | Function name to call | | args | array | Arguments to pass to the function |
deploy_from_repo
| Parameter | Type | Description | |---|---|---| | url | string | Git repository URL | | plan | string? | essential \| standard \| professional (default: essential) |
Building
npm run build
# Output goes to ./dist/









