mcpField
M
MCP Swift Example Server

MCP Swift Example Server

Local
github.com/devyhanDeveloper Tools1Updated 82w ago

About MCP Swift Example Server

MCP Swift Example Server is a Swift example of an MCP server using stdio and the Swift MCP SDK. It is for developers learning server setup and tool registration, and includes a simple client example.

Key features

  1. 01Stdio server setup
  2. 02Register a custom swift_echo tool
  3. 03Handle ListTools and CallTool
  4. 04Log details to stderr
  5. 05Example Swift client

Use cases

  1. 01Learn basic MCP server implementation in Swift
  2. 02Expose an echo tool to Claude Desktop
  3. 03Try server-client communication with the example

MCP support

It exposes the swift_echo tool to MCP clients over stdio using StdioTransport. The README shows configuring it in Claude Desktop and includes a client example.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

MCP Swift Example Server

Basic Stdio Example

This is a basic example demonstrating how to create a simple server that communicates over standard input/output (stdio) using the Model Context Protocol Swift SDK. This setup is compatible with applications like Claude Desktop.

Features

This simple server demonstrates:

  • Setting up a basic MCP server
  • Defining and registering a custom tool (swift_echo)
  • Handling ListTools and CallTool requests
  • Using StdioTransport for communication
  • Detailed logging to stderr

Getting Started

Running the Echo Server
  1. Clone this repository:
git clone https://github.com/devyhan/mcp-swift-example-server.git
cd mcp-swift-example-server
  1. Build the server:
swift build -c release

This will create the executable at .build/release/macros-mcp-example-server. Note the full path to this executable.

Configure Claude Desktop

To make this server available as a tool provider in Claude Desktop, you need to add it to your Claude Desktop configuration file (claude_desktop_config.json). The location of this file varies by operating system.

Add an entry like the following to the mcpServers object in your claude_desktop_config.json, replacing /PATH/TO/YOUR/SERVER/ with the actual absolute path to the repository directory on your system:

{
    "mcpServers": {
        // ... other servers maybe ...
        "swift_echo_example": {
            "command": "/PATH/TO/YOUR/SERVER/mcp-swift-example-server/.build/release/macros-mcp-example-server"
        }
        // ... other servers maybe ...
    }
}
  • swift_echo_example: This is the name you'll refer to the server by within Claude Desktop (you can change this).
  • command: This must be the absolute path to the compiled executable you built in the previous step.

Client Example

The Examples directory contains a simple client implementation that demonstrates how to communicate with the MCP server:

# First start the server in one terminal:
swift run

# Then in another terminal, run the client example:
cd Examples
swift SimpleClient.swift

Requirements

  • macOS 13 or later
  • Swift 5.9 or later

Project Structure

  • main.swift: Entry point for the server application
  • MCPServer: MCP protocol server implementation
  • EchoToolbox: Toolbox providing the basic echo tool

License

MIT

References

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.