L Harness MCP

MCP server for an open-source CRM for LINE accounts: the agent reads chats, drafts scenarios and broadcasts, checks link clicks

  • 611 ★ on the repository
  • Last commit
  • MIT
MCP server

Broad access

Why this level

  • The agent sends messages and broadcasts to real customers
  • It sees customers' profiles, chats and form answers
  • The API key gives access to staff and ad platform management in the account
All reasons and checks

shudesu/line-harness-oss

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/l-harness

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The agent sends messages and broadcasts to real customers
  • It sees customers' profiles, chats and form answers
  • The API key gives access to staff and ad platform management in the account

This is third-party code. Review the repository files before installing.

What it does

L Harness is an open-source CRM for LINE Official Accounts: step scenarios, broadcasts by tag and segment, forms, menus and friend management. It runs on Cloudflare's free tier and installs with npx create-line-harness. The same repository holds an MCP server, the @line-harness/mcp-server package. Through it an agent manages an already deployed CRM in plain language. The tools fall into three groups. Reading: a friend list filtered by name, tags and metadata, a friend card, unanswered conversations, form answers, link clicks, the conversion log and an account summary. Writing: send_message and broadcast, creating scenarios, forms, menus and tracked links, uploading images. Management: tags, scenarios, broadcasts, templates, staff and ad platforms. As resources the server exposes the friend, scenario and tag lists. Links in messages sent through send_message and broadcast are turned into tracked ones by default, and plain text is wrapped as a Flex message with a button. The trackLinks parameter set to false switches this off.

Who it is for. For owners and marketers of companies that serve customers on LINE and want to manage chats, scenarios and broadcasts from Claude Code.

Good fit when

  • Unanswered chats have piled up: list_conversations lines them up by idle time and ignores automated sends
  • You need a draft welcome sequence: create_scenario and update_step build it from your description
  • You want a broadcast review: get_link_clicks shows who clicked a link and get_conversion_logs gives conversions
  • The audience should be picked by tag or segment conditions, for example by a tag and a metadata value
  • You need a questionnaire or booking form inside LINE: create_form builds it and get_form_submissions returns the answers

Not a fit when

  • The CRM itself is not deployed yet: the server is only a remote control for a running L Harness and will not start without its API address and key
  • Your customers are not on LINE: the system works only with LINE Official Accounts
  • You are not ready to approve each tool call in your client: the server itself asks for no consent, and broadcast sends at once unless scheduledAt is set

Example request

Show today's unanswered chats and draft a reply to the oldest one, but send nothing

MCP

Transport
stdio
Authentication
API key

Environment variables

LINE_HARNESS_API_URL required
Address of the L Harness worker you deployed on Cloudflare.
LINE_HARNESS_API_KEY required, secret
A staff member's API key from the L Harness dashboard. The agent acts on behalf of that staff member.
LINE_HARNESS_ACCOUNT_ID
ID of the LINE account the server uses by default.

Limitations

The server does not work on its own. It needs a deployed CRM on Cloudflare Workers and D1, an official LINE account with a Messaging API channel, and an API key. Installing the CRM itself needs Node.js 22 and pnpm.

The main README is written in Japanese, with translations into English, Chinese, Korean and Spanish. The wiki page about the MCP server is in Japanese only. Staff members have three roles, Owner, Admin and Staff, and each has an individual API key. Access to LINE and Cloudflare from Russia was not checked for this card.

How to disable. Remove the line-harness block from .mcp.json or your client configuration. Then revoke the API key in the L Harness dashboard: each staff member has their own, and once it is revoked the agent loses access to the account.

FAQ

How do I connect L Harness to Claude Code?

Add a line-harness server to .mcp.json with the npx command and the arguments -y and @line-harness/mcp-server@latest, and put LINE_HARNESS_API_URL and LINE_HARNESS_API_KEY in the env block. A third variable, LINE_HARNESS_ACCOUNT_ID, selects the default account when you have several.

What must be running before I install the MCP server?

The CRM itself. The npx create-line-harness command signs in to Cloudflare, creates the D1 database, deploys the worker and dashboard, registers the LINE Official Account credentials and creates the LIFF app. The developer puts the installation at about five minutes.

Will the agent send a message without my knowledge?

It can, if your client approves tool calls automatically. The developer marks send_message and broadcast as tools that need user consent, and that consent is asked by your MCP client when the call is requested. Keep manual approval on for these two tools.

Why does the server rewrite links in messages?

That is how the CRM counts clicks. A link becomes a tracked one, a click inside the LINE app is tied to a specific friend, and that friend can get a tag or enter a scenario. LIFF links and already tracked links are left alone.

What customer data does the agent get?

The friend list and their profiles, metadata, conversations, form answers and link clicks. The agent acts on behalf of the staff member whose key you set, so take a key with the minimum role you need.

Discussion

No questions or reviews yet.

Official

Official LINE MCP server: an agent sends messages through the Messaging API from your LINE Official Account

MCP serverBroad access793Repository stars

amoCRM sales manager MCP server

amoCRM ROP MCP Server

Russian stack

An MCP server with business tools on top of amoCRM for a sales manager: department overview, stale deals, manager comparison

MCP serverExtended access
Russian stack

An MCP server for the Megaplan v3 API: tasks, deals, projects and employees through an agent, plus ready-made skills for daily tasks and a deal wizard

MCP serverBroad access2Repository stars

Planfix MCP server

Planfix MCP Server

Russian stack

An MCP server for Planfix built on REST API v2.0: leads, tasks, contacts, companies, reports and custom fields via config

MCP serverExtended access11Repository stars

SendPulse chatbots MCP server

MCP Server for SendPulse Chatbots

Russian stack

An MCP server for SendPulse chatbots: account info, dialogs and sending messages across WhatsApp, Telegram, Instagram and other channels

MCP serverExtended access

Comparison with similar tools

Entries that share the main search query, and how they differ.

EntryOfficialAuthenticationRepository starsMain difference
L Harness (this entry)noAPI key611
Multi-tenant Kommo CRM MCP servernoAPI key0connects the Kommo CRM for an agency with several clients
BitrixMCP: a deterministic Bitrix24 servernoAPI key0works with Bitrix24 through its REST API

README in short

The project description presents L Harness as a free replacement for paid LINE CRMs with zero server cost. It then lists features: scenarios and broadcasts, tags and lead scoring, menus and forms, calendar booking, affiliate tracking, automation rules, and multiple accounts with friend migration after a ban. The AI section names the MCP server and a typed SDK. The architecture is a Cloudflare worker, a Next.js dashboard and a D1 database, and the repository packages include the SDK, the MCP server, the installer and a plugin template.

README badge

Report a problem

Foxx AIL Harness
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.