Building an MCP server

The Model Context Protocol (MCP) allows for the creation of a server which can access and provide data to clients. Python has a mcp.server library.


For reference Building an MCP server including Python and TypeScript examples.


Gist server.py link.

MCP servers can provide three main types of capabilities:

One is File-like data that can be read by clients (like API responses or file contents).

I used the following (an arbitrary Obsidian note):

---
title: "Publish CMS"
tags: [project, p2p, planning]
date: 2026-06-01
aliases:
  - P2P
  - Imager
---

## Publish CMS
P2P is the transport layer for the Imager CMS

Key goals:
- The Imager CMS should be able to publish content to a P2P network.
- All content will be routed, receive an acknowledgment with a unique uuid and a version.
- The hash of the content will be used to verify integrity and authenticity.

## Appendix
- Peer-to-peer network implementation
- IntelliJ Copilot
- Ubuntu

I configured the Intellij mcp.json to point to the server.py, and the publish.md file.


The command is using the .venv/bin/python3 virtual environment python interpreter. mcp-json.png Located in ~/.config/github-copilot/intellij/mcp.json


I configured the model:
mcp-model.png


I asked co-pilot to Read the note and summarize the “Key Goals”: key-goals.png