№ 0830Skill
LinkedIn Publisher MCP connector for Muse
Open-source, stateless MCP connector that publishes explicitly approved text posts from Muse to LinkedIn, with two tools and no database or scheduler.
<div align="center"> <img src="assets/linkedin-publisher-logo.png" alt="" width="148" height="148"> # LinkedIn Publisher ### Drafting is easy. Publishing is the part that needs a gate. An open-source MCP connector for publishing explicitly approved text posts from Muse to LinkedIn. Stateless · No database · No scheduler · Two tools · Apache-2.0 <br> [](https://www.python.org/) [](https://modelcontextprotocol.io/) [](LICENSE) <sub>Independent open-source project. Not affiliated with or endorsed by LinkedIn or Meta.</sub> </div> <br> # An agent with your password is not a feature. An AI assistant can draft a good LinkedIn post. That part is solved. The unsolved part is the last inch: handing something that writes fluently the ability to speak publicly, as you, on a network where your name is the whole point. Most integrations answer this by asking for broad access and promising to behave. This one answers it by being too small to misbehave. **Two tools. One of them is read-only.** The other publishes exactly the text it was handed, once, immediately, and then forgets it. <br> # What it does ``` You "Write something about what I shipped today." ↓ Muse drafts it · shows you · waits ↓ You read it · change it · approve it ↓ LinkedIn Publisher ← the only step that touches LinkedIn ↓ LinkedIn Posts API ↓ Your profile ``` The connector enters at the second-to-last line and leaves immediately after. It does **not** write the post. It does **not** decide what is worth posting. It does **not** publish on its own initiative, and it has nowhere to queue anything for later. <br> # What it is not This connector is not trying to become: - a scheduler - a content generator - a social media manager - an analytics dashboard - an engagement bot - a place your drafts live The absence of a scheduler is the most deliberate decision in the project. An earlier iteration of this codebase *had* one — durable worker, `SELECT … FOR UPDATE SKIP LOCKED`, retries, the lot. It worked. It is not shipped, because working was never the objection: a queue publishes when you are not there to change your mind, and it needs a database to






ChatForm
Tgmlabs