1. Conduid
  2. Developer Tools
  3. Swifttest MCP Server
MCP server · Developer Tools

Swifttest MCP Server

MCP server: Swifttest MCP Server

Unclaimed MIT last commit a year ago devtools
47Fair

Scored 5 months ago · breakdown

About Swifttest MCP Server

Swifttest MCP Server is an MCP server published by acyment in the Developer Tools category: mCP server: Swifttest MCP Server.

The repository has 1 stars and 0 forks, with the last commit a year ago. Six months or more without a commit doesn't mean the server is broken, but check the open issues before depending on it in production.

Install

From source
git clone https://github.com/acyment/swifttest-mcp-server

This server has no ConduID identity, so agent calls to it are not receipted. Pin the version you install and review the source before granting it credentials.

Ask AI

✦

Ask AI about Swifttest MCP Server

Powered by Claude · Grounded in docs

I know everything about Swifttest MCP Server. Ask me about installation, configuration, usage, or troubleshooting.

Security checks

Static checks derived from the repository 7 days ago. Heuristics on the source, not an audit.

  • ✓README presentThe repository ships documentation.
  • ✓License declaredUsable under a stated license.
  • ✓Tests presentA test suite exists in the repository.
  • ✓Dependencies pinnedA lockfile pins dependency versions.
  • ✓No dynamic code executionSource scan found no eval, dynamic Function, or shell execution.
  • !Scoped permissionsDoesn't declare a permission scope. Assume it can do anything its process can.

README

Swift Test MCP Server

An MCP server that exposes a single swift-test tool for running swift test in a given Swift package directory. Useful when your MCP client (e.g., editor/agent) can call tools over stdio but you don’t want to give it a full interactive shell.

Prerequisites

  • Bun v1.0+ (runtime used by the server and CLI)
  • Swift toolchain (swift test must be on PATH)

Install

From npm (recommended for users):

npm install -g swifttest-mcp-server
# or: pnpm add -g swifttest-mcp-server
# or: bunx swifttest-mcp-server (runs without installing globally)

From source (for contributors):

bun install
bun run build

If your environment restricts temp/cache locations, set TMPDIR and/or XDG_CACHE_HOME before installing.

Usage

You can run the server as a CLI over stdio or embed it via MCP-aware clients.

  • CLI (stdio server):
    • swifttest-mcp-server – starts the MCP server on stdio.
    • It requires bun to be available on PATH (the published CLI shims to bun dist/server.mjs).

MCP client configuration (stdio)

Point your MCP client at the CLI command (examples):

  • Claude Desktop (JSON snippet conceptual example):

    • command: swifttest-mcp-server
    • args: []
    • env: {}
  • Programmatic (TypeScript SDK):

import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";

const transport = new StdioClientTransport({
  command: "swifttest-mcp-server",
  args: [],
});
const client = new Client({ name: "example", version: "0.0.0" });
await client.connect(transport);

const result = await client.callTool({
  name: "swift-test",
  arguments: { packagePath: "/path/to/swift/package" },
});
console.log(result);

MCP Usage

The server connects over stdio. After starting it (either bun run dev or bun run start), register it with your MCP-aware client using a stdio transport pointing at the Bun command you chose.

Tool: swift-test

Field Type Description
packagePath string? Absolute or relative path to the Swift package root. Defaults to the server's current working directory.
swiftArgs string[]? Extra arguments appended after swift test.

The tool validates that the directory exists and contains Package.swift. It streams back combined stdout/stderr plus metadata (exit code, duration, command). Non-zero exits are reported as MCP tool errors so clients can react appropriately while still receiving the captured output.

Development

  • Scripts

    • bun run dev – Run from TypeScript with live reload.
    • bun run typecheck – TypeScript type checking.
    • bun run build – Bundle to dist/server.mjs via Vite + SWC.
    • bun run start – Execute the bundled server.
    • bun test – Run tests.
  • Build

    • Bundled with Vite + SWC to a single ESM entry: dist/server.mjs.
    • Runtime deps (@modelcontextprotocol/sdk, zod) are external and loaded at runtime.
    • prepublishOnly builds automatically when publishing to npm.

Testing

The repository uses Bun’s built‑in test runner. Tests spin up the MCP server over stdio and exercise the swift-test tool. One test injects a fake swift executable via PATH to avoid requiring a real Swift toolchain.

Run all tests:

bun test

Troubleshooting:

  • If you see an error like keyValidator._parse is not a function during tests or calls, this server bypasses the SDK’s tool-argument schema conversion and validates inputs internally with Zod, avoiding that pathway. Ensure you are on the published version or rebuild from source.

Requirements and compatibility

  • Requires bun at runtime for the CLI and server.
  • Requires a Swift toolchain available on PATH.
  • ESM-only module; exports an entry at dist/server.mjs for completeness, though typical use is via the CLI.

License

MIT License. See LICENSE for details.

License

MIT License. See LICENSE for details.

README fetched from the repository 7 days ago. The original is authoritative.

Questions

About Swifttest MCP Server

How do I install Swifttest MCP Server?

No package has been published for this server, so install it from source: clone the repository and follow its README.

Is Swifttest MCP Server safe to use with an AI agent?

Its trust score is 47 out of 100 (fair). It passes 5 of the 6 static security checks run so far; the failures are listed above. It has no ConduID identity yet, so agent calls to it are not receipted.

Is Swifttest MCP Server still maintained?

The last commit was a year ago. That's long enough that you should check whether the maintainer is responding to issues before depending on it.