smithery-ai-cookbook-python-quickstart
RemoteAbout smithery-ai-cookbook-python-quickstart
A quickstart example MCP server built with FastMCP and Python, designed to work with Smithery. It provides a count_character tool that counts occurrences of a character in text, and suits developers learning the basic structure of an MCP server.
Key features
- 01Python implementation using FastMCP
- 02count_character tool for character counting
- 03Testing through the Smithery Playground
- 04Installation with uv, poetry or pip
Use cases
- 01Learning how to build an MCP server with FastMCP
- 02Debugging a tool in the Smithery Playground
- 03Deploying a simple server to Smithery
MCP support
This project is an MCP server that exposes the count_character tool to MCP clients for counting occurrences of a given character in text.
Configuration
Remote servers need no local install. Pick your client, then copy the config or install in one click.
https://server.smithery.ai/@smithery-ai/cookbook-python-quickstart/mcpclaude mcp add --transport http ai-smithery-smithery-ai-cookbook-python-quickstart https://server.smithery.ai/@smithery-ai/cookbook-python-quickstart/mcp{"mcpServers":{"ai-smithery-smithery-ai-cookbook-python-quickstart":{"type":"http","url":"https://server.smithery.ai/@smithery-ai/cookbook-python-quickstart/mcp"}}}Open in Cursor{"servers":{"ai-smithery-smithery-ai-cookbook-python-quickstart":{"type":"http","url":"https://server.smithery.ai/@smithery-ai/cookbook-python-quickstart/mcp"}}}Open in VS Code{"mcpServers":{"ai-smithery-smithery-ai-cookbook-python-quickstart":{"type":"http","url":"https://server.smithery.ai/@smithery-ai/cookbook-python-quickstart/mcp"}}}{"mcpServers":{"ai-smithery-smithery-ai-cookbook-python-quickstart":{"serverUrl":"https://server.smithery.ai/@smithery-ai/cookbook-python-quickstart/mcp"}}}Run commands in a terminal; paste JSON into the client’s MCP config and restart. Servers that need sign-in will prompt on first connect.
https://server.smithery.ai/@smithery-ai/cookbook-python-quickstart/mcpAuth requiredTools
Details
From the project READMECharacter Counter MCP Server - Python Quickstart
A simple example of creating an MCP server using FastMCP and Python, designed to work with Smithery.
What This Does
This server provides a character counter tool called count_character that counts how many times a specific character appears in a given text. You'll test it using the Smithery Playground for interactive development.
Prerequisites
- Python 3.12 or higher
- A Python package manager (uv recommended, but pip, poetry, etc. also work)
- Node.js and npx (optional, for Smithery Playground)
Quick Start
-
Clone the repository:
git clone https://github.com/smithery-ai/smithery-cookbook.git cd smithery-cookbook/servers/python/quickstart -
Install dependencies:
With uv (recommended):
uv syncWith poetry:
poetry installWith pip:
pip install -r requirements.txt -
Run the server:
You have two options:
Option A: Just run the server
# With uv uv run smithery dev # or use the shorter script alias: uv run dev # With poetry poetry run smithery dev # or use the shorter script alias: poetry run dev # With pip (after installing dependencies) smithery devThis starts the MCP server on
http://localhost:8081and keeps it running.Option B: Run server + open playground (recommended for testing)
# With uv uv run smithery playground # or use the shorter script alias: uv run playground # With poetry poetry run smithery playground # or use the shorter script alias: poetry run playground # With pip (after installing dependencies) smithery playgroundThis starts the MCP server AND automatically opens the Smithery Playground in your browser where you can:
- Interact with your MCP server in real-time
- Test the
count_charactertool with different text and characters - See the complete request/response flow
- Debug and iterate on your MCP tools quickly
Testing the Character Counter
Try asking: "How many r's are in strawberry?"
- Deploy to Smithery:
To deploy your MCP server:
- Push your code to GitHub (make sure to include the
smithery.yaml) - Connect your repository at https://smithery.ai/new
- Push your code to GitHub (make sure to include the
Your server will be available over HTTP and ready to use with any MCP-compatible client!
Stopping the Server
Press Ctrl+C in the terminal to stop the server.
Comments
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.