Unify SaaS Tool Access via Single API
fastn.ai Unified API MCP Server gives AI agents governed, multi-tenant access to 250+ SaaS connectors through one MCP endpoint.
Why it matters
Integrate with over 1000 SaaS tools through a single, standardized command endpoint. Abstract away complex SDKs and authentication flows for seamless multi-tenant access.
Outcomes
What it gets done
Connect to over 1000 SaaS applications including Slack, Jira, and Gmail.
Standardize access to diverse SaaS tools via a unified command endpoint.
Simplify authentication and SDK management for multi-tenant environments.
Enable flexible integration with Claude and Cursor AI assistants.
Install
Add it to your toolbox
Run in your project directory:
curl -fsSL https://spark.entire.vc/get/vb-fastn-ai-unified-api-mcp-server | bash Overview
fastn.ai - Unified API MCP Server
fastn.ai Unified API MCP Server is a production-ready MCP gateway connecting AI agents to 250+ SaaS tools like Slack, Jira, and Salesforce, with managed OAuth 2.1 auth and governed, multi-tenant access. Use it when an AI agent or SaaS product needs governed access to many third-party tools without building OAuth and permission handling for each one.
What it does
fastn.ai Unified API MCP Server is a production-ready MCP gateway from Fastn, the embedded integration platform for SaaS products and AI agents. It connects AI agents and apps to Slack, Jira, GitHub, Salesforce, HubSpot, Postgres, and 200+ other services through one multi-tenant MCP endpoint, with fully managed OAuth 2.1 auth, governed access, and sub-second execution, built on the Fastn SDK.
When to use - and when NOT to
Use it when you want to give an AI agent secure, governed access to your customers' or your own tools and systems, across 250+ connectors like Slack, Jira, GitHub, Salesforce, HubSpot, Stripe, Notion, and Linear, without managing OAuth tokens, app registrations, or refresh handling for each one yourself. It fits multi-tenant SaaS products that need role-based permissions and audit trails, and it is SOC 2 certified for enterprise compliance requirements. It is not the right choice if you only need one or two integrations and would rather manage the auth for those directly, since Fastn's value is in the breadth of connectors and the governance layer on top.
Capabilities
- 250+ connectors: Slack, Jira, GitHub, Salesforce, HubSpot, Postgres, Stripe, Notion, Linear, and more
- MCP native: works with Claude Desktop, Cursor, Lovable, Bolt, v0, and any MCP-compatible client
- Fully managed OAuth 2.1 auth for every connector, with no token management or refresh handling required
- Governed access: role-based permissions, audit trails, and enterprise compliance controls
- SOC 2 certified security and compliance
- Sub-second execution via direct API calls with built-in caching and connection pooling
- Multiple transports: stdio for local use, SSE, and Streamable HTTP for any deployment model
- Production-ready: Docker support, health checks, structured logging, and OAuth 2.1 protected resource metadata
- Flow automation: create, manage, and execute multi-step workflows that compose tools
- 11 tools at the full endpoint - find_tools, execute_tool, list_connectors, list_skills, list_projects, list_flows, run_flow, delete_flow, create_flow, update_flow, and configure_custom_auth - with scoped endpoints exposing progressively smaller subsets
How to install
Sign up at app.fastn.ai and connect your first connectors, such as Gmail, Slack, or GitHub. The recommended path is the hosted server, no installation needed, by pointing any MCP client at:
https://mcp.live.fastn.ai/shttp
Authentication is handled via MCP OAuth 2.1 automatically. To self-host instead:
pip install fastn-mcp-server
fastn-mcp --shttp --port 8000
Besides MCP OAuth 2.1, the server also supports authenticating with a Fastn auth token or API key passed via the Authorization header in your MCP client configuration.
Who it's for
Teams building AI agents or SaaS products that need governed, multi-tenant access to many third-party tools and systems - Slack, Jira, GitHub, Salesforce, and 200+ more - without building and maintaining OAuth and permission handling for each integration themselves. It is released under the MIT License.
Source README
Fastn MCP Server
Give your AI agents and apps secure, governed access to your customers' tools and systems through one multi-tenant MCP endpoint.
Part of Fastn, the embedded integration platform for SaaS products and AI agents. Fastn MCP Server is a production-ready Model Context Protocol (MCP) gateway that connects AI agents and apps to Slack, Jira, GitHub, Salesforce, HubSpot, Postgres, and 200+ more services, with fully managed auth, governed multi-tenant access, and sub-second execution.
Built on the Fastn SDK, this server exposes MCP tools that any compatible AI platform can use out of the box.
Why Fastn MCP Server?
| Feature | Description |
|---|---|
| 250+ Connectors | Slack, Jira, GitHub, Salesforce, HubSpot, Postgres, Stripe, Notion, Linear, and more |
| MCP Native | Works with Claude Desktop, Cursor, Lovable, Bolt, v0, and any MCP-compatible client |
| Fully Managed Auth | OAuth 2.1 for every connector, no token management, no app registration, no refresh handling |
| Governed Access | Role-based permissions, audit trails, and enterprise compliance controls |
| SOC 2 Certified | Enterprise-grade security and compliance built into the platform |
| Sub-Second Execution | Direct API calls through the Fastn platform with built-in caching and connection pooling |
| Multiple Transports | stdio (local), SSE, and Streamable HTTP for any deployment model |
| Production Ready | Docker support, health checks, structured logging, and OAuth 2.1 protected resource metadata |
| Flow Automation | Create, manage, and execute multi-step workflows that compose tools |
Quick Start
1. Sign up at app.fastn.ai
Create an account and connect your first connectors (Gmail, Slack, GitHub, etc.).
2. Connect your MCP client
Hosted server (recommended), no installation needed:
https://mcp.live.fastn.ai/shttp
Point any MCP client at this URL. Authentication is handled via MCP OAuth 2.1 automatically. See Client Configuration for Claude Desktop and Cursor examples.
Self-hosted, install and run your own instance:
pip install fastn-mcp-server
fastn-mcp --shttp --port 8000
Connecting to the MCP Server
Endpoints
Use the hosted server (mcp.live.fastn.ai) or your self-hosted instance. Each path exposes a different set of tools:
| Endpoint | Tools |
|---|---|
/shttp |
All 11 tools: find_tools, execute_tool, list_connectors, list_skills, list_projects, list_flows, run_flow, delete_flow, create_flow, update_flow, configure_custom_auth |
/shttp/tools |
5 tools: find_tools, execute_tool, list_connectors, list_skills, list_projects |
/shttp/tools/{project_id} |
4 tools: find_tools, execute_tool, list_connectors, list_skills |
/shttp/tools/{project_id}/{skill_id} |
3 tools: find_tools, execute_tool, list_connectors |
/sse, /sse/tools, etc. |
Same pattern for SSE transport |
Examples with the hosted server:
https://mcp.live.fastn.ai/shttp # All tools
https://mcp.live.fastn.ai/shttp/tools # Fastn tools only
https://mcp.live.fastn.ai/shttp/tools/{project_id} # Pre-set project
https://mcp.live.fastn.ai/shttp/tools/{project_id}/{skill_id} # Pre-set project + skill
Authentication
The MCP server supports three authentication methods. Get your credentials from app.fastn.ai.
MCP OAuth 2.1 (Recommended)
Standard MCP OAuth flow with PKCE. The server bridges to Fastn's identity provider automatically. Just point your client at the URL, you'll be prompted to authenticate:
{
"mcpServers": {
"tools": {
"url": "https://mcp.live.fastn.ai/shttp"
}
}
}
Token / API Key
Pass a Fastn auth token or API key via the Authorization header in your MCP client config:
{
"mcpServers": {
"tools": {
"url": "https://mcp.live.fastn.ai/shttp",
"headers": {
"Authorization": "Bearer <your-token-or-api-key>"
}
}
}
}
You can also pass x-project-id to scope requests to a specific project:
{
"mcpServers": {
"tools": {
"url": "https://mcp.live.fastn.ai/shttp",
"headers": {
"Authorization": "Bearer <your-token-or-api-key>",
"x-project-id": "<your-project-id>"
}
}
}
}
For local stdio transport, pass credentials as environment variables:
{
"mcpServers": {
"tools": {
"command": "fastn-mcp",
"args": ["--stdio"],
"env": {
"FASTN_API_KEY": "your-api-key",
"FASTN_PROJECT_ID": "your-project-id"
}
}
}
}
MCP Tools
The server exposes these tools to AI agents:
Fastn Tools
| Tool | Description |
|---|---|
find_tools |
Search for available connector tools by natural language prompt. Returns matching tools with IDs and input schemas. |
execute_tool |
Execute a connector tool by its ID with parameters. Returns the result directly. |
list_connectors |
Browse all 250+ available connectors in the registry, including ones not yet connected. |
list_skills |
List available skills in the project. |
list_projects |
List available projects for the authenticated user. |
Workflow: Browse connectors → list_connectors. Execute an action → find_tools → execute_tool. If find_tools returns nothing relevant → list_connectors (connector may need connecting).
Flow Management
| Tool | Description |
|---|---|
list_flows |
List saved automations (flows) in the project. |
run_flow |
Execute a saved flow by its ID. |
delete_flow |
Remove a flow from the project. |
create_flow |
(Under development) Create a flow from natural language. |
update_flow |
(Under development) Update an existing flow. |
Configuration
| Tool | Description |
|---|---|
configure_custom_auth |
Register a custom JWT auth provider (Auth0, Firebase, Supabase). |
Architecture
AI Agent (Claude, Cursor, Lovable)
│
▼
MCP Protocol (stdio / SSE / Streamable HTTP)
│
▼
┌─────────────────────────────┐
│ Fastn MCP Server │
│ ┌───────────────────────┐ │
│ │ Tool Discovery │ │ find_tools, list_connectors
│ │ Tool Execution │ │ execute_tool
│ │ Flow Management │ │ list/run/delete/create flows
│ │ Auth & Config │ │ OAuth 2.1, custom JWT
│ └───────────────────────┘ │
└─────────────────────────────┘
│
▼
Fastn SDK → Fastn API
│
▼
250+ Connectors (Slack, Jira, GitHub, Salesforce, Postgres, ...)
Connectors provide tools. Flows compose tools. Agents run flows and tools with reasoning.
Client Configuration
The JSON examples above work with any MCP client. Here are the config file locations:
| Client | Config File |
|---|---|
| Claude Desktop | claude_desktop_config.json |
| Cursor | .cursor/mcp.json in your project |
| Claude Code | .mcp.json in your project |
For Cursor, use the /shttp/tools endpoint to expose only Fastn tools (recommended for coding assistants):
{
"mcpServers": {
"tools": {
"url": "https://mcp.live.fastn.ai/shttp/tools"
}
}
}
Self-Hosting
Transport Modes
stdio (local), For pipe-based clients:
fastn-mcp --stdio
fastn-mcp --stdio --mode tools # Fastn tools only
fastn-mcp --stdio --mode tools --project ID # Fastn tools + pre-set project
fastn-mcp --stdio --mode tools --project ID --skill ID # Fastn tools + pre-set project and skill
SSE + Streamable HTTP (remote), For web-based AI platforms:
fastn-mcp --sse --shttp --port 8000
OAuth Setup
Remote transports use MCP OAuth 2.1 by default. The server implements RFC 9728 Protected Resource Metadata:
fastn-mcp --sse --shttp --port 8000
# OAuth endpoints auto-configured at /.well-known/oauth-protected-resource
Set the public URL for OAuth metadata:
fastn-mcp --sse --shttp --port 8000 --server-url https://mcp.example.com
To disable OAuth for local development:
fastn-mcp --sse --port 8000 --no-auth
Docker
docker build -t fastn-mcp .
docker run -p 8000:8000 fastn-mcp
docker compose up -d
Environment Variables
Server configuration for self-hosted deployments:
FASTN_MCP_PORT=8000
FASTN_MCP_HOST=0.0.0.0
FASTN_MCP_SERVER_URL=https://your-public-url
FASTN_MCP_TRANSPORT=both
FASTN_MCP_NO_AUTH=false
FASTN_MCP_VERBOSE=false
| Variable | Required | Description |
|---|---|---|
FASTN_MCP_PORT |
No | Server port (default: 8000) |
FASTN_MCP_HOST |
No | Bind address (default: 0.0.0.0) |
FASTN_MCP_SERVER_URL |
No | Public URL for OAuth metadata |
FASTN_MCP_NO_AUTH |
No | Set to true to disable OAuth (dev only) |
FASTN_MCP_TRANSPORT |
No | Transport mode: sse, shttp, both (default: both) |
FASTN_MCP_VERBOSE |
No | Set to true for debug logging |
Local Development with ngrok
For local development and testing only, use ngrok to expose your local server:
# Terminal 1: Start the MCP server
fastn-mcp --shttp --port 8000 --verbose
# Terminal 2: Start ngrok tunnel
ngrok http 8000
Then restart with the ngrok URL so OAuth metadata resolves:
fastn-mcp --shttp --port 8000 \
--server-url https://abc123.ngrok-free.dev \
--verbose
For production, deploy with Docker behind a reverse proxy with a real domain.
Development
Setup
git clone https://github.com/fastn-ai/fastn-mcp.git
cd fastn-mcp
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
Run Tests
pytest tests/ -q
Project Structure
fastn-mcp/
├── fastn_mcp/
│ ├── __init__.py # Package metadata
│ ├── __main__.py # CLI entry point
│ ├── server.py # MCP server, tools, handlers, routing
│ ├── auth.py # OAuth 2.1 provider (RFC 9728)
│ └── tools/ # Tool utilities
├── tests/
│ ├── test_server.py # 185+ tests covering all tools and transports
│ └── conftest.py # Test fixtures
├── Dockerfile # Production container
├── docker-compose.yml # Docker Compose for deployment
├── pyproject.toml # Python project configuration
└── README.md
CLI Reference
fastn-mcp [OPTIONS]
Transport:
--stdio Use stdio transport (Claude Desktop, Cursor)
--sse Enable SSE transport
--shttp Enable Streamable HTTP transport
Server:
--host HOST Bind address (default: 0.0.0.0)
--port PORT Port number (default: 8000)
--no-auth Disable OAuth (development only)
--server-url URL Public URL for OAuth metadata
Mode:
--mode {agent,tools} Tool mode for stdio: "agent" (all tools) or "tools" (Fastn tools only)
--project ID Pre-set project ID for stdio
--skill ID Pre-set skill ID for stdio (requires --project)
Debug:
-v, --verbose Enable debug logging
Supported Connectors
Fastn provides 250+ pre-built connectors including:
Communication: Slack, Microsoft Teams, Discord, Gmail, Outlook, SendGrid, Twilio
Project Management: Jira, Linear, Asana, Trello, Monday.com, ClickUp, Notion
Development: GitHub, GitLab, Bitbucket, PagerDuty, Sentry, Datadog
CRM & Sales: Salesforce, HubSpot, Pipedrive, Zoho CRM
Databases: PostgreSQL, MySQL, MongoDB, Redis, Supabase, Firebase
Cloud: AWS, Google Cloud, Azure, Cloudflare
Finance: Stripe, QuickBooks, Xero
And 200+ more, browse the full catalog at fastn.ai/integrations
Links
FAQ
Common questions
Discussion
Questions & comments · 0
Sign In Sign in to leave a comment.