Post to Social Media from VS Code with GitHub Copilot
GitHub Copilot can write and schedule your social media posts from inside VS Code once you add PostAxis as an HTTP MCP server and switch Copilot Chat to Agent mode. You add a short .vscode/mcp.json file, sign in to PostAxis once, and then ask Copilot to announce a PR or a release in plain English. This is for developers and dev-tool teams who already review changes in Copilot Chat and want the announcement to come from the same place.
A useful side effect of doing it in VS Code: Copilot asks you to confirm each tool call before it runs. Nothing gets posted without you clicking through, which makes it a comfortable first step into agent-driven posting.
What you can automate with GitHub Copilot
- PR announcements. Copilot reads the pull request you are on, writes an X post about the change and schedules it for later in the day.
- Release notes for every channel. One request produces a short X post, a LinkedIn write-up and the full notes for your Telegram channel, all scheduled together.
- Team-reviewed drafts. Copilot saves posts as drafts so a teammate can approve them in the PostAxis calendar before they go out.
- Launch-week schedules. Copilot plans a week of posts around a launch and checks them all against network rules before saving any.
- Queue reviews. Ask what is scheduled this week and have Copilot move, edit or delete posts.
What you need
- A PostAxis account. Every plan has a 7-day free trial and includes MCP access with OAuth, so you don't need an API key.
- Social accounts connected under Accounts in PostAxis: X, LinkedIn, Threads, Telegram, Instagram, TikTok, YouTube or Facebook Pages.
- VS Code with GitHub Copilot. MCP tools are used through Copilot's Agent mode, so Copilot is required.
- A repository with something to talk about: a PR, a tag, or a
CHANGELOG.md.
How to connect VS Code Copilot to PostAxis (step by step)
- Create your PostAxis account. Sign up at app.postaxis.io. Every plan starts with a 7-day free trial and includes MCP access.
- Connect your social accounts. Open Accounts in PostAxis and connect the networks you post to. Copilot can only post to accounts connected here, and it never sees your social media passwords.
- Add the server. Run "MCP: Add Server" from the Command Palette and choose HTTP, or create
.vscode/mcp.jsonin your project with this block:
{
"servers": {
"postaxis": {
"type": "http",
"url": "https://postaxis.io/api/mcp"
}
}
}
Note that VS Code uses a top-level servers key, not mcpServers. If the file already lists other servers, add only the postaxis entry.
- Start it and sign in. Click Start in the CodeLens shown above the server in
mcp.json. VS Code asks to authenticate; allow it, sign in to PostAxis in the browser and approve. - Switch Copilot to Agent mode. Open Copilot Chat and pick Agent from the mode dropdown. Click the tools icon and check that the PostAxis tools are listed and enabled.
- Check it works. Ask:
Which accounts can you post to?
Copilot asks to run list_accounts. Confirm, and it lists your connected profiles.
Because .vscode/mcp.json lives in the repo, you can commit it so the whole team gets PostAxis in Copilot. Each person still signs in with their own PostAxis account.
5 workflows you can copy
Announce the PR you just reviewed
The simplest one, and the one you will use most. Run it with the PR branch checked out.
Write an X post about the change in this PR for people who use our CLI.
Lead with what they can do now. Keep it under 240 characters and add the docs link
https://example.com/docs/export. Schedule it for 16:00 Europe/London today.
Copilot reads the changed files, calls list_accounts, checks get_platform_rules for X, then asks you to confirm create_post. You get a reply like: "Scheduled an X post for 16:00 today (176 characters). Want a LinkedIn version as well?"
Ship release notes to three channels at once
When a version is tagged, each network wants a different shape of the same news.
Use the 3.1.0 section of CHANGELOG.md. Write one post for:
- X: the headline change in one or two sentences
- LinkedIn: 3 short paragraphs on the problem, the fix, and who benefits
- Telegram: the full list of changes, grouped by New, Improved, Fixed
Schedule all three for tomorrow at 14:00 America/Los_Angeles.
Copilot calls list_accounts and get_platform_rules, then makes one create_post call that targets all three accounts with a separate caption for each. One post, one schedule, one post ID you can find in the calendar.
Attach a screenshot you already have
Release posts do better with a picture of the thing. PostAxis does not create images, but Copilot can attach one you have.
Take docs/images/dashboard-v3.png from this repo, upload it, and attach it to a LinkedIn
post announcing the new dashboard. Save the post as a draft.
For a local file, Copilot calls create_upload_link, which returns a one-time upload link, uploads the file and then calls create_post with the media and draft status. If the image is already online, it uses upload_media_from_url with the public URL instead.
Draft posts for a teammate to approve
In a team, the developer who shipped the feature is rarely the person who owns the brand account.
Draft an X post and a LinkedIn post about the feature on this branch.
Save both as drafts, don't schedule them. Then give me a one-line summary
I can paste into our team chat so Maria knows they are ready to review.
Copilot calls create_post with draft status. The drafts appear under Drafts in PostAxis, where your teammate can edit and schedule them.
Plan a launch week and check it before saving
For a bigger release, lay out the whole week and validate it in one go.
We launch v4 on Monday. Plan 6 posts across X and LinkedIn from Monday to Friday,
9:30 America/New_York: the announcement, two feature deep-dives, a docs post,
a thank-you to beta testers and a recap. First validate the whole plan without saving,
show me any problems, and only save once I say yes.
Copilot calls create_posts_bulk with validate_only set to true. That checks every post against every network's rules and saves nothing. After you approve, it runs the same call for real. Bulk calls take up to 50 posts and cannot publish immediately, which suits a planned week anyway.
Network limits Copilot works within
| Network | Caption limit | Media rules |
|---|---|---|
| X (Twitter) | 280 characters | Text-only allowed; up to 4 images or one video |
| 3,000 characters | Text-only allowed; up to 9 images or one video | |
| Telegram | 4,096 characters (1,024 with media) | Text-only allowed; up to 10 images or one video |
| Threads | 500 characters | Text-only allowed; up to 10 images or one video |
Note the Telegram rule: if you attach a screenshot, the caption drops to 1,024 characters, so a full changelog has to go out as text only. PostAxis checks these limits before saving any post and returns an error that says exactly what to change. Copilot reads it and can fix the post on the next attempt.
Tips for better posts
- Put your announcement style in
.github/copilot-instructions.md. Copilot reads this repository instructions file automatically. Add your tone, the docs URL, a rule like "no hashtags on LinkedIn", and your default timezone. - Save the routine as a prompt file. Recent VS Code versions support reusable prompt files (for example under
.github/prompts/) that you run from chat with a slash command. An "announce" prompt keeps every release post consistent. Check the VS Code docs for the current file location, as it has changed between versions. - Turn off tools you don't need in a chat. The tools picker lets you enable only some PostAxis tools. For a review-only session, leave just
list_postsandget_poston. - Validate before bulk scheduling. Ask for
validate_onlyfirst on any plan with more than two or three posts. - Always include the timezone. Write "16:00 Europe/London", not "4pm".
- Read the confirmation dialog. It shows the tool and its arguments. It is your last look at the caption and the time before it is saved.
Troubleshooting
Copilot doesn't use PostAxis. MCP tools only work in Agent mode. Ask and Edit modes won't call them. Switch the Copilot Chat mode dropdown to Agent and check the tools icon.
The server won't start. Check that the file uses servers (not mcpServers) and "type": "http", and that the JSON is valid. Then click Start in the CodeLens again.
401 Unauthorized or "sign in again". The sign-in expired or was revoked. Restart the server from the CodeLens and sign in again.
Copilot says no accounts are connected. Connect at least one account under Accounts in PostAxis. With several workspaces, name the one to use: "use my Acme workspace".
A post was rejected before saving. PostAxis checks caption length, media count and video format first. Ask Copilot to fix what the error describes and try again.
FAQ
Can GitHub Copilot post to social media?
Yes, through MCP. With PostAxis added to VS Code, Copilot's Agent mode can draft, schedule and publish posts to X, LinkedIn, Threads, Telegram, Instagram, TikTok, YouTube Shorts and Facebook Pages you connected in PostAxis.
Does it work in Copilot's Ask or Edit mode?
No. MCP tools are used in Agent mode only. Switch the mode dropdown in Copilot Chat to Agent.
Do I need a Copilot subscription?
You need GitHub Copilot, because MCP tools in VS Code are used through Copilot's Agent mode. On the PostAxis side, MCP access with OAuth is included in every plan, and every plan starts with a 7-day free trial.
Does Copilot see my social media passwords?
No. Social accounts are connected inside PostAxis, and VS Code signs in to PostAxis with OAuth. You can revoke Copilot's access anytime under Settings → API keys → Connected agents.
Can I share the setup with my team?
Yes. Commit .vscode/mcp.json to the repository. Everyone gets the PostAxis server, and each person signs in to their own PostAxis account the first time they start it.
Will Copilot post without asking me?
By default, Copilot asks you to confirm each tool call before it runs. You can also use drafts so nothing is scheduled until someone reviews it in the PostAxis calendar.
Add the mcp.json block above, switch to Agent mode, and ask Copilot to draft a post about the last thing you merged. The VS Code Copilot agent page has the short version of the setup, the MCP reference documents all 11 tools, and the complete guide to AI agents for social media helps if you are comparing agents. Using a different editor? See the guides for Cursor and Windsurf. Ready to try it? Start your free trial.
Ready to simplify your social media?
PostAxis helps builders and creators publish to all platforms from one dashboard with scheduling, cross-posting, and automation.
Join the waitlist →