mcp-server-demo
The mcp-server-demo is a proof of concept MCP server designed for use in other proof of concept projects. It provides basic server functionalities and includes instructions for resolving dependencies and running on Mac OSX.
mcp-server-demo
Demo PoC MCP server to be used in other PoC
Devs
uv venv
uv pip install -e .
# then run it locally
mcp dev server.py
# or alternatively
python server.py
Navigate to the URL it showed to test your server.
And then you can test functions such as Templates, and then search_business_requests
:
Pass in this:
{
"query_filters": [
{
"name": "BR_SHORT_TITLE",
"value": "Server",
"operator": "="
}
]
}
And then you can filter on the results via filter_results
:
[
{
"column": "RPT_GC_ORG_NAME_EN",
"operator": "contains",
"value": "Correctional"
}
]
Running via Docker
docker build -t mcp-bits:local .
docker run -p 8080:8080 --env-file ./.env --name mcp-bits-container mcp-bits:local
pymssql issues
pymssql on Mac OSX
pymssql
has dependency with FreeTDS, as such ensure you install it beforehand brew install freetds
.
After which if you have issues with running the code please do the following:
uv pip uninstall pymssql
uv pip install --pre --no-binary :all: pymssql --no-cache --no-build-isolation
Also you can add to uv
pyproject.toml
[tool.uv]
no-binary-package = ["pymssql"]
After this all should be working.
NOTE: Known issue with cython==3.1.0
found here
Here is how to get around it for now (please remove this once this issue is fixed):
export CFLAGS="-I$(brew --prefix freetds)/include"
export LDFLAGS="-L$(brew --prefix freetds)/lib"
uv pip install "packaging>=24" "setuptools>=54.0" "setuptools_scm[toml]>=8.0" "wheel>=0.36.2" "Cython==3.0.10" "tomli"
uv pip install --pre --no-binary :all: pymssql --no-cache --no-build-isolation
Documentation
- Using this as tutorial on how to build the demo.
- FastMCP documentation
- MCP OAuth 2.0 Authentication