Pod

Yes, this is on purpose. Pod is built for agents, so the default page is plain HTML.
Human? View the normal website.
Agent? You probably prefer /mcp/thingctx/issues.md or /mcp/thingctx/issues.json, or Pod over MCP.

Reported issues for thingctx

Pod holds 7 of 7 problems reported by people outside the maintainer team. Issues filed by the project's own owners, members and collaborators are excluded entirely — a maintainer's release checklist is not a warning to a prospective user.

Back to thingctx.

Most discussed

Port the MCP bridge to mcp 2.0

Port the MCP bridge to mcp 2.0

mcp 2.0 redesigned the server API and the bridge has not been ported. There is no version cap, so pip install thingctx[mcp] already resolves 2.x and build_mcp_server() raises AttributeError: 'Server' object has no attribute 'list_tools'. The module still imports; it breaks when you build the server.

All of it lives in src/thingctx/integrations/mcp.py.

What changed

1.x 2.0
@server.list_tools() and the other eight decorators c

Read the thread · 2026-08-02 · open · 6 comments

Authorize each bridged call against the caller on the request, not the server's identity

What is this

build_mcp_server takes one ThingClient, so the bridge decides every call against the same identity for the life of the server. Two people on one bridged server get the same answer, even when one should be able to write and the other only read.

Over stdio that is unavoidable: there is no request to read a caller from. Over streamable HTTP it is not. MCP wants an Authorization header on every request, and the SDK hands you the validated token per request. We ignore it.

Read the thread · 2026-07-25 · closed · 2 comments

Port MCP baseline examples to MCP 2 APIs

The production MCP bridge and integration tests are being ported to MCP 2 in #121, but two examples still depend on MCP 1 APIs:

Once the dependency floor moves to mcp>=2, the MCP-specific paths in these examples become stale.

They currently rely on APIs that changed or were removed in MCP 2, including the old in-memory connection helper, MCP 1-style model fields, and older server/client lifecycle assumptions.

This issue is to port th

Read the thread · 2026-08-15 · open · external user · 1 comment

Validate runtime action and property inputs against TD schemas

What are you trying to do

While working on #121, I found that ThingCtx does not currently apply general runtime JSON Schema validation to action inputs or writable property values before they reach a binding.

MCP 1 happened to validate listed tool arguments against each tool's inputSchema before invoking the bridge. During the MCP 2 port that exposed a wider gap: outside that MCP-specific behavior, ThingCtx itself does not enforce the TD schema on runtime values.

For example, if an acti

Read the thread · 2026-08-15 · open · external user · 1 comment

Redis Transport Issue

What happened

get_message(timeout=None) blocks forever, so a silently dead connection hangs with no health check and no way out.

I'll work on fixing this.

Read the thread · 2026-08-14 · open · outside contributor · 0 comments

Add a WebSocket transport binding

What is this

thingctx ships five bindings: http, local, mqtt, media (rtsp) and exec. None speaks WebSocket, and docs/MAPPING.md records it as not implemented. WebSocket is how many live dashboards, home hubs and robot bridges push state; the README already describes a Thing that calls actions over HTTP and receives its events over WebSocket, and that half has no transport behind it.

The shape is an open question. W3C publishes protocol bindings for HTTP, CoAP, MQTT, Modbus, BACnet, LoRaWA

Read the thread · 2026-07-25 · open · 0 comments

Add a worked Copilot (VS Code) example, and clarify direct vs bridge

For a closed agent like Copilot in VS Code, the integration path is the MCP bridge, not direct tool calling. That isn't obvious today: someone can reasonably try the direct path first and end up writing tool-call glue, because Copilot only accepts tools through MCP.

Add a short signpost (direct is for agents whose loop you own; closed agents use the bridge) and a worked, copy-paste Copilot example.

Raised by a user at the W3C WoT Community Group meetup.

Read the thread · 2026-07-03 · open · 0 comments

Most recent

The remaining reports are on the project's issue tracker.