intermcp 0.2.0 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/README.md +30 -13
  2. package/index.js +17 -5
  3. package/package.json +22 -2
package/README.md CHANGED
@@ -10,23 +10,40 @@
10
10
  ```
11
11
 
12
12
  ### Ultra-Fast, Safe Model Context Protocol (MCP) Engine & Multiplexing Hub in Pure Rust
13
- **Sub-millisecond dispatch • 457,000+ ops/sec* • < 3.8 MB RAM • SafeFS Sandboxing • 1-Click Multi-IDE Setup**
13
+ **Sub-millisecond dispatch • 457,000+ ping ops/sec* • < 3.8 MB RAM • SafeFS Sandboxing • 1-Click Multi-IDE Setup**
14
14
 
15
- *Originally engineered for low-latency AI tool execution on the **Interlayer** blockchain; 100% open-source for the global developer ecosystem.*
15
+ *Ultra-fast, safe Model Context Protocol (MCP) engine and multiplexing hub in pure Rust, built for Interlayer Blockchain and open for all.*
16
16
 
17
- [![Crates.io](https://img.shields.io/badge/crates.io-v0.2.0-orange.svg?style=for-the-badge&logo=rust)](https://crates.io/crates/intermcp)
18
- [![npm](https://img.shields.io/badge/npm-v0.2.0-CB3837.svg?style=for-the-badge&logo=npm)](https://www.npmjs.com/package/intermcp)
19
- [![License](https://img.shields.io/badge/license-MIT-blue.svg?style=for-the-badge)](LICENSE)
20
- [![CI Status](https://img.shields.io/badge/CI-passing-brightgreen.svg?style=for-the-badge&logo=githubactions)](https://github.com/Bharathcoorg/intermcp)
21
- [![Memory](https://img.shields.io/badge/RAM-<3.8MB-purple.svg?style=for-the-badge)](https://github.com/Bharathcoorg/intermcp)
22
- [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-green.svg?style=for-the-badge)](CONTRIBUTING.md)
17
+ <p align="center">
18
+ <a href="https://crates.io/crates/intermcp"><img src="https://img.shields.io/crates/v/intermcp.svg?style=for-the-badge&logo=rust" alt="Crates.io" /></a>
19
+ <a href="https://www.npmjs.com/package/intermcp"><img src="https://img.shields.io/npm/v/intermcp.svg?style=for-the-badge&logo=npm" alt="npm" /></a>
20
+ <a href="https://pypi.org/project/intermcp/"><img src="https://img.shields.io/pypi/v/intermcp.svg?style=for-the-badge&logo=pypi" alt="PyPI" /></a>
21
+ <a href="https://github.com/Bharathcoorg/intermcp/releases/tag/v0.2.1"><img src="https://img.shields.io/github/v/release/Bharathcoorg/intermcp?style=for-the-badge&logo=github" alt="GitHub release" /></a>
22
+ <a href="https://github.com/Bharathcoorg/intermcp/actions/workflows/ci.yml"><img src="https://img.shields.io/github/actions/workflow/status/Bharathcoorg/intermcp/ci.yml?branch=main&style=for-the-badge&logo=githubactions" alt="CI Status" /></a>
23
+ <a href="LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue.svg?style=for-the-badge" alt="License: MIT" /></a>
24
+ </p>
23
25
 
24
- [Quickstart](#-1-click-installation--setup) • [Benchmarks](#-benchmarks) • [Key Features](#-key-features) • [Rust](#-rust-sdk-usage) • [TypeScript](#-typescript--node-sdk) • [Python](#-python-client--agent-usage) • [Go](#-go-client-usage) • [PHP](#-php-client-usage) • [Guides](#-developer-guides) • [Security](#-security--vulnerability-reporting)
26
+ [Quickstart](#-1-click-installation--setup) • [Packages](#-official-packages--sdks) • [Benchmarks](#-benchmarks) • [Key Features](#-key-features) • [Rust](#-rust-sdk-usage) • [TypeScript](#-typescript--node-sdk) • [Python](#-python-client--agent-usage) • [Go](#-go-client-usage) • [PHP](#-php-client-usage) • [Security](#-security--vulnerability-reporting)
25
27
 
26
28
  ---
27
29
 
28
30
  </div>
29
31
 
32
+ ## 📦 Official Packages & SDKs
33
+
34
+ InterMCP core and multi-language client SDKs are officially published and immediately available across all major package ecosystems:
35
+
36
+ | Ecosystem | Registry / Source | Install Command | Registry Links |
37
+ | :--- | :--- | :--- | :--- |
38
+ | **Rust** | **crates.io** | `cargo add intermcp` | [![crates.io](https://img.shields.io/crates/v/intermcp.svg)](https://crates.io/crates/intermcp) • [crates.io/crates/intermcp](https://crates.io/crates/intermcp) |
39
+ | **JavaScript / TypeScript** | **npm** | `npm install intermcp` | [![npm](https://img.shields.io/npm/v/intermcp.svg)](https://www.npmjs.com/package/intermcp) • [npmjs.com/package/intermcp](https://www.npmjs.com/package/intermcp) |
40
+ | **Python** | **PyPI** | `pip install intermcp` | [![PyPI](https://img.shields.io/pypi/v/intermcp.svg)](https://pypi.org/project/intermcp/) • [pypi.org/project/intermcp](https://pypi.org/project/intermcp/) |
41
+ | **Go** | **Go Modules** | `go get github.com/Bharathcoorg/intermcp/go/intermcp@v0.2.1` | [pkg.go.dev/github.com/Bharathcoorg/intermcp/go/intermcp](https://pkg.go.dev/github.com/Bharathcoorg/intermcp/go/intermcp) |
42
+ | **PHP** | **Packagist** | `composer require bharathcoorg/intermcp` | [packagist.org/packages/bharathcoorg/intermcp](https://packagist.org/packages/bharathcoorg/intermcp) |
43
+ | **Standalone Binaries** | **GitHub Releases** | Prebuilt binaries for Linux, macOS (ARM & Intel), Windows | [GitHub v0.2.1 Release Assets](https://github.com/Bharathcoorg/intermcp/releases/tag/v0.2.1) |
44
+
45
+ ---
46
+
30
47
  ## 💡 Overview
31
48
 
32
49
  The **Model Context Protocol (MCP)** standardizes how language models (Claude Desktop, Cursor, Windsurf, Zed) interface with external developer tools, file systems, and databases.
@@ -173,8 +190,8 @@ Any environment variables containing sensitive keys (`API_KEY`, `SECRET`, `TOKEN
173
190
  ### 7. Deterministic Query Micro-Caching (`--cache`)
174
191
  Caches read-only, idempotent operations (such as system diagnostics) using SHA-256 fingerprinting. Read/write filesystem tools remain uncached to guarantee fresh data.
175
192
 
176
- ### 8. ADR 001: Signed Execution Receipts & Provenance (`--receipts`)
177
- Generates tamper-evident cryptographic receipts for every tool execution using RFC 8785 JSON Canonicalization Scheme (JCS) and HMAC-SHA256 digital signatures. Authenticate offline with:
193
+ ### 8. ADR 001: HMAC-Authenticated Execution Receipts & Provenance (`--receipts`)
194
+ Generates tamper-evident cryptographic receipts for every tool execution using RFC 8785 JSON Canonicalization Scheme (JCS) and HMAC-SHA256 authentication codes. Authenticate offline with:
178
195
  ```bash
179
196
  intermcp verify-receipts audit.receipts.json --key secret-key
180
197
  ```
@@ -222,7 +239,7 @@ max_calls_per_minute = 60
222
239
  ```
223
240
 
224
241
  ### 14. Dynamic Data-Flow Taint Tracking (`src/taint.rs`)
225
- Enforces MCP-native confidentiality and provenance labels (`Public`, `Internal`, `Confidential`, `Untrusted`). Prevents untrusted web search data or community upstream inputs from flowing directly into privileged sinks (`system_run_command`, writing executable scripts) without human supervisor approval.
242
+ Enforces MCP-native confidentiality and provenance labels (`Public`, `Internal`, `Confidential`, `Untrusted`). Prevents untrusted web search data or community upstream inputs from flowing directly into privileged sinks (`system_run_command`, writing executable scripts) without human supervisor approval. Note: Taint propagation across unstructured text transformations is cooperative and tracked on structured JSON envelopes.
226
243
 
227
244
  ### 15. WebAssembly Module Inspector (`src/wasm.rs`)
228
245
  WASM module inspector (validates header, version, declared memory, exports — does NOT execute bytecode in an isolated VM).
@@ -264,7 +281,7 @@ use serde_json::json;
264
281
 
265
282
  #[tokio::main]
266
283
  async fn main() -> Result<()> {
267
- let mut server = Server::new("custom-server", "0.2.0");
284
+ let mut server = Server::new("custom-server", "0.2.1");
268
285
 
269
286
  server.add_tool(Box::new(SimpleTool::new(
270
287
  "calculate_hash",
package/index.js CHANGED
@@ -1,4 +1,4 @@
1
- /** InterMCP Node.js / TypeScript SDK v0.2.0 */
1
+ /** InterMCP Node.js / TypeScript SDK v0.2.1 */
2
2
  const { spawn } = require("child_process");
3
3
  const readline = require("readline");
4
4
  const path = require("path");
@@ -6,6 +6,7 @@ const path = require("path");
6
6
  class InterMcpClient {
7
7
  constructor(options = {}) {
8
8
  this.plugin = options.plugin || null;
9
+ this.binaryPath = options.binaryPath || null;
9
10
  this.proc = null;
10
11
  this.rl = null;
11
12
  this.requestId = 0;
@@ -15,15 +16,26 @@ class InterMcpClient {
15
16
  async start() {
16
17
  const isWin = process.platform === "win32";
17
18
  const binaryName = isWin ? "intermcp.exe" : "intermcp";
18
- const binPath = path.join(__dirname, "target", "release", binaryName);
19
+ const defaultRelease = path.join(__dirname, "target", "release", binaryName);
20
+ const defaultDebug = path.join(__dirname, "target", "debug", binaryName);
21
+
22
+ let cmd = this.binaryPath;
23
+ if (!cmd) {
24
+ if (require("fs").existsSync(defaultRelease)) {
25
+ cmd = defaultRelease;
26
+ } else if (require("fs").existsSync(defaultDebug)) {
27
+ cmd = defaultDebug;
28
+ } else {
29
+ cmd = "cargo";
30
+ }
31
+ }
19
32
 
20
- const cmd = require("fs").existsSync(binPath) ? binPath : "cargo";
21
33
  const args = cmd === "cargo"
22
34
  ? ["run", "--manifest-path", path.join(__dirname, "Cargo.toml"), "--", "serve", ...(this.plugin ? ["--plugin", this.plugin] : [])]
23
35
  : ["serve", ...(this.plugin ? ["--plugin", this.plugin] : [])];
24
36
 
25
37
  this.proc = spawn(cmd, args, {
26
- stdio: ["pipe", "pipe", "inherit"],
38
+ stdio: ["pipe", "pipe", "pipe"],
27
39
  });
28
40
 
29
41
  this.rl = readline.createInterface({
@@ -51,7 +63,7 @@ class InterMcpClient {
51
63
  // Handshake
52
64
  await this.request("initialize", {
53
65
  protocolVersion: "2024-11-05",
54
- clientInfo: { name: "intermcp-node-client", version: "0.2.0" },
66
+ clientInfo: { name: "intermcp-node-client", version: "0.2.1" },
55
67
  });
56
68
  }
57
69
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "intermcp",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "description": "Ultra-fast, safe Model Context Protocol (MCP) engine and multiplexing hub in pure Rust, built for Interlayer Blockchain and open for all",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",
@@ -22,12 +22,32 @@
22
22
  "keywords": [
23
23
  "mcp",
24
24
  "model-context-protocol",
25
+ "mcp-server",
26
+ "mcp-client",
27
+ "mcp-runtime",
28
+ "mcp-hub",
25
29
  "ai",
30
+ "ai-agents",
31
+ "agentic-ai",
32
+ "autonomous-agents",
33
+ "function-calling",
34
+ "tool-calling",
35
+ "blockchain",
36
+ "interlayer",
37
+ "interlayer-blockchain",
38
+ "web3",
39
+ "decentralized-ai",
26
40
  "claude",
41
+ "claude-desktop",
27
42
  "cursor",
43
+ "windsurf",
44
+ "cline",
28
45
  "llm",
46
+ "llm-tools",
29
47
  "rust",
30
- "agent",
48
+ "systems-programming",
49
+ "safefs",
50
+ "zero-trust",
31
51
  "developer-tools"
32
52
  ],
33
53
  "author": "Bharath B R <bharathcoorg7@gmail.com>",