An MCP server for interacting with WriteFreely API, enabling AI agents like Claude to perform blogging actions. Supports both self-hosted WriteFreely instances and the Write.as hosted service. This is a community-built, independent project.
Project description
writefreely-mcp-server
An MCP server for WriteFreely that enables AI agents to publish and manage content on WriteFreely instances (including self-hosted instances and Write.as).
Features
- Publish posts (anonymous or authenticated)
- Manage collections and posts
- Browse public feeds
- Support for Write.as and self-hosted WriteFreely instances
Installation
Installing uv or uvx
If you don't have uv or uvx installed, you can install them using one of the following methods:
macOS/Linux:
curl -LsSf https://astral.sh/uv/install.sh | sh
Windows (PowerShell):
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
Using Homebrew (macOS):
brew install uv
Using pip:
pip install uv
After installation, uvx will be available as part of uv. See the uv documentation for more details.
Using uvx (recommended)
uvx --from writefreely-mcp-server writefreely-mcp
Using uv
uv tool install writefreely-mcp-server
writefreely-mcp
Using pip
pip install writefreely-mcp-server
Configuration
Configure via environment variables:
WRITEFREELY_BASE_URL- Base URL (default:https://write.as)WRITEFREELY_ACCESS_TOKEN- Access token for authenticationWRITEFREELY_DEFAULT_LANGUAGE- Default language (default:en)
Getting an Access Token
curl -X POST https://write.as/api/auth/login \
-H "Content-Type: application/json" \
-d '{"alias": "your_username", "pass": "your_password"}'
MCP Client Configuration
{
"mcpServers": {
"writefreely": {
"command": "uvx",
"args": ["--from", "writefreely-mcp-server", "writefreely-mcp"],
"env": {
"WRITEFREELY_BASE_URL": "https://write.as",
"WRITEFREELY_ACCESS_TOKEN": "your_token_here"
}
}
}
}
Available Tools
login()- Authenticate with username/passwordpublish_post()- Create and publish a new postedit_post()- Update an existing postdelete_post()- Delete a postread_post()- Read a post by IDlist_my_posts()- List all your postslist_my_collections()- List all your collections/blogsbrowse_collection()- Browse posts in a collectionbrowse_public_feed()- Browse the public feed
License
MIT
Links
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file writefreely_mcp_server-0.1.2.tar.gz.
File metadata
- Download URL: writefreely_mcp_server-0.1.2.tar.gz
- Upload date:
- Size: 94.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9ba377cde7f13c717860014cb0dba8bb764edae5a138ad97ab41c43a58927ba9
|
|
| MD5 |
4f695236b0bede331be9d34230585791
|
|
| BLAKE2b-256 |
07ae23c10b8905f73f33c6d48186216e50e1392d67d14f291856bacd45c8d267
|
File details
Details for the file writefreely_mcp_server-0.1.2-py3-none-any.whl.
File metadata
- Download URL: writefreely_mcp_server-0.1.2-py3-none-any.whl
- Upload date:
- Size: 16.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.10.19
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b1fe930749ef880be8bffeb15425314b46d1670833ade5a45f96b781b16190b5
|
|
| MD5 |
b53bab03aa3a6c6e70274f0da3b3d27a
|
|
| BLAKE2b-256 |
c7446d27055d5795ef80f962bafd4182a3d6fb190a23d298c446ba82ab026558
|