Skip to main content
Glama
amiradmin

LinkedIn MCP Server

by amiradmin

LinkedIn MCP Server

軽量なModel Context Protocol (MCP) サーバーで、MCP互換のAIアシスタントが認証済みのLinkedInプロフィールに公開テキスト投稿を行えるようにします。

アーキテクチャ

AI Assistant
     |
     | MCP / stdio
     v
LinkedIn MCP Server
     |
     | HTTPS REST API
     v
LinkedIn

Related MCP server: LinkedIn MCP Server

MCPツール

linkedin_create_post

認証済みのLinkedInプロフィールに公開テキスト投稿を行います。

入力:

{
  "text": "Hello from my MCP server 🚀"
}

成功すると、ツールはLinkedIn投稿IDを返します。

必要条件

  • Python 3.11+

  • 必要なAPI権限を持つLinkedInデベロッパーアプリケーション

  • 有効なLinkedInアクセストークン

  • 認証済み作者のLinkedInパーソンURN

依存関係のインストール:

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

認証情報

認証情報は意図的にGitの管理外に置かれています。

プロジェクトルートに以下のファイルを作成してください:

access_token.txt
person_urn.txt

access_token.txt にはLinkedInアクセストークンのみを含めてください。

person_urn.txt には次のような値を含めてください:

urn:li:person:YOUR_SUBJECT_ID

制限付きのパーミッションを設定:

chmod 600 access_token.txt person_urn.txt

トークン、OAuth認証情報、個人の認証情報ファイルをコミットしないでください。

MCPサーバーの実行

python -m src.linkedin_mcp.server

サーバーはSTDIOを使用するため、意図的に実行を継続し、MCP JSON-RPCメッセージを待機します。標準出力はMCPプロトコル用に予約されているため、アプリケーションログを標準出力に出力しないでください。

MCPインスペクター

ローカル開発用:

npx @modelcontextprotocol/inspector \
  python -m src.linkedin_mcp.server

その後、STDIOサーバーに接続し、インスペクターから linkedin_create_post を呼び出します。

テスト

実行:

pytest -q

セキュリティに関する注意事項

  • 機密情報はGitで無視されるローカルファイルに保存されます。

  • .env.example にはプレースホルダーのみが含まれています。

  • GitHubのプッシュ保護は有効にしたままにしてください。

  • LinkedInトークンが漏洩した場合は、直ちに失効/ローテーションしてください。

ポートフォリオの説明

LinkedIn公開機能を構造化されたAIツールとして公開する、プロダクション志向のMCPサーバーです。Model Context Protocol、OAuthベースのLinkedIn認証、安全なローカル認証情報の取り扱い、REST API統合を組み合わせています。

Related MCP Connectors

Related MCP Servers