Skip to content
Navigation Menu
Sign in
Appearance settings
Platform
AI CODE CREATION
GitHub Copilot
Write better code with AI
GitHub Copilot app
Direct agents from issue to merge
MCP Registry
Integrate external tools
DEVELOPER WORKFLOWS
Actions
Automate any workflow
Codespaces
Instant dev environments
Issues
Plan and track work
Code Review
Manage code changes
Code Quality
Enforce quality at merge
APPLICATION SECURITY
GitHub Advanced Security
Find and fix vulnerabilities
Code security
Secure your code as you build
Secret protection
Stop leaks before they start
EXPLORE
Why GitHub
Documentation
Blog
Changelog
Marketplace
View all features
Solutions
BY COMPANY SIZE
Enterprises
Small and medium teams
Startups
Nonprofits
BY USE CASE
App Modernization
DevSecOps
DevOps
CI/CD
View all use cases
BY INDUSTRY
Healthcare
Financial services
Manufacturing
Government
View all industries
View all solutions
Resources
EXPLORE BY TOPIC
AI
Software Development
DevOps
Security
View all topics
EXPLORE BY TYPE
Customer stories
Events & webinars
Ebooks & reports
Business insights
GitHub Skills
SUPPORT & SERVICES
Documentation
Customer support
Community forum
Trust center
Partners
View all resources
Open Source
COMMUNITY
GitHub Sponsors
Fund open source developers
PROGRAMS
Security Lab
Maintainer Community
GitHub Stars
Archive Program
REPOSITORIES
Topics
Trending
Collections
Enterprise
ENTERPRISE SOLUTIONS
Enterprise platform
AI-powered developer platform
AVAILABLE ADD-ONS
GitHub Advanced Security
Enterprise-grade security features
Copilot for Business
Enterprise-grade AI features
Premium Support
Enterprise-grade 24/7 support
Pricing
Search
/
Sign in
Sign up
Appearance settings
You signed in with another tab or window.
Reload
to refresh your session.
You signed out in another tab or window.
Reload
to refresh your session.
You switched accounts on another tab or window.
Reload
to refresh your session.
Dismiss alert
{{ message }}
marcomoauro
/
substack-mcp
Public
Notifications
You must be signed in to change notification settings
Fork
16
Star
80
Code
Issues
0
Pull requests
0
Actions
Projects
Security and quality
0
Insights
Additional navigation options
Code
Issues
Pull requests
Actions
Projects
Security and quality
Insights
Add upload_image: re-host an external image on Substack
- #20
#20
Merged
marcomoauro
merged 12 commits into
main
marcomoauro/substack-mcp:main
from
image-upload
marcomoauro/substack-mcp:image-upload
Copy head branch name to clipboard
Aug 8, 2026
Conversation
Commits
12
(12)
Checks
Files changed
Merged
Add upload_image: re-host an external image on Substack
#20
marcomoauro
merged 12 commits into
main
marcomoauro/substack-mcp:main
from
image-upload
marcomoauro/substack-mcp:image-upload
Copy head branch name to clipboard
Commits
Commits on Aug 8, 2026
Add the image-upload design spec
Show description for 7bcf676
marcomoauro
and
claude
committed
7bcf676
View commit details
Copy full SHA for 7bcf676
Browse repository at this point
Add the upload_image implementation plan
Show description for cec4fb3
marcomoauro
and
claude
committed
cec4fb3
View commit details
Copy full SHA for cec4fb3
Browse repository at this point
Add SubstackApi.uploadImage: JSON data-URI POST to /api/v1/image
Show description for 5877830
marcomoauro
and
claude
committed
5877830
View commit details
Copy full SHA for 5877830
Browse repository at this point
Add upload_image tool: fetch, encode as data URI, upload
marcomoauro
committed
8acd7a7
View commit details
Copy full SHA for 8acd7a7
Browse repository at this point
Harden upload_image: validate redirect hops, adopt arg-logging, cleanups
Show description for c96cea1
marcomoauro
committed
c96cea1
View commit details
Copy full SHA for c96cea1
Browse repository at this point
Test upload_image content-type and HEIC rejection
marcomoauro
committed
43dff30
View commit details
Copy full SHA for 43dff30
Browse repository at this point
Test upload_image scheme allow-list and DNS-resolved SSRF guard
marcomoauro
committed
344a981
View commit details
Copy full SHA for 344a981
Browse repository at this point
Test upload_image size cap at MAX_IMAGE_BYTES
marcomoauro
committed
effbd88
View commit details
Copy full SHA for effbd88
Browse repository at this point
Test upload_image logs intent; elide base64 data URIs in the logger
Show description for 60ddb04
marcomoauro
and
claude
committed
60ddb04
View commit details
Copy full SHA for 60ddb04
Browse repository at this point
Register upload_image in the tools registry
Show description for fc69650
marcomoauro
and
claude
committed
fc69650
View commit details
Copy full SHA for fc69650
Browse repository at this point
Correct the docs: images can be uploaded via upload_image
Show description for a66f71d
marcomoauro
and
claude
committed
a66f71d
View commit details
Copy full SHA for a66f71d
Browse repository at this point
Harden upload_image from the final review: IPv6, size, timeout
Show description for ba0fd57
marcomoauro
and
claude
committed
ba0fd57
View commit details
Copy full SHA for ba0fd57
Browse repository at this point
You can’t perform that action at this time.