Crawler Summary

textforge answer-first brief

Safely automate your email with AI. TextForge connects OpenClaw to your Gmail with human approval for every draft. --- name: textforge description: "Safely automate your email with AI. TextForge connects OpenClaw to your Gmail with human approval for every draft." metadata: openclaw: emoji: ✉️ homepage: https://textforge.net requires: bins: ["mcporter"] install: - id: node kind: node package: mcporter bins: ["mcporter"] label: "Install mcporter (required for MCP server access)" --- TextForge Skill TextForge lets your OpenClaw age Capability contract not published. No trust telemetry is available yet. Last updated 2/25/2026.

Freshness

Last checked 2/25/2026

Best For

textforge is best for read workflows where MCP and OpenClaw compatibility matters.

Not Ideal For

Contract metadata is missing or unavailable for deterministic execution.

Evidence Sources Checked

editorial-content, GITHUB OPENCLEW, runtime-metrics, public facts pack

Claim this agent
Agent DossierGitHubSafety: 89/100

textforge

Safely automate your email with AI. TextForge connects OpenClaw to your Gmail with human approval for every draft. --- name: textforge description: "Safely automate your email with AI. TextForge connects OpenClaw to your Gmail with human approval for every draft." metadata: openclaw: emoji: ✉️ homepage: https://textforge.net requires: bins: ["mcporter"] install: - id: node kind: node package: mcporter bins: ["mcporter"] label: "Install mcporter (required for MCP server access)" --- TextForge Skill TextForge lets your OpenClaw age

MCPself-declared
OpenClawself-declared

Public facts

4

Change events

1

Artifacts

0

Freshness

Feb 25, 2026

Verifiededitorial-contentNo verified compatibility signals

Capability contract not published. No trust telemetry is available yet. Last updated 2/25/2026.

Trust evidence available

Trust score

Unknown

Compatibility

MCP, OpenClaw

Freshness

Feb 25, 2026

Vendor

Textforge App

Artifacts

0

Benchmarks

0

Last release

Unpublished

Executive Summary

Key links, install path, and a quick operational read before the deeper crawl record.

Verifiededitorial-content

Summary

Capability contract not published. No trust telemetry is available yet. Last updated 2/25/2026.

Setup snapshot

git clone https://github.com/textforge-app/openclaw-textforge.git
  1. 1

    Setup complexity is LOW. This package is likely designed for quick installation with minimal external side-effects.

  2. 2

    Final validation: Expose the agent to a mock request payload inside a sandbox and trace the network egress before allowing access to real customer data.

Evidence Ledger

Everything public we have scraped or crawled about this agent, grouped by evidence type with provenance.

Verifiededitorial-content
Vendor (1)

Vendor

Textforge App

profilemedium
Observed Feb 25, 2026Source linkProvenance
Compatibility (1)

Protocol compatibility

MCP, OpenClaw

contractmedium
Observed Feb 25, 2026Source linkProvenance
Security (1)

Handshake status

UNKNOWN

trustmedium
Observed unknownSource linkProvenance
Integration (1)

Crawlable docs

6 indexed pages on the official domain

search_documentmedium
Observed Apr 15, 2026Source linkProvenance

Release & Crawl Timeline

Merged public release, docs, artifact, benchmark, pricing, and trust refresh events.

Self-declaredagent-index

Artifacts Archive

Extracted files, examples, snippets, parameters, dependencies, permissions, and artifact metadata.

Self-declaredGITHUB OPENCLEW

Extracted files

0

Examples

4

Snippets

0

Languages

typescript

Parameters

Executable Examples

bash

npm install -g mcporter

bash

mcporter config add textforge https://textforge.net/mcp \
  --header "Authorization: Bearer $TEXTFORGE_TOKEN"

bash

mcporter call textforge.list_threads limit:5

json

{
  "subject": "Follow-up on our meeting",
  "body": "Hi Tom,<br><br>Thanks for the productive discussion yesterday...<br><br>Thanks,<br>Aaron",
  "bodyFormat": "Html",
  "toRecipients": "tom@example.com",
  "threadId": "thread-abc123"
}

Docs & README

Full documentation captured from public sources, including the complete README when available.

Self-declaredGITHUB OPENCLEW

Docs source

GITHUB OPENCLEW

Editorial quality

ready

Safely automate your email with AI. TextForge connects OpenClaw to your Gmail with human approval for every draft. --- name: textforge description: "Safely automate your email with AI. TextForge connects OpenClaw to your Gmail with human approval for every draft." metadata: openclaw: emoji: ✉️ homepage: https://textforge.net requires: bins: ["mcporter"] install: - id: node kind: node package: mcporter bins: ["mcporter"] label: "Install mcporter (required for MCP server access)" --- TextForge Skill TextForge lets your OpenClaw age

Full README

name: textforge description: "Safely automate your email with AI. TextForge connects OpenClaw to your Gmail with human approval for every draft." metadata: openclaw: emoji: ✉️ homepage: https://textforge.net requires: bins: ["mcporter"] install: - id: node kind: node package: mcporter bins: ["mcporter"] label: "Install mcporter (required for MCP server access)"

TextForge Skill

TextForge lets your OpenClaw agent safely automate your Gmail. Your agent can read threads, draft replies, and manage your inbox — but nothing sends without your approval.

Why TextForge?

OpenClaw agents with direct email access face the "lethal trifecta":

  • Access to private data (your emails)
  • Exposure to untrusted content (incoming messages)
  • Ability to communicate externally (send emails)

TextForge breaks this chain. Every draft queues for your review. You see it, you edit it, you approve it — or you don't.

Setup

1. Install mcporter

npm install -g mcporter

2. Configure TextForge MCP Server

mcporter config add textforge https://textforge.net/mcp \
  --header "Authorization: Bearer $TEXTFORGE_TOKEN"

3. Get Your API Token

  1. Sign up at https://textforge.net/login
  2. Generate token at https://textforge.net/settings/tokens
  3. Set environment variable: export TEXTFORGE_TOKEN="your-token"

4. Test

mcporter call textforge.list_threads limit:5

Available Tools

mcp__textforge__create_draft

Create an email draft for human approval.

Parameters:

  • subject (string, required): Email subject line
  • body (string, required): Email body (HTML format, use <br> for line breaks)
  • bodyFormat (string): "Html" or "Markdown" (default: "Html")
  • toRecipients (string, required): Comma-separated recipient emails
  • ccRecipients (string, optional): Comma-separated CC emails
  • bccRecipients (string, optional): Comma-separated BCC emails
  • threadId (string, optional): Reply to existing thread
  • scheduledFor (string, optional): ISO 8601 datetime for scheduled send

Example:

{
  "subject": "Follow-up on our meeting",
  "body": "Hi Tom,<br><br>Thanks for the productive discussion yesterday...<br><br>Thanks,<br>Aaron",
  "bodyFormat": "Html",
  "toRecipients": "tom@example.com",
  "threadId": "thread-abc123"
}

Note: Drafts are automatically submitted for approval upon creation.

mcp__textforge__update_draft

Update an existing draft. Always use this instead of deleting/recreating — drafts in PendingApproval status cannot be deleted.

Parameters:

  • draftId (string, required): The draft ID to update
  • subject (string, optional): Updated subject
  • body (string, optional): Updated body
  • bodyFormat (string, optional): "Html" or "Markdown"
  • toRecipients (string, optional): Updated recipients
  • ccRecipients (string, optional): Updated CC
  • bccRecipients (string, optional): Updated BCC

mcp__textforge__list_threads

List recent email threads from your inbox.

Parameters:

  • limit (number, optional): Max threads to return (default: 20)
  • label (string, optional): Filter by label (e.g., "INBOX", "SENT")

mcp__textforge__get_thread

Get full details of a specific email thread.

Parameters:

  • threadId (string, required): The thread ID

mcp__textforge__search_threads_by_contact

Search threads by contact email address.

Parameters:

  • email (string, required): Contact email to search for

mcp__textforge__search_threads

Search your inbox with Gmail-style queries.

Parameters:

  • query (string, required): Search query (e.g., "from:boss@company.com after:2024-01-01")
  • limit (number, optional): Max results (default: 20)

mcp__textforge__sync_inbox

Trigger an immediate inbox synchronization.

Parameters:

  • fullSync (boolean, optional): Force full history sync (default: false)

Email Composition Best Practices

Formatting

  • Use <br> tags for line breaks, NOT <p> tags (creates double spacing)
  • Use <br><br> between paragraphs
  • Set bodyFormat: "Html" for all drafts

Writing Style

  • Never use em dashes (—) — immediate LLM tell
  • Be direct — no "if you don't mind my asking" hedging
  • Be specific — use company names, product names, "cancel" not "non-renewal"
  • Address recipients directly — if CC'd, speak to them by name
  • No email signatures — TextForge adds them automatically

Subject Lines

Be specific and actionable:

  • ❌ "Checking In"
  • ✅ "[Company] Phobos License Renewal - April 2026"

Workflow

  1. Find contextsearch_threads_by_contact or get_thread
  2. Draft emailcreate_draft with bodyFormat: "Html"
  3. User gets notified — Slack, Discord, or webhook with draft preview
  4. User reviews/approves — Edit in TextForge UI, hit send
  5. If edits needed — Use update_draft, never delete/recreate

Safety Features

  • Human-in-the-loop: Every email requires approval
  • Scoped tokens: Each agent gets its own API token
  • Audit trail: Every action logged
  • Pass-through architecture: Email content never stored on TextForge servers

Pricing

  • Solo: $9.99/month — 20 drafts/day, 2 webhooks
  • Pro: $19.99/month — Unlimited drafts, 10 webhooks, full inbox history

Learn More

  • Website: https://textforge.net
  • OpenClaw Use Case: https://textforge.net/use-cases/openclaw
  • MCP Docs: https://textforge.net/docs/mcp

Contract & API

Machine endpoints, protocol fit, contract coverage, invocation examples, and guardrails for agent-to-agent use.

MissingGITHUB OPENCLEW

Contract coverage

Status

missing

Auth

None

Streaming

No

Data region

Unspecified

Protocol support

MCP: self-declaredOpenClaw: self-declared

Requires: none

Forbidden: none

Guardrails

Operational confidence: low

No positive guardrails captured.
Invocation examples
curl -s "https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/snapshot"
curl -s "https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/contract"
curl -s "https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/trust"

Reliability & Benchmarks

Trust and runtime signals, benchmark suites, failure patterns, and practical risk constraints.

Missingruntime-metrics

Trust signals

Handshake

UNKNOWN

Confidence

unknown

Attempts 30d

unknown

Fallback rate

unknown

Runtime metrics

Observed P50

unknown

Observed P95

unknown

Rate limit

unknown

Estimated cost

unknown

Do not use if

Contract metadata is missing or unavailable for deterministic execution.
No benchmark suites or observed failure patterns are available.

Media & Demo

Every public screenshot, visual asset, demo link, and owner-provided destination tied to this agent.

Missingno-media
No screenshots, media assets, or demo links are available.

Related Agents

Neighboring agents from the same protocol and source ecosystem for comparison and shortlist building.

Self-declaredprotocol-neighbors
GITLAB_AI_CATALOGgitlab-mcp

Rank

83

A Model Context Protocol (MCP) server for GitLab

Traction

No public download signal

Freshness

Updated 2d ago

MCP
GITLAB_PUBLIC_PROJECTSgitlab-mcp

Rank

80

A Model Context Protocol (MCP) server for GitLab

Traction

No public download signal

Freshness

Updated 2d ago

MCP
GITLAB_AI_CATALOGrmcp-openapi

Rank

74

Expose OpenAPI definition endpoints as MCP tools using the official Rust SDK for the Model Context Protocol (https://github.com/modelcontextprotocol/rust-sdk)

Traction

No public download signal

Freshness

Updated 2d ago

MCP
GITLAB_AI_CATALOGrmcp-actix-web

Rank

72

An actix_web backend for the official Rust SDK for the Model Context Protocol (https://github.com/modelcontextprotocol/rust-sdk)

Traction

No public download signal

Freshness

Updated 2d ago

MCP
Machine Appendix

Contract JSON

{
  "contractStatus": "missing",
  "authModes": [],
  "requires": [],
  "forbidden": [],
  "supportsMcp": false,
  "supportsA2a": false,
  "supportsStreaming": false,
  "inputSchemaRef": null,
  "outputSchemaRef": null,
  "dataRegion": null,
  "contractUpdatedAt": null,
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Invocation Guide

{
  "preferredApi": {
    "snapshotUrl": "https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/snapshot",
    "contractUrl": "https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/contract",
    "trustUrl": "https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/trust"
  },
  "curlExamples": [
    "curl -s \"https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/snapshot\"",
    "curl -s \"https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/contract\"",
    "curl -s \"https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/trust\""
  ],
  "jsonRequestTemplate": {
    "query": "summarize this repo",
    "constraints": {
      "maxLatencyMs": 2000,
      "protocolPreference": [
        "MCP",
        "OPENCLEW"
      ]
    }
  },
  "jsonResponseTemplate": {
    "ok": true,
    "result": {
      "summary": "...",
      "confidence": 0.9
    },
    "meta": {
      "source": "GITHUB_OPENCLEW",
      "generatedAt": "2026-04-17T01:40:56.334Z"
    }
  },
  "retryPolicy": {
    "maxAttempts": 3,
    "backoffMs": [
      500,
      1500,
      3500
    ],
    "retryableConditions": [
      "HTTP_429",
      "HTTP_503",
      "NETWORK_TIMEOUT"
    ]
  }
}

Trust JSON

{
  "status": "unavailable",
  "handshakeStatus": "UNKNOWN",
  "verificationFreshnessHours": null,
  "reputationScore": null,
  "p95LatencyMs": null,
  "successRate30d": null,
  "fallbackRate": null,
  "attempts30d": null,
  "trustUpdatedAt": null,
  "trustConfidence": "unknown",
  "sourceUpdatedAt": null,
  "freshnessSeconds": null
}

Capability Matrix

{
  "rows": [
    {
      "key": "MCP",
      "type": "protocol",
      "support": "unknown",
      "confidenceSource": "profile",
      "notes": "Listed on profile"
    },
    {
      "key": "OPENCLEW",
      "type": "protocol",
      "support": "unknown",
      "confidenceSource": "profile",
      "notes": "Listed on profile"
    },
    {
      "key": "read",
      "type": "capability",
      "support": "supported",
      "confidenceSource": "profile",
      "notes": "Declared in agent profile metadata"
    }
  ],
  "flattenedTokens": "protocol:MCP|unknown|profile protocol:OPENCLEW|unknown|profile capability:read|supported|profile"
}

Facts JSON

[
  {
    "factKey": "docs_crawl",
    "category": "integration",
    "label": "Crawlable docs",
    "value": "6 indexed pages on the official domain",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  },
  {
    "factKey": "vendor",
    "category": "vendor",
    "label": "Vendor",
    "value": "Textforge App",
    "href": "https://github.com/textforge-app/openclaw-textforge",
    "sourceUrl": "https://github.com/textforge-app/openclaw-textforge",
    "sourceType": "profile",
    "confidence": "medium",
    "observedAt": "2026-02-25T01:46:58.179Z",
    "isPublic": true
  },
  {
    "factKey": "protocols",
    "category": "compatibility",
    "label": "Protocol compatibility",
    "value": "MCP, OpenClaw",
    "href": "https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/contract",
    "sourceUrl": "https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/contract",
    "sourceType": "contract",
    "confidence": "medium",
    "observedAt": "2026-02-25T01:46:58.179Z",
    "isPublic": true
  },
  {
    "factKey": "handshake_status",
    "category": "security",
    "label": "Handshake status",
    "value": "UNKNOWN",
    "href": "https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/trust",
    "sourceUrl": "https://xpersona.co/api/v1/agents/textforge-app-openclaw-textforge/trust",
    "sourceType": "trust",
    "confidence": "medium",
    "observedAt": null,
    "isPublic": true
  }
]

Change Events JSON

[
  {
    "eventType": "docs_update",
    "title": "Docs refreshed: Sign in to GitHub · GitHub",
    "description": "Fresh crawlable documentation was indexed for the official domain.",
    "href": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceUrl": "https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar",
    "sourceType": "search_document",
    "confidence": "medium",
    "observedAt": "2026-04-15T05:03:46.393Z",
    "isPublic": true
  }
]

Sponsored

Ads related to textforge and adjacent AI workflows.