Mastodon MCP
A. 模型上下文协议 提供与Mastodon交互工具的服务器。目前支持创建带有可选媒体附件的toot。
特性
- 创建具有可自定义可见性和内容警告的图标
- 上传并附加媒体文件(图像、视频、音频)
- 在媒体附件中添加alt文本/描述
- 为未来时间安排时间
- 使用环境变量或1Password CLI进行安全凭据管理
先决条件
- Node.js 18+
- pnpm
- Mastodon帐户和API访问令牌
- 可选的1Password命令行界面(
op)如果使用1Password进行凭据管理,请安装和配置。
安装
# Clone the repository
git clone [repository-url]
cd mastodon-mcp
# Install dependencies
pnpm install
# Build the project
pnpm build配置
该工具需要Mastodon API令牌。您可以通过以下方式之一提供此令牌:
- 环境变量(为简单起见,建议使用):
设置 MASTODON_ACCESS_TOKEN 环境变量:
export MASTODON_ACCESS_TOKEN="your_mastodon_api_token"- 1密码:将您的令牌存储在:
- op://Personal/Floss.Social Key/notesPlain
您可以通过环境变量设置Mastodon实例URL:
export MASTODON_INSTANCE_URL="https://your.instance.social"如果未设置,则默认为 https://floss.social.
用法
启动MCP服务器:
pnpm start服务器公开了一个工具 mastodon_create_toot 具有以下参数:
content(必填):您的toot文本内容visibility:“公共”、“未列出”、“私人”或“直接”之一(默认值:“公开”)sensitive:敏感内容的布尔标志(默认值:false)spoiler_text:内容前显示警告文本(默认值:“”)media_file:要附加的媒体文件的路径media_description:附加媒体的Alt文本/描述scheduled_at:可选的ISO 8601日期时间,用于为未来时间安排toot(例如,“2024-07-04T10:00:00-07:00”)
MCP检查器使用示例
- 启动检查器:
npx @modelcontextprotocol/inspector node dist/mcp-server.js- 打开http://localhost:5173在浏览器中
- 使用具有以下参数的工具:
{
"content": "Hello from MCP!",
"visibility": "public",
"media_file": "/path/to/image.jpg",
"media_description": "A beautiful sunset",
"scheduled_at": "2025-01-01T12:00:00Z"
}发展
# Run in development mode with auto-reloading
pnpm dev
# Build the project
pnpm build
# Run the built server
pnpm start安全
- 代码库中没有硬编码凭据
- API令牌可以通过环境变量进行安全管理,也可以从1Password中检索。
- API响应是git-ignored,以防止意外的凭据泄漏
许可证
国际协调委员会
