A side-by-side look at the Telegram MCP and Fmeca MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Telegram MCP for communication work as a local process; choose Fmeca for communication as a local process. You can also run both side by side in one mcpServers block.
TG_APP_ID, TG_API_HASH.session.open, append, state.get.Rows where the two servers differ are marked.
| Spec | F Fmeca | |
|---|---|---|
| Category | Communication | Communication |
| Quality signal | 56/100 · Good | 56/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Local subprocess (stdio) |
| Auth | API key required | No auth required |
| Pricing | Free | Free |
| Required env vars | TG_APP_IDTG_API_HASH | None listed |
| Verified owner | Community listing | Community listing |
| GitHub stars | 348 | 0 |
| Directory activity | 3 views 0 installs 0 upvotes | 0 views 0 installs 0 upvotes |
| Tools | Not listed | 12 |
| Full listing | View Telegram MCP | View Fmeca |
No tool names declared yet. Check the project README from the listing page.
session.openStart or resume a session; optionally selects the matrix strategy and records analysis metadata (`title`, `level`, `aspect`, `scope_paths`, `parent`), all fixed for the session's life.appendAdd a failure mode (`add_failure_mode`), add a mitigation (`add_mitigation`), or re-score an existing failure mode (`rescore`). `set_mitigation_status` moves a mitigation through planned, implemented, verified or abandoned (verified needs evidence other than a note). `set_failure_mode_disposition`…state.getRead-only projection of the session: every failure mode with its computed criticality, residual, and standing.risk.nextThe highest-criticality unmitigated failure mode — what to address next.readiness.assessThe readiness gate: is every High/Medium residual reduced and every blocker cleared?report.exportThe full FMECA table for the session.scoring.catalogThe fixed observation vocabulary for a strategy — the ids the caller draws from.analyzeStateless one-shot: hand over an entire analysis, get back the entire computed report. No session, no persistence.session.listEvery analysis in the state dir (the project's `.fmeca/` when there is one), with its metadata, standing counts (excluded failure modes are counted separately), `ready`, `ready_verified` and resolution counts. Filters: `level`, `aspect`, `parent`. A log that fails to replay is listed with its error.vetAdvisory: asks Jev (via OpenRouter, needs `OPENROUTER_API_KEY`) whether observations, mitigations, coverage and readiness hold up, and returns probabilities beside the deterministic gate. Never writes or changes a score; without a key it reports `vet_unavailable`.actions.suggestRead-only. Reads a session (or an inline analysis) under a [risk policy](docs/policies.md) and suggests actions: per-failure-mode risk bands, evidence confidence, dispositions, tagged actions and a sign-off verdict. Never changes the analysis or the log.policy.listRead-only. The built-in policy presets and the project's `.fmeca/policies/` files, each with its name, hash and class. A project file that does not load is listed with its `error`.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"chaindead-telegram-mcp": {
"command": "npx",
"args": [
"-y",
"@chaindead/telegram-mcp"
],
"env": {
"TG_APP_ID": "YOUR_TG_APP_ID_HERE",
"TG_API_HASH": "YOUR_TG_API_HASH_HERE"
}
}
}
}
{
"mcpServers": {
"fmeca": {
"command": "npx",
"args": [
"-y",
"@matthew-cochran/fmeca"
]
}
}
}