Metadata-Version: 2.4
Name: re-mcp-core
Version: 3.0.3
Summary: Shared infrastructure for reverse-engineering MCP backends
Author-email: "Joe T. Sylve, Ph.D." <joe.sylve@gmail.com>
License-Expression: MIT OR Apache-2.0
Keywords: binary-analysis,mcp,reverse-engineering
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Science/Research
Classifier: Topic :: Security
Classifier: Topic :: Software Development :: Disassemblers
Classifier: Typing :: Typed
Requires-Python: >=3.12
Requires-Dist: fastmcp[code-mode]<4,>=3.1
Requires-Dist: httpx<1,>=0.28
Requires-Dist: mcp<2,>=1.26
Requires-Dist: restrictedpython<9,>=8.1
Requires-Dist: uvicorn<1,>=0.34
Description-Content-Type: text/markdown

# re-mcp-core

Shared infrastructure for reverse-engineering MCP backends. This package provides the supervisor/worker architecture, transport layer, and common utilities that backend packages (`re-mcp-ida`, `re-mcp-ghidra`) build on.

This package is not intended to be used directly — install a backend package instead. See the [main documentation](https://github.com/jtsylve/ida-mcp) for user-facing documentation.

## What's included

- **Supervisor** — `ProxyMCP(FastMCP)` entry point with worker pool management and management tool registration (`close_database`, `save_database`, `list_databases`, `wait_for_analysis`, `list_targets`)
- **Worker provider** — session-scoped worker ownership, routing tools and resource templates that dispatch to the correct worker process
- **Daemon / proxy** — persistent HTTP daemon with auto-spawning stdio proxy, bearer-token auth, idle timeout
- **Backend protocol** — interface that backends implement to register `open_database`, prompts, and backend-specific instructions
- **Sandboxed execution** — `execute` meta-tool running RestrictedPython with `invoke()` for chaining tool calls
- **Helpers** — address resolution, pagination, type aliases (`Address`, `Offset`, `Limit`, `FilterPattern`, `HexBytes`), tool annotations, and Pydantic model transforms

## Requirements

- Python 3.12+

## License

Dual-licensed under [MIT](https://github.com/jtsylve/ida-mcp/blob/main/LICENSES/MIT.txt) and [Apache-2.0](https://github.com/jtsylve/ida-mcp/blob/main/LICENSES/Apache-2.0.txt).
