Paragon MCP Server
OfficialClick on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Paragon MCP ServerCreate a Google Calendar event for tomorrow at 2pm"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Paragon MCP Server
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.
Features
Example Chat | Setup Link |
|
|
Add user-facing integrations from your Paragon account as available capabilities to your agent, for example:
Google Calendar: Create or update events and get calendar availability on your user's behalf.
Salesforce: Query and manage records from your user's CRM.
Slack: Send notifications to your user's Slack workspace.
Automatically prompt users to authorize integrations with the Connect Portal, a prebuilt component for secure OAuth 2.0 and API Key intake flows.
Optionally: add Custom Actions or direct API access as available tools in the MCP.
Related MCP server: Business Bridge MCP Server
Prerequisites
To start using the Paragon MCP Server, you will need to sign up and register for a Paragon account.
Node.js @ 22.14.0
npm package manager
Installation
Clone the repository
Install dependencies:
npm installEnvironment Variables
Create a .env file in the root directory by running:
cp .env.example .envSet up the environment variables as described below:
Required:
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)
Optional:
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: WhenNODE_ENVis set todevelopment, the/mcpand/sseendpoints accept any user ID in the?user=query parameter to automatically authorize as a specific user while testing locally.ENABLE_LEGACY_SSE: Set tofalseto remove the deprecated/sseand/messagesendpoints (default:true)MCP_ALLOWED_HOSTS: Additional comma-separatedHostheader values accepted by/mcp. The host fromMCP_SERVER_URLis allowed automatically.MCP_ALLOWED_ORIGINS: Additional comma-separatedOriginheader values accepted by/mcp. The origin fromMCP_SERVER_URLis allowed automatically.MCP_SESSION_IDLE_TIMEOUT_MS: Time in milliseconds before an inactive Streamable HTTP session is closed (default:1800000)MCP_MAX_SESSIONS: Maximum number of concurrent Streamable HTTP sessions per server instance (default:1000)
Running the Server
Start the server using:
npm run startThe server will start on http://localhost:3001 by default.
Client Configuration
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.
Cursor
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/mcp?user=[user-id]"
}
}
}Replace:
http://localhost:3001with your server's domainuser-idwith the ID for the Connected User to use with ActionKit (this parameter only available in development mode)
Claude
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/mcp?user=[user-id]"]
}
}
}Replace:
http://localhost:3001with your server's domainuser-idwith the ID for the Connected User to use with ActionKit (this parameter only available in development mode)
For production clients, send the Paragon User Token as an Authorization: Bearer <token> header on every MCP request.
Legacy SSE clients
Existing clients can continue using GET /sse and POST /messages while ENABLE_LEGACY_SSE is true. To migrate, update the configured URL from /sse to /mcp and use a client that supports Streamable HTTP before disabling legacy SSE.
Deploying the MCP Server
The Paragon MCP server can be completely self-hosted. Deploy the MCP Server via Docker in any cloud hosting platform of your choice.
For testing, you can one-click deploy the server through Heroku.
API Endpoints
GET,POST, andDELETE /mcp: Handles stateful Streamable HTTP communicationGET /sse: Establishes a deprecated legacy SSE connection whenENABLE_LEGACY_SSE=truePOST /messages: Handles deprecated legacy SSE messages whenENABLE_LEGACY_SSE=trueGET /setup: Handles integration setup flow
Authorization
The /mcp endpoint accepts an Authorization header with a Paragon User Token as the Bearer token. Streamable HTTP clients must retain and send the same token used to initialize the session on every subsequent GET or POST request. If the token is rotated, initialize a new session. A client may terminate its old session with DELETE using a rotated, unexpired token for the same user. The legacy GET /sse endpoint also accepts this header when legacy SSE is enabled.
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.
Streamable HTTP sessions are stored in memory and close when their initializing token expires or after 30 minutes of inactivity by default. Clients must initialize a new session after expiration or a server restart. Deployments with multiple server instances must use session affinity so requests bearing the same Mcp-Session-Id reach the instance that created it.
Adding Custom Actions with OpenAPI
To add your own Custom Action definitions:
Set
ENABLE_CUSTOM_OPENAPI_ACTIONS=truein your environment (e.g. .env file).Create an
openapi/subfolder at the root of the repository.Add OpenAPI specs in YAML or JSON format, using the integration name as the file name.
For example, if you are adding Custom Actions for Google Calendar, the OpenAPI specs should be located at:
openapi/googleCalendar.json.If you are adding Actions for a Custom Integration, use the SDK name of the integration, with the
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.
Using experimental Proxy API tool
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.
License
This project is open source and available under the MIT License.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceConnects AI assistants to over 30 business tools like Gmail, Slack, and Airtable through a single unified interface. It enables users to perform actions across multiple platforms using natural language without managing individual API integrations.12MIT
- AlicenseAqualityDmaintenanceEnables AI agents to connect and interact with common business platforms like Shopify, WordPress, and Calendly via pre-built connectors for tasks such as product management, content operations, and scheduling.13MIT

UCM MCP Serverofficial
Flicense-qualityFmaintenanceEnables AI agents to autonomously discover and call a marketplace of 100+ APIs, including web search, image generation, and more, with automatic payments and refunds.- Flicense-qualityCmaintenanceEnables AI agents to provision and manage external SaaS services (Clerk, Stripe, Resend, etc.) by authenticating and creating resources via YAML configuration.27
Related MCP Connectors
SaaS intelligence for AI agents. 5 unified tools cover 1,000+ services with 91-96% token savings.
Your company's brain for AI agents. Cited, permission-aware knowledge across every system.
Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/useparagon/paragon-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server

