by useparagon
Provides an embeddable integration platform that exposes Paragon ActionKit capabilities through a Model Context Protocol server, enabling AI agents to invoke SaaS services such as Google Calendar, Salesforce, and Slack.
What is Paragon MCP Server about?
Paragon MCP Server delivers a ready‑to‑run server that connects AI agents to the Paragon ActionKit catalog. It surfaces pre‑built actions for hundreds of SaaS integrations and supports custom OpenAPI‑defined actions, allowing agents to perform real‑world tasks on behalf of users.
How to use Paragon MCP Server?
npm install
..env.example
to .env
and fill in the required variables (PROJECT_ID
, SIGNING_KEY
or SIGNING_KEY_PATH
, etc.).npm run start
(or via the npx
command shown below)./sse
endpoint, passing the user token in the Authorization
header.Key features of Paragon MCP Server
openapi/
folder.LIMIT_TO_INTEGRATIONS
and LIMIT_TO_TOOLS
.Use cases of Paragon MCP Server
FAQ from the Paragon MCP Server
Authorization: Bearer <token>
header; the server verifies it with Paragon’s public key.LIMIT_TO_INTEGRATIONS
or LIMIT_TO_TOOLS
in the .env
file.ENABLE_PROXY_API_TOOL=true
and review generated requests before execution.ENABLE_CUSTOM_OPENAPI_ACTIONS=true
and place OpenAPI spec files in the openapi/
directory following the naming conventions described in the README.A server implementation for Model Context Protocol (MCP) that integrates with ActionKit, an API by Paragon that provides access to prebuilt actions for 130+ integrations to your users' SaaS applications.
Example Chat | Setup Link |
---|---|
![]() |
![]() |
To start using the Paragon MCP Server, you will need to sign up and register for a Paragon account.
npm install
Create a .env
file in the root directory by running:
cp .env.example .env
Set up the environment variables as described below:
PROJECT_ID
: Your Paragon project ID)SIGNING_KEY
: Your JWT signing key (requiredif SIGNING_KEY_PATH is not set)SIGNING_KEY_PATH
: Path to your JWT signing key file (required if SIGNING_KEY is not set)LIMIT_TO_INTEGRATIONS
: Comma-separated list of integration names to limit the types of available tools.LIMIT_TO_TOOLS
: Comma-separated list of tool names to additionaly limit available tools if needed.PORT
: Server port (default: 3001)MCP_SERVER_URL
: The URL of your hosted MCP Server. This will be used to generate Setup Links when your users are prompted to install integrations. (default: http://localhost:3001
)CONNECT_SDK_CDN_URL
: Paragon Connect SDK CDN URL (default: https://cdn.useparagon.com/latest/sdk/index.js)ACTIONKIT_BASE_URL
: Paragon ActionKit base URL (default: https://actionkit.useparagon.com)ZEUS_BASE_URL
: Paragon API base URL (default: https://zeus.useparagon.com)PROXY_BASE_URL
: Paragon Proxy API base URL (default: https://proxy.useparagon.com)NODE_ENV
: Node environment (default: development
)
Note: When NODE_ENV
is set to development
, the /sse
parameter accepts any user ID in the ?user=
query parameter to automatically authorize as a specific user while testing locally.Start the server using:
npm run start
The server will start on http://localhost:3001
by default.
Note: Cursor's MCP implementation is a very new protocol and is still in active development. You might encounter unexpected issues. When making changes to the MCP server URL, a full client restart is recommended. For more information about current limitations, see the Cursor MCP documentation.
To use this MCP server with Cursor, add the following to your Cursor configuration file at ~/.cursor/mcp.json
:
{
"mcpServers": {
"mcp-actionkit-dev": {
"url": "http://localhost:3001/sse?user=[user-id]"
}
}
}
Replace:
http://localhost:3001
with your server's domainuser-id
with the ID for the Connected User to use with ActionKit (this parameter only available in development mode)To use this MCP server with Claude, add the following to your Claude configuration file at ~/Library/Application Support/Claude/claude_desktop_config.json
:
{
"mcpServers": {
"actionkit": {
"command": "npx",
"args": ["mcp-remote", "http://localhost:3001/sse?user=[user-id]"]
}
}
}
Replace:
http://localhost:3001
with your server's domainuser-id
with the ID for the Connected User to use with ActionKit (this parameter only available in development mode)GET /sse
: Establishes SSE connection for MCP communicationPOST /messages
: Handles MCP message processingGET /setup
: Handles integration setup flowThe GET /sse
endpoint (base URL for the MCP using the SSE transport) accepts an Authorization
header with a Paragon User Token as the Bearer token.
The Paragon User Token is an RS256-encoded JWT that is verified using the public key stored by Paragon. Your MCP client (e.g. your application server or the service running your AI agent) will sign the User Token using the matching private key generated in the Paragon dashboard, which only your server has access to.
This allows the MCP to validate the authenticity of the requesting user using the JWT signature and public key. Once authenticated, the MCP will associate the user ID encoded in the JWT with the active MCP session.
To add your own Custom Action definitions:
ENABLE_CUSTOM_OPENAPI_ACTIONS=true
in your environment (e.g. .env file).openapi/
subfolder at the root of the repository.openapi/googleCalendar.json
.custom.
prefix: openapi/custom.spotify.json
.The MCP will automatically match OpenAPI files with Active integrations in your Paragon project to augment the list of available tools returned by the MCP.
[!WARNING] Enabling this tool allows your agent to write its own API requests with the account you connect. Always review the request before allowing the agent to use this tool to safeguard against unexpected changes.
To allow the agent to write its own requests to the integration API, set ENABLE_PROXY_API_TOOL=true
in your environment.
This project is open source and available under the MIT License.
Please log in to share your review and rating for this MCP.
{ "mcpServers": { "paragon-mcp": { "command": "npx", "args": [ "-y", "paragon-mcp" ], "env": { "PROJECT_ID": "<YOUR_PROJECT_ID>", "SIGNING_KEY": "<YOUR_SIGNING_KEY>", "SIGNING_KEY_PATH": "<PATH_TO_SIGNING_KEY>", "LIMIT_TO_INTEGRATIONS": "", "LIMIT_TO_TOOLS": "", "PORT": "3001", "MCP_SERVER_URL": "http://localhost:3001", "CONNECT_SDK_CDN_URL": "https://cdn.useparagon.com/latest/sdk/index.js", "ACTIONKIT_BASE_URL": "https://actionkit.useparagon.com", "ZEUS_BASE_URL": "https://zeus.useparagon.com", "PROXY_BASE_URL": "https://proxy.useparagon.com", "NODE_ENV": "development", "ENABLE_CUSTOM_OPENAPI_ACTIONS": "false", "ENABLE_PROXY_API_TOOL": "false" } } } }
Explore related MCPs that share similar capabilities and solve comparable challenges
by Skyvern-AI
Automates browser‑based workflows by leveraging large language models and computer‑vision techniques, turning natural‑language prompts into fully functional web interactions without writing custom scripts.
by ahujasid
Enables Claude AI to control Blender for prompt‑assisted 3D modeling, scene creation, and manipulation via a socket‑based Model Context Protocol server.
by PipedreamHQ
Connect APIs quickly with a free, hosted integration platform that enables event‑driven automations across 1,000+ services and supports custom code in Node.js, Python, Go, or Bash.
by elie222
Organizes email inbox, drafts replies in the user's tone, tracks follow‑ups, and provides analytics to achieve inbox zero quickly.
by grab
Enables Cursor AI to read and programmatically modify Figma designs through a Model Context Protocol integration.
by ahujasid
Enables Claude AI to control Ableton Live in real time, allowing AI‑driven creation, editing, and playback of tracks, clips, instruments, and effects through a socket‑based server.
by leonardsellem
Provides tools and resources to enable AI assistants to manage and execute n8n workflows via natural language commands.
by GongRzhe
Provides a Model Context Protocol server that enables AI assistants to send, read, search, and organize Gmail messages, supporting attachments, label and filter management, and automatic OAuth2 authentication.
by mario-andreschak
A unified platform that manages AI models, MCP servers, and complex workflows, offering secure key storage, visual flow building, and an interactive chat UI.