Integration App

by integration-app

29 stars
Not rated
GitHub

About

Integrates with Integration App's API to expose workflow automation capabilities as tools for triggering and managing complex business processes.

Details

Author
integration-app
Repository
membranehq/mcp-server
GitHub stars
29
License
ISC License
Categories
Communication, API, Automation, Developer Tools, Productivity, Design, AI, Security, Knowledge Base, Frontend

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name Integration App
    Command (node, npx, python, etc.) npx
    Arguments
    • Argument 1 -y
    • Argument 2 @highlight/mcp-server

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

git clone https://github.com/membranehq/mcp-server.git
cd mcp-server
npm install
npm run build

Deploy your own instance of this MCP server to any cloud hosting service of your choice.

Provide a Membrane access token via query or Authorization header:

http
?token=ACCESS_TOKEN

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "integration app": {
            "env": {},
            "args": [
                "-y",
                "@highlight/mcp-server"
            ],
            "command": "npx"
        }
    }
}

Linux

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Macos

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Windows

{
    "env": [],
    "args": [
        "/c",
        "npx",
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "cmd"
}

What can you do with Integration App MCP?

- Enable specific integration tools— Useenable-toolsin dynamic mode to activate only the actions needed for a session, such asgmail-send-email.
- Filter tools by integration— Pass theappsquery parameter (e.g.,?apps=google-calendar) to fetch tools from specific connected services.
- Manage persistent chat sessions— Include anx-chat-idheader to reuse the same MCP session across a conversation, and retrieve session mappings viaGET /mcp/sessions.
- Authenticate with a Membrane token— Provide an access token via query parameter orAuthorizationheader to connect to the server over SSE or Streamable HTTP.

The Membrane MCP Server is aModel Context Protocol (MCP)server, it provides actions for connected integrations on Membrane as tools.

Here's our officialAI Agent Examplethat shows you how to use this MCP server in your application.

- Node.js (v18 or higher)
- A
Membraneaccount

git clone https://github.com/membranehq/mcp-server.git cd mcp-server npm install npm run build

To run the development server locally, start it with:

The server will be live athttp://localhost:3000⚡️

# Run the server in test mode npm run start:test # then run tests npm test

Deploy your own instance of this MCP server to any cloud hosting service of your choice.

The project includes a Dockerfile for easy containerized deployment.

docker build -t membrane-mcp-server . docker run -p 3000:3000 membrane-mcp-server

Provide aMembrane access tokenvia query orAuthorizationheader:

?token=ACCESS_TOKEN Authorization: Bearer ACCESS_TOKEN
await client.connect( new SSEClientTransport( new URL( https://<HOSTED_MCP_SERVER_URL>/sse ) { requestInit: { headers: { Authorization: Bearer ${ACCESS_TOKEN}, }, }, } ) );
await client.connect( new StreamableHTTPClientTransport( new URL(https://<HOSTED_MCP_SERVER_URL>/mcp) { requestInit: { headers: { Authorization: Bearer ${ACCESS_TOKEN}, }, }, } ) );

By default, the MCP server runs instatic mode, which means it returnsall available tools(actions) for all connected integrations.

Withdynamic mode(?mode=dynamic), the server will only returnone tool:enable-tools. You can use this tool to selectively enable the tools you actually need for that session.

In dynamic mode, your implementation should figure out which tools are most relevant to the user's query. Once you've identified them, prompt the LLM to call theenable-toolstool with the appropriate list.

Want to see how this works in practice? Check out ourAI Agent Example.

import { Client } from '@modelcontextprotocol/sdk/client/index.js'; import { StreamableHTTPClientTransport } from '@modelcontextprotocol/sdk/client/streamableHttp.js'; const client = new Client({ name: 'example-membrane-mcp-client', version: '1.0.0', }); const transport = new StreamableHTTPClientTransport( new URL(https://<HOSTED_MCP_SERVER_URL>/mcp?mode=dynamic), { requestInit: { headers: { Authorization: Bearer ${ACCESS_TOKEN}, }, }, } ); await client.connect(transport); await client.callTool({ name: 'enable-tools', arguments: { tools: ['gmail-send-email', 'gmail-read-email'], }, });

🔧 Getting tools for a specific integrations

In static mode, the MCP server fetches tools from all active connections associated with the provided token.

You can choose to only fetch tools for a specific integration by passing theappsquery parameter:/mcp?apps=google-calendar,google-docs

💬 Chat Session Management (Experimental)

The MCP server (streamable-http transport only) supports persistent chat sessions. Include anx-chat-idheader in your requests to automatically track sessions for that specific chat. This is an experimental feature that we provide in addition to standard MCP sessions.

POST /mcp Authorization: Bearer YOUR_ACCESS_TOKEN x-chat-id: my-awesome-chat-123
GET /mcp/sessions Authorization: Bearer YOUR_ACCESS_TOKEN
{ "my-awesome-chat-123": "session-uuid-1", "another-chat-456": "session-uuid-2" }

This feature lets you use same session for a conversation. Check out ourAI Agent Exampleto see how this works in practice.

To use this server with Cursor, update the~/.cursor/mcp.jsonfile:

{ "mcpServers": { "membrane": { "url": "https://<HOSTED_MCP_SERVER_URL>/sse?token={ACCESS_TOKEN}" } } }

Restart Cursor for the changes to take effect.

To use this server with Claude, update the config file (Settings > Developer > Edit Config):

{ "mcpServers": { "membrane": { "url": "https://<HOSTED_MCP_SERVER_URL>/sse?token={ACCESS_TOKEN}" } } }

- Ensure your access token is valid and you're generating it according tothese instructions
- Check the MCP server logs for any errors or issues during startup or connection attempts.
- Use the
MCP Inspectorfor testing and debugging

An open-source messaging server for client-to-client communication using MCP HTTP Streamable messaging.

An open-source messaging server for client-to-client communication using MCP HTTP streaming, configurable via an external JSON file.

Integrates Typebot's REST API as callable tools, allowing interaction with Typebot forms and chats.

Manage oVice workspaces, groups, users, and send notifications through the oVice API.

Enables seamless integration with communication platform that allows you to reach your customers globally across any channel.

Official MCP Server to interact with Pearl API. Connect your AI Agents with 12,000+ certified experts instantly.

Platfone - Receive SMS & Virtual Numbers MCP

Virtual phone number platform for AI agents — rent numbers across 200+ countries, receive SMS, and manage the full activation lifecycle

Send emails directly from your editor using the Resend API.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.