Skip to content

Installation

Docs > Getting Started
  • Node.js 22+ — required for ES module support and modern JavaScript features
  • npm or yarn — for package management

Check your Node.js version:

Terminal window
node --version
# Must be v22.x or higher

The core library provides schema validation, API execution, and MCP server activation.

Install via GitHub:

npm install github:FlowMCP/flowmcp-core

FlowMCP packages are not published to NPM. They are installed directly from GitHub.

import { FlowMCP } from 'flowmcp-core'

Use FlowMCP Core when you want to:

  • Validate schemas programmatically
  • Execute API calls via FlowMCP.fetch()
  • Build MCP servers with FlowMCP.prepareServerTool() (or the flowmcp run CLI)
  • Integrate FlowMCP into your own applications

The CLI provides interactive access to the full schema catalog from the command line.

Install via GitHub:

npm install -g github:FlowMCP/flowmcp-cli

FlowMCP packages are not published to NPM. They are installed directly from GitHub.

Verify the installation:

Terminal window
flowmcp status

Use the CLI when you want to:

  • Search the schema catalog (flowmcp search coingecko)
  • List available schemas for a project (flowmcp list)
  • Call APIs directly (flowmcp call coingecko_ping '{}')
  • Validate schemas during development

373+ production-ready schemas ship with the CLI, covering providers like Etherscan, Moralis, DeFi Llama, Dune Analytics, OpenWeather, GitHub, and many more. Each schema is validated, tested, and follows the v4.1.0 specification.

Browse and call schemas directly from the CLI — every tool from the configured schemaFolders[] is immediately callable, no activation step:

Terminal window
flowmcp search ethereum
# Shows matching schemas with descriptions and parameters
flowmcp call get_contract_abi_etherscan '{"address": "0x..."}'
# Calls the tool directly with JSON parameters

For building MCP servers, you also need the Model Context Protocol SDK:

Terminal window
npm install @modelcontextprotocol/sdk

This provides the Server, StdioServerTransport, and SSEServerTransport classes needed to expose your schemas as MCP tools.

Create a file called verify.mjs:

import { FlowMCP } from 'flowmcp-core'
const schema = {
namespace: 'test',
name: 'Verify',
description: 'Installation verification',
version: '4.1.0',
root: 'https://httpbin.org',
requiredServerParams: [],
requiredLibraries: [],
headers: {},
tools: {
check: {
method: 'GET',
path: '/get',
description: 'Simple GET request',
parameters: []
}
}
}
const { status } = FlowMCP.validateMain( { main: schema } )
console.log( status ? 'FlowMCP Core installed successfully!' : 'Validation failed' )
Terminal window
node verify.mjs
# → FlowMCP Core installed successfully!
Terminal window
flowmcp status
# Shows version, configuration, and active tools
flowmcp search ping
# Should return matching schemas from the catalog

For a new project using FlowMCP, a minimal package.json looks like this:

{
"name": "my-flowmcp-project",
"version": "1.0.0",
"type": "module",
"dependencies": {
"flowmcp-core": "github:FlowMCP/flowmcp-core",
"@modelcontextprotocol/sdk": "latest"
}
}