OpenClaw MCP Server

OpenClaw MCP Server

General TypeScript MCP server that provides tools for OpenClaw capabilities, including balance and invoice retrieval from RMappi/Osuria.

Category
Visit Server

README

OpenClaw MCP Server

General TypeScript MCP server for OpenClaw tools.

The server is organized around toolsets so new OpenClaw capabilities can be added without recreating MCP startup, transport, and registration boilerplate.

Structure

src/
  index.ts              # transport startup
  server.ts             # MCP server factory
  toolsets/
    index.ts            # registers all toolsets
    toolset.ts          # shared toolset interface
    core.ts             # base server introspection tools

Install

npm install

Build

npm run build

Run

npm start

The server only supports stdio transport and is intended for local MCP clients that spawn the server process.

Deploy as a STDIO MCP Server

This server is deployed by installing dependencies, building the TypeScript output, and configuring an MCP client to spawn the built stdio entry point.

From the repository directory:

npm install
npm run build

Use node with the absolute path to dist/index.js as the MCP server command. Example client configuration:

{
  "mcpServers": {
    "openclaw": {
      "command": "node",
      "args": [
        "C:\\Projects\\openclaw-mcp-tools\\dist\\index.js"
      ],
      "env": {
        "ENV_RMAPPI_USER": "email@example.com",
        "ENV_RMAPPI_PASSWORD": "password"
      }
    }
  }
}

For a cloned checkout in a different location, replace the args path with that checkout's absolute dist/index.js path.

For macOS or Linux, the same configuration uses a POSIX path:

{
  "mcpServers": {
    "openclaw": {
      "command": "node",
      "args": [
        "/absolute/path/to/openclaw-mcp-tools/dist/index.js"
      ],
      "env": {
        "ENV_RMAPPI_USER": "email@example.com",
        "ENV_RMAPPI_PASSWORD": "password"
      }
    }
  }
}

If using the RMappi/Osuria tools on a fresh machine, also install the Chromium browser binary once:

npx playwright install chromium

After changing TypeScript files, run npm run build again before restarting the MCP client. The client owns the server process lifecycle; stop and restart the MCP client to pick up a new build or environment variable changes.

Inspect

Build first, then run the MCP Inspector against the stdio entry point:

npm run build
npm run inspect

Equivalent direct command:

npx @modelcontextprotocol/inspector node dist/index.js

Use dist/index.js, not dist/server.js. The server.js file only exports the MCP server factory and does not connect a stdio transport.

Adding Toolsets

Create a new file in src/toolsets/:

import type { Toolset } from "./toolset.js";

export const myToolset: Toolset = {
  name: "my-toolset",
  description: "Tools for a focused OpenClaw capability.",
  register(server) {
    server.registerTool(
      "openclaw_my_action",
      {
        title: "My Action",
        description: "Does one focused OpenClaw action.",
        inputSchema: {},
        annotations: {
          readOnlyHint: true,
          destructiveHint: false,
          idempotentHint: true,
          openWorldHint: false
        }
      },
      async () => ({
        content: [{ type: "text", text: "ok" }]
      })
    );
  }
};

Then add it to src/toolsets/index.ts.

Tool names should use the openclaw_ prefix and snake_case verbs, for example openclaw_list_projects or openclaw_create_job.

RMappi/Osuria Balance Tool

Tool: openclaw_get_rmappi_balance

Use this tool when the user asks for RMappi/Osuria saldo, bank balance, available funds, or taloyhtion tilin saldo.

Required environment variables:

$env:ENV_RMAPPI_USER = "email@example.com"
$env:ENV_RMAPPI_PASSWORD = "password"

Temporary compatibility fallback:

$env:ENV_RMAPPI__PASSWORD = "password"

The tool does not accept credentials as MCP arguments. It opens https://app.osuria.com, accepts the cookie dialog if present, logs in, navigates to /balance, reads account cards by visible labels, logs out, and closes the browser.

If Playwright browser binaries are not installed yet, run:

npx playwright install chromium

RMappi/Osuria Invoices Tool

Tool: openclaw_get_rmappi_invoices

Use this tool when the user asks for RMappi/Osuria invoices, laskut, voucher numbers, invoice totals, or invoices for a specific month.

Inputs:

{
  "year": 2026,
  "month": 6
}

Both fields are optional. If omitted, the tool uses the current local year and month.

The tool uses the same ENV_RMAPPI_USER and ENV_RMAPPI_PASSWORD credentials as the balance tool. After login it reads sessionStorage["x-session-token"], calls the RMappi invoices API with that token, returns the API JSON array, logs out, and closes the browser. The token is never returned in tool output.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured