Demo ImplementationSAFE
A demo implementation of a MCP server (consuming a dummy API) and basic client.
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
I wrote an article and created a video about MCPs and why they're useful in my opinion.
This demo project contains a backend service / API that's consumed by a MCP server which exposes it in a standardized way to MCP clients - like the example MCP client (a very simple AI chatbot) that's also part of this project.
Important: All three parts (service, server, client) rely on Node.js being able to execute TypeScript without a compilation step. Yes, modern Node.js can do that! Make sure you have Node.js 23.x or higher installed!
Configuration
Add a .env file inside the client folder (next to the package.json file there) and add the following content to it:
OPENAI_API_KEY=
In each folder (service, server, client) run npm install to install required dependencies.
Running Service, MCP Server & MCP Client
For each part, navigate into the respective folder (service, server and client) and run npm run dev (with Node.js 23+). Keep each process running.
The "client" process is a simply AI chatbot using OpenAI behind the scenes. This chatbot has the custom MCP server "installed" - therefore, this AI chat application is able to store and retrieve custom information via the backend service created in the "service" folder.
Bugs are possible - it's just a basic demo implementation :-)
0c89adbae5afOBSERVED · 2026-10-08Connect
Built from this server's own package name, version and transport as found in its source — not copied from anyone's documentation, so it cannot drift against a page we do not control. Replace the environment placeholders with a token scoped to the least it needs.
claude mcp add service --env OPENAI_API_KEY=${OPENAI_API_KEY} -- npx -y [email protected]{
"mcpServers": {
"service": {
"command": "npx",
"args": [
"-y",
"[email protected]"
],
"env": {
"OPENAI_API_KEY": "${OPENAI_API_KEY}"
}
}
}
}Exposed tools (1)
1 read · 0 write · 0 destructive.
| Tool | Risk | Description |
|---|---|---|
store-knowledge | read |
Trust audit
SAFEgrade B · trust 89/100 Nothing in the source contradicts what it says it does. Grade A is reserved for packages that have also passed the behavioural sandbox.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | PASS |
| L1 | Static analysis of the code | PASS |
| L2 | Instruction surface (what it tells the agent) | PASS |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- none-observed
- Network
- declared (3 observation(s))
- Shell
- none-observed
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (3)
@modelcontextprotocol/sdk, openai
@modelcontextprotocol/sdk, zod
cors, express, slugify, @types/cors, @types/express, @types/node
Gates applied: no_behavioural_pass.
0c89adbae5affull audit observations/trust-audit/mcp-server/mschwarzmueller__demo-implementation.json · Report an issue / request a re-scanAudit history
Every audit this server has had. A grade with a past is a grade somebody is still checking.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-08 | 0c89adbae5af | SAFE | B | 89 | first audit |
Questions
What is the Demo Implementation MCP server?
A demo implementation of a MCP server (consuming a dummy API) and basic client.
What tools does Demo Implementation expose?
1 in total: 1 read-only, 0 that write, and 0 that can delete or overwrite. Every one is listed on this page with its risk.
Is Demo Implementation safe to connect to an agent?
The audit found nothing in the source that contradicts what it says it does, and graded it B (89/100). Grade A is held back for packages that have also passed a sandboxed behavioural run, which is why a clean server reads B.
What credentials does Demo Implementation need?
It reads OPENAI_API_KEY from the environment. Give it a token scoped to the least it needs — an agent that can be talked into calling a tool can be talked into calling it with your credentials.
How does Demo Implementation run?
It speaks stdio, so it runs as a local process your client starts. It is published on npm as service at 1.0.0.
How current is this page?
The grade is for one exact copy of the source (0c89adbae5af), read on 2026-10-08. The repository is watched and re-audited when it changes.