mcp-c
@ZenWayne
About mcp-c
mcp server frarmwork written in c, developing efficiently and effortlessly
Basic information
Config
No standard config provided
This server doesn't expose a parseable MCP config block in its README. See the repository for install instructions.
RepositoryTools
No tools detected
We auto-extract tools from the README. The maintainer can list them under a ## Tools heading to populate this section.
Overview
What is mcp-c?
mcp-c is a framework written in C for building Model Context Protocol (MCP) servers efficiently. It uses annotation-based code generation to automate boilerplate, letting developers focus only on writing the server functions.
How to use mcp-c?
Write your MCP tools in src/mcp_server using the EXPORT and EXPORT_AS macros on functions and structs. Build with cmake -B build -S . && cmake --build ., then run the generated binary with ./mcpc (Windows users need vcpkg). The build process runs a code generator that creates serialization code and tool lists automatically.
Key features of mcp-c
- Annotate C structs to auto‑generate JSON schema definitions.
- Export function names as tool handlers via
EXPORT_ASmacro. - Automatic serialization between JSON and C structs.
- Built‑in bridge code generation for tool input/output parsing.
- Supports enums, nested structs, and descriptions with
DESmacro.
Use cases of mcp-c
- Rapidly prototyping an MCP server in C with minimal manual coding.
- Automatically generating JSON schemas for complex nested data types.
- Creating custom MCP tools without writing repetitive glue code.
- Integrating MCP capabilities into existing C‑based projects.
FAQ from mcp-c
What macros are available in mcp-c?
EXPORT marks a struct or function for export; EXPORT_AS(name) gives it a custom name for tool mapping; DES("description") adds JSON schema descriptions.
How do I define a tool in mcp-c?
Write a C function that returns cJSON* and annotate it with EXPORT_AS(tool_name). The tool name can be anything, including tools/list for the standard MCP list endpoint.
What files does the code generator produce?
It generates generated_bridge_code.c (JSON‑to‑struct parsing) and generated_function_signatures.c (struct definitions and the get_all_function_signatures_json function).
What are the prerequisites to build mcp-c?
You need cmake, clang, and cJSON. On Windows, vcpkg is also required.
How is the generated JSON schema structured?
It follows a $defs-based JSON Schema draft‑07 format, with separate definitions for enums, objects, and their properties, plus a tools array listing each exported tool and its input schema.
More Other MCP servers
MCP Registry
modelcontextprotocolA community driven registry service for Model Context Protocol (MCP) servers.
Unity MCP ✨
justinpbarnettUnity MCP acts as a bridge between AI assistants and your Unity Editor. Give your LLM tools to manage assets, control scenes, edit scripts, and automate tasks within Unity.

Sequential Thinking
modelcontextprotocolModel Context Protocol Servers

EverArt
modelcontextprotocolModel Context Protocol Servers
IDA Pro MCP
mrexodiaAI-powered reverse engineering assistant that bridges IDA Pro with language models through MCP.
Comments