Binary Ninja MCP vs FrankKi
A side-by-side look at the Binary Ninja MCP and FrankKi MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Binary Ninja MCP for security work as a local process; choose FrankKi for security over a hosted endpoint. You can also run both side by side in one mcpServers block.
Which MCP server should you choose?
Choose Binary Ninja MCP when
- You need dedicated capabilities in the Security domain.
- You prefer a local stdio subprocess transport.
- Its auth model fits you: No auth required.
- You want tools like
list_methods, get_entry_points, search_functions_by_name.
Choose FrankKi when
- You need dedicated capabilities in the Security domain.
- You prefer a remote HTTP/SSE transport.
- You have the keys it needs:
FRANKKI_API_KEY. - You want tools like
mcp_health, address_validate, shipping_quote.
Feature & specification comparison
Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Security | Security |
| Quality signal | 71/100 · Great | 57/100 · Good |
| Install command | Confirmed | Confirmed |
| Transport | Local subprocess (stdio) | Remote HTTP/SSE |
| Auth | No auth required | Not declared |
| Pricing | Free | Not declared |
| Required env vars | None listed | FRANKKI_API_KEY |
| Verified owner | Community listing | Community listing |
| GitHub stars | 455 | 1 |
| Directory activity | 5 views 1 installs 0 upvotes | 0 views 0 installs 0 upvotes |
| Tools | 54 | 4 |
| Full listing | View Binary Ninja MCP | View FrankKi |
Tools & capabilities
Binary Ninja MCP tools 54
list_methodsList all function names in the program with pagination.get_entry_pointsList entry point(s) of the loaded binary.search_functions_by_nameSearch for functions whose name contains the given substring.decompile_functionDecompile a specific function by name and return the decompiled C code.get_ilGet IL for a function in the selected view (hlil, mlil, llil).fetch_disassemblyRetrieve the disassembled code of a function as assembly mnemonic instructions.rename_functionRename a function by its current name. The configured prefix will be automatically prepended if not present.rename_single_variableRename a variable in a function.rename_multi_variablesRename multiple local variables in one call.rename_dataRename a data label at the specified address.set_commentSet a comment at a specific address.get_commentGet the comment at a specific address.- +42 more on the listing page
FrankKi tools 4
mcp_healthHealth-/Echo-Probe - prüft das Partner-Token und die Verarbeitungskette von Anfang bis Ende und sagt dir unter setup, welche Voraussetzungen für einen echten Versand schon erfüllt sind (Absender-Profil, AVV, Guthaben, Sandbox, Freigabe, Briefpapier) und was der nächste Schritt ist. Jeder Schritt trägt humanSummary (de, en): ein Satz in Alltagssprache für den Menschen. Sprich mit dem Menschen in diesen Worten; Tool-Namen, nextTool, fixUrl und messageDe/messageEn sind für dich. Mit checkRender: true wird zusätzlich geprüft, ob gerade überhaupt gerendert werden kann (Vorschau, Thumbnail). Rufe das auf, bevor du eine Vorlage baust, die du danach ansehen musst. EN: Health/echo probe - verifies the partner token and the chain end to end, and reports under setup which prerequisites for a real send are already met (sender profile, data processing agreement, balance, sandbox, approval, letterhead) and what the next step is. Every step carries humanSummary (de, en): one sentence in everyday language for the person. Talk to the person in those words; tool names, nextTool, fixUrl and messageDe/messageEn are for you. With checkRender: true it additionally checks whether rendering currently works at all (preview, thumbnail). Call it before building a template you will need to look at.address_validatePrüft eine Adresse anhand landesspezifischer Regeln und meldet harte Fehler als ADDRESS_INVALID. Nur eine Prüfung, das Adressbuch bleibt unverändert; zum Anlegen oder Ändern einer Adresse nimm address_upsert. EN: Validates an address using country-specific rules and reports hard failures as ADDRESS_INVALID. A check only, the address book is left untouched; to create or change an address use address_upsert.shipping_quoteRegistered-mail availability follows the destination's current catalog. The codes einschreiben_einwurf and einschreiben_uebergabe are German products; Switzerland uses ch_einschreiben. For other destinations, use methods returned in availableDeliveryTypes by a standard shipping_quote for that country, then quote the chosen code. A rejected country/method pair gives a verdict for that pair alone. A catalog snapshot gives a verdict for that snapshot alone. Tracked mail and registered mail are distinct products. Get the user's agreement before switching a requested registered method to standard or tracked delivery. Promise a carrier-issued proof-of-posting PDF only after confirming one is available. Reply in the user's conversation language, regardless of recipient country, letter language, German tool titles or bilingual tool results. Translate shipping methods, letter formats, delivery estimates and explanations for the user. In English: Standardbrief = standard letter; Kompaktbrief = compact letter; Großbrief = large letter; Maxibrief = maxi letter; Einschreiben = registered mail; Einwurf-Einschreiben = registered mail with recorded mailbox delivery; Übergabe-Einschreiben = registered mail with signature on delivery; Einlieferungsbeleg = proof of posting. Use localized money and number formatting. Keep tool names, parameter names, deliveryType values and error codes unchanged in tool calls; show codes to users only when needed for troubleshooting. Preserve the letter's contents in its original language. Ermittelt den Preis, das Briefformat, die Versandart und die voraussichtliche Laufzeit für einen geplanten Brief, bevor er versendet wird. Das ist die Schätzung für den Fall, dass der Brief erst geplant ist: du gibst nur Seitenzahl, Land und Versandart an. Steht der Brief schon fest, versendest du ihn mit order_send (order_send mit dryRun:true liefert dann den genaueren Preis für genau diesen Brief). Der Preis gilt pro Brief und enthält bereits die Mengenstaffel des Partners, falls eine greift (Feld tierId). Für die Staffelpreise selbst nutze pricing_tiers. EN: Determines the price, letter format, shipping method and estimated delivery time for a planned letter, before it is sent. This is the estimate for when the letter is still only planned: you only supply page count, country and delivery type. Once the letter exists, order_send performs the actual send (and order_send with dryRun:true gives the more precise price for that specific letter). The price is per letter and already includes the partner's volume tier where one applies (field tierId). For the volume tiers themselves, call pricing_tiers.pricing_tiersLiefert die Staffelpreise (Mengenrabatte) von FrankKi: ab welcher Monatsmenge welcher Beispielpreis pro Brief gilt. Nutze das, wenn jemand nach Mengenrabatt, Volumenpreis, Staffelpreis oder Großkundenpreis fragt. Die Beispielpreise gelten für einen einseitigen Standardbrief in Schwarzweiß innerhalb Deutschlands, der echte Preis pro Brief hängt zusätzlich von Seitenzahl, Farbe, Versandart und Zielland ab (dafür shipping_quote). EN: Returns FrankKi's volume tiers (bulk discounts): from which monthly quantity which example price per letter applies. Use this when someone asks about bulk discounts, volume pricing or enterprise pricing. The example prices are for a one-page black and white standard letter within Germany; the real per-letter price also depends on page count, color, delivery type and destination country (use shipping_quote for that).
Ready-to-paste client configs
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.
Binary Ninja MCP
{
"mcpServers": {
"fosdickio-binary-ninja-mcp": {
"command": "npx",
"args": [
"-y",
"binary-ninja-mcp"
]
}
}
}
FrankKi
{
"mcpServers": {
"frankki": {
"url": "https://mcp.frankki.app"
}
}
}
Frequently asked questions
Binary Ninja MCP is categorized under Security and uses a local stdio subprocess. FrankKi belongs to Security and uses a remote HTTP/SSE transport. Pick Binary Ninja MCP for security work and FrankKi for security.
Copy the mcpServers block from the config section on this page into your client's config (for example claude_desktop_config.json or ~/.cursor/mcp.json), then fully restart the client.
Binary Ninja MCP is listed as free. Auth: no auth required. FrankKi has no declared pricing — check the project's own site. If a server needs environment variables such as API keys, define them under the env key in your client's MCP config.
Yes. MCP clients support multiple servers: add fosdickio-binary-ninja-mcp and frankki as separate keys in the same mcpServers object, and your assistant will call tools from either one.
On AllMCPs, Binary Ninja MCP has a quality signal of 71/100 (Great) with 5 views, 1 installs and 455 GitHub stars. FrankKi has 57/100 (Good) with 0 views, 0 installs and 1 GitHub stars.