LinkedIn Post Generator
STDIOAutomates generating LinkedIn posts from YouTube videos with transcript extraction and customization.
Automates generating LinkedIn posts from YouTube videos with transcript extraction and customization.
A Model Context Protocol (MCP) server that automates generating professional LinkedIn post drafts from YouTube videos. This tool streamlines content repurposing by extracting transcripts from YouTube videos, summarizing the content, and generating engaging LinkedIn posts tailored to your preferences.
Clone the repository:
git clone https://github.com/NvkAnirudh/LinkedIn-Post-Generator.git cd LinkedIn-Post-Generator
Install dependencies:
npm install
Create a .env file based on the example:
cp .env.example .env
Add your API keys to the .env file:
OPENAI_API_KEY=your_openai_api_key
YOUTUBE_API_KEY=your_youtube_api_key
Run the server:
npm run dev
Test with MCP Inspector:
npm run inspect
This MCP server is designed to work with Claude Desktop and other AI assistants that support the Model Context Protocol. To use it with Claude Desktop:
Configure Claude Desktop by editing the configuration file at ~/Library/Application Support/Claude/claude_desktop_config.json (Mac) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
{ "mcpServers": { "linkedin-post-generator": { "command": "npx", "args": [ "-y", "@smithery/cli@latest", "run", "@NvkAnirudh/linkedin-post-generator", "--key", "YOUR_SMITHERY_API_KEY", "--config", "{\"OPENAI_API_KEY\":\"YOUR_OPENAI_API_KEY\",\"YOUTUBE_API_KEY\":\"YOUR_YOUTUBE_API_KEY\"}", "--transport", "stdio" ] } } }
Replace:
YOUR_SMITHERY_API_KEY with your Smithery API keyYOUR_OPENAI_API_KEY with your OpenAI API keyYOUR_YOUTUBE_API_KEY with your YouTube API key (optional)Restart Claude Desktop
In Claude Desktop, you can now access the LinkedIn Post Generator tools without needing to set API keys again
The application requires API keys to function properly:
You can provide these keys in three ways:
When using with Claude Desktop and Smithery, the best approach is to include your API keys in the Claude Desktop configuration file as shown in the Using with Claude Desktop section. This way, the keys are automatically passed to the MCP server, and you don't need to set them again.
When running locally, you can set API keys as environment variables in a .env file:
OPENAI_API_KEY=your_openai_api_key
YOUTUBE_API_KEY=your_youtube_api_key
If you haven't provided API keys through the configuration or environment variables, you can set them directly through the MCP interface using the set_api_keys tool.
set_api_keysopenaiApiKey: Your OpenAI API key (required)youtubeApiKey: Your YouTube API key (optional)check_api_keysextract_transcriptyoutubeUrl: URL of the YouTube videosummarize_transcripttranscript: The video transcript texttone: Educational, inspirational, professional, or conversationalaudience: General, technical, business, or academicwordCount: Approximate word count for the summary (100-300)generate_linkedin_postsummary: Summary of the video contentvideoTitle: Title of the YouTube videospeakerName: Name of the speaker (optional)hashtags: Relevant hashtags (optional)tone: First-person, third-person, or thought-leaderincludeCallToAction: Whether to include a call to actionyoutube_to_linkedin_postyoutubeUrl: YouTube video URLtone: Desired tone for the postset_api_keys toolyoutube_to_linkedin_post tool with a YouTube URLThis server is deployed on Smithery, a platform for hosting and sharing MCP servers. The deployment configuration is defined in the smithery.yaml file.
To deploy your own instance:
npm install -g @smithery/cli
smithery deploy
Contributions are welcome and appreciated! Here's how you can contribute to the LinkedIn Post Generator:
git checkout -b feature/your-feature-name)git commit -m 'Add some feature')git push origin feature/your-feature-name)If you have ideas for new features or improvements:
Improvements to documentation are always welcome:
By contributing to this project, you agree that your contributions will be licensed under the project's MIT License.