MCP ExplorerExplorer

Mcp Swift Example Server

@devyhanon 10 months ago
1 MIT
FreeCommunity
AI Systems
Example MCP(Model Context Protocol) Server Impl

Overview

What is Mcp Swift Example Server

mcp-swift-example-server is an example implementation of a Model Context Protocol (MCP) server using Swift. It demonstrates how to create a simple server that communicates over standard input/output (stdio), suitable for integration with applications like Claude Desktop.

Use cases

Use cases for mcp-swift-example-server include developing custom tools for Claude Desktop, creating automated workflows that require interaction with external applications, and serving as a learning resource for developers looking to implement MCP servers.

How to use

To use mcp-swift-example-server, clone the repository, build the server using Swift, and configure it in the Claude Desktop configuration file by adding the server’s executable path. This allows the server to be recognized as a tool provider within Claude Desktop.

Key features

Key features of mcp-swift-example-server include setting up a basic MCP server, defining and registering a custom tool (swift_echo), handling ListTools and CallTool requests, utilizing StdioTransport for communication, and providing detailed logging to stderr.

Where to use

mcp-swift-example-server can be used in various fields that require server-client communication, particularly in applications that utilize the Model Context Protocol for tool integration and automation.

Content

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:

  • 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

Tools

No tools

Comments

Recommend MCP Servers

View All MCP Servers