open-index/open-npm huggingface dataset:
npm package: @smithery/sdk
Description: SDK to develop with Smithery
Latest version: 4.3.0

# Smithery SDK

[![npm version](https://img.shields.io/npm/v/@smithery/sdk)](https://www.npmjs.com/package/@smithery/sdk)

TypeScript types for building MCP servers on the Smithery hosted runtime.

Docs: https://smithery.ai/docs/build

## Installation

```bash
npm install @smithery/sdk
```

## Usage

The SDK provides types for the Smithery runtime context that your MCP server receives when deployed.

```typescript
import type {
  ServerModule,
  ServerContext,
  Session,
} from "@smithery/sdk"
import { z } from "zod"

// Define your configuration schema
export const configSchema = z.object({
  apiKey: z.string(),
})

// Create your server
export default const createServer = async (context: ServerContext<z.infer<typeof configSchema>>) => {
  const { config, env } = context

  // Access user configuration
  console.log(config.apiKey)

  // Access environment variables
  console.log(env.MY_SECRET)

  // For stateful servers, access session storage
  if ("session" in context) {
    await context.session.set("key", "value")
    const value = await context.session.get("key")
  }

  // Return your MCP server instance
  return new Server({ name: "my-server", version: "1.0.0" }, { capabilities: {} })
}

```

## Types

### `ServerContext<TConfig>`

The context object passed to your server factory function:

- `config: TConfig` - User-provided configuration (validated against your `configSchema`)
- `env: Record<string, string | undefined>` - Environment variables
- `session?: Session` - Session storage (only for stateful servers)

### `Session`

Key-value storage scoped to the user session:

- `get<T>(key: string): Promise<T | undefined>`
- `set(key: string, value: unknown): Promise<void>`
- `delete(key: string): Promise<void>`

### `ServerModule<TConfig>`

The expected exports from your server entry point:

- `default: CreateServerFn<TConfig>` - Factory function that creates your MCP server
- `configSchema?: z.ZodSchema<TConfig>` - Zod schema for configuration validation
- `createSandboxServer?: CreateSandboxServerFn` - Optional function for deployment scanning
- `stateful?: boolean` - Whether the server maintains state between requests (default: `false`)

## Documentation

For complete documentation, see:
- [Quickstart Guide](https://smithery.ai/docs/build/quickstart)

## License

MIT
npm package: @smithii_io/mixoor
Description: JavaScript client for the Mixoor program
Latest version: 0.0.20

# JavaScript client

A generated JavaScript library for the Mixoor program.

## Getting started

To build and test your JavaScript client from the root of the repository, you may use the following command.

```sh
pnpm clients:js:test
```

This will start a new local validator, if one is not already running, and run the tests for your JavaScript client.

## Available client scripts.

Alternatively, you can go into the client directory and run the tests directly.

```sh
# Build your programs and start the validator.
pnpm programs:build
pnpm validator:restart

# Go into the client directory and run the tests.
cd clients/js
pnpm install
pnpm build
pnpm test
```

You may also use the following scripts to lint and/or format your JavaScript client.

```sh
pnpm lint
pnpm lint:fix
pnpm format
pnpm format:fix
```

## Development

### Circuit Files

This package includes zero-knowledge proof circuit files required for generating privacy-preserving transaction proofs. These files are bundled with the package during publishing.

If you're developing locally and need to update the circuit files:

```sh
# After building circuits in the main circuits directory
pnpm copy-circuits
```

The circuit files are located in:
- `circuits/build/transaction_js/transaction.wasm` - WASM circuit
- `circuits/transaction_0001.zkey` - ZKey file
- `circuits/verification_key.json` - Verification key

These paths are resolved at runtime relative to the package root, ensuring the library works both during development and when installed as an npm dependency.
npm package: @smithii_io/recc
Description: JavaScript client for the Recc Program program
Latest version: 0.0.15

# JavaScript client

A generated JavaScript library for the Recc Program program.

## Getting started

To build and test your JavaScript client from the root of the repository, you may use the following command.

```sh
pnpm clients:js:test
```

This will start a new local validator, if one is not already running, and run the tests for your JavaScript client.

## Available client scripts.

Alternatively, you can go into the client directory and run the tests directly.

```sh
# Build your programs and start the validator.
pnpm programs:build
pnpm validator:restart

# Go into the client directory and run the tests.
cd clients/js
pnpm install
pnpm build
pnpm test
```

You may also use the following scripts to lint and/or format your JavaScript client.

```sh
pnpm lint
pnpm lint:fix
pnpm format
pnpm format:fix
```
npm package: @smithscode/ace-commando
Description: ### Typescript (Decorator style) Cli tool based on Adonisjs Ace.
Author: Dominik Kowalski
Latest version: 0.0.2

# Ace Commando

### Typescript (Decorator style) Cli tool based on Adonisjs Ace.

---

#### Usage example:

##### npm

`npm i @smithscode/ace-commando`

##### yarn

`yarn add @smithscode/ace-commando`

---

##### index.ts

```

import { Commando, Command, CommandParams, CommandFlags } from "@hussartech/ace-commando";

class User extends Commando {
constructor() {
super();
}
@Command(
"user {name: User name} { age? : User age } { --enabled : User status option } { --email=@value : User email option }",
"Showing user details."
)
commandHandler(@CommandParams params, @CommandFlags flags) {
console.log("User name: " + params.name);
console.log("User age: " + params.age);
console.log("User status: " + flags.enabled);
console.log("User email: " + flags.email);
}
}
new User();

```

---

The MIT License (MIT)

Copyright © 2018 Dominik Kowalski

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

```

```