Apps MCP Server
Expose functions from specific apps that you pre-select
Overview
The Apps MCP Server
provides direct access to functions (tools) from specific app(s) you select. Unlike most MCP servers that are bound to a single app, this server allows you to combine multiple apps in one server.
Benefits
- Multi-App Support - Include functions from multiple apps in a single MCP server
- Direct Function Access - Functions appear directly in the LLM’s tool list without discovery steps (Which usually have better performance if your usecase is very specific)
- Selective Inclusion - Only include the Apps whose functions you want to expose
- Reduced Server Management - No need to run multiple MCP servers for different apps
- Familiar Pattern - Similar to traditional MCP server concept but with multi-app capability
How It Works
The Apps MCP Server directly exposes the functions (tools) from the apps you specify with the --apps
parameter. When an MCP client interacts with this server, all functions from the specified apps will be available in its tool list.
This approach differs from the Unified MCP Server
in that there’s no dynamic discovery process - all function (tool) definitions are directly available to MCP clients.
Unlike most MCP servers that are limited to a single app, the Apps MCP Server
allows you to combine functions from multiple apps in a single server, reducing the number of servers you need to manage.
Prerequisites
Before using the Apps MCP Server
, you need to complete several setup steps on the ACI.dev platform.
Get your ACI.dev API Key
You’ll need an API key from one of your ACI.dev agents. Find this in your project setting
Set Allowed Apps
In your Project Setting , enable the apps you want your agent to access by adding them to the Allowed Apps
list.
For more details on how and why to set allowed apps, please refer to the Agent section.
Link Accounts For Each App
For each app you want to use, you’ll need to link end-user (or your own) accounts. During account linking, you’ll specify a linked-account-owner-id
which you’ll later provide when starting the MCP servers.
For more details on how to link accounts and what linked-account-owner-id
is, please refer to the Linked Accounts section.
Install the Package
Integration with MCP Clients
- Replace the
<LINKED_ACCOUNT_OWNER_ID>
and<YOUR_ACI_API_KEY>
below with thelinked-account-owner-id
of your linked accounts and your ACI.dev API key respectively. - Replace
<APP_1>,<APP_2>,...
with the apps you set as allowed for your agent in the Project Setting .
Cursor & Windsurf
Cursor & Windsurf
Make sure you hit the refresh button on the MCP settings page after entering your own API key and Owner ID.
Claude Desktop
Claude Desktop
Make sure to restart the Claude Desktop app after adding the MCP server configuration.
Running Locally
Running Locally
Commandline Arguments
[Required] --apps
[Required] --apps
The apps
argument is used to specify the apps you want to use with your MCP server. E.g., --apps GMAIL,BRAVE,GITHUB
means that the MCP server will only access and expose the functions (tools) from GMAIL
, BRAVE
and GITHUB
apps.
The apps must be configured and enabled first.
[Required] --linked-account-owner-id
[Required] --linked-account-owner-id
The linked-account-owner-id
is the owner ID of the linked accounts you want to use for the function execution. E.g., --linked-account-owner-id johndoe
means that the function execution (e.g, GMAIL__SEND_EMAIL
) will be done on behalf of the linked account of GMAIL
app with owner ID johndoe
.
[Optional] --transport
[Optional] --transport
The transport
argument is used to specify the transport protocol to use for the MCP server.
The default transport is stdio
.
[Optional] --port
[Optional] --port
The port
argument is used to specify the port to listen on for the MCP server if the --transport
is set to sse
.
The default port is 8000
.