Create powerful AI workflows by connecting multiple MCP servers including Markdown2doc, Notion, Firecrawl Web Search for enhanced automation capabilities in Klavis AI.
Convert markdown text to different file formats (pdf, docx, doc, html), based on Pandoc
Notion is a collaborative productivity and note-taking application
Advanced web crawling, scraping, and search capabilities powered by Firecrawl
Follow these steps to connect OpenAI to these MCP servers
Sign up for KlavisAI to access our MCP server management platform.
Add your desired MCP servers to OpenAI and configure authentication settings.
Verify your connections work correctly and start using your enhanced AI capabilities.
import json
import os
from openai import OpenAI
from klavis import Klavis
from klavis.types import McpServerName, ConnectionType, ToolFormat
# Initialize clients
openai_client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))
klavis_client = Klavis(api_key=os.getenv("KLAVIS_API_KEY"))
# Constants
OPENAI_MODEL = "gpt-4o-mini"
markdown2doc_mcp_instance = klavis_client.mcp_server.create_server_instance(
server_name=McpServerName.MARKDOWN2DOC,
user_id="1234",
platform_name="Klavis",
connection_type=ConnectionType.STREAMABLE_HTTP,
)
notion_mcp_instance = klavis_client.mcp_server.create_server_instance(
server_name=McpServerName.NOTION,
user_id="1234",
platform_name="Klavis",
connection_type=ConnectionType.STREAMABLE_HTTP,
)
firecrawl_web_search_mcp_instance = klavis_client.mcp_server.create_server_instance(
server_name=McpServerName.FIRECRAWL_WEB_SEARCH,
user_id="1234",
platform_name="Klavis",
connection_type=ConnectionType.STREAMABLE_HTTP,
)
# Get tools from all MCP servers
markdown2doc_tools = klavis_client.mcp_server.list_tools(
server_url=markdown2doc_mcp_instance.server_url,
connection_type=ConnectionType.STREAMABLE_HTTP,
format=ToolFormat.OPENAI,
)
notion_tools = klavis_client.mcp_server.list_tools(
server_url=notion_mcp_instance.server_url,
connection_type=ConnectionType.STREAMABLE_HTTP,
format=ToolFormat.OPENAI,
)
firecrawl_web_search_tools = klavis_client.mcp_server.list_tools(
server_url=firecrawl_web_search_mcp_instance.server_url,
connection_type=ConnectionType.STREAMABLE_HTTP,
format=ToolFormat.OPENAI,
)
# Combine all tools
all_tools = []
all_tools.extend(markdown2doc_tools)
all_tools.extend(notion_tools)
all_tools.extend(firecrawl_web_search_tools)
messages = [
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": user_message}
]
response = openai_client.chat.completions.create(
model=OPENAI_MODEL,
messages=messages,
tools=all_tools if all_tools else None
)
Everything you need to know about connecting to these MCP servers
Join developers who are already using KlavisAI to power their OpenAI applications with these MCP servers.
Start For Free