UCP Checker
UCP status report

bestill.itgrafisk.no

Verified

bestill.itgrafisk.no publishes a valid UCP profile. The checks below list what is still worth adding.

CustomMCPHTTP 200 in 260 msrelease 2026-08-25

Changed something? Run a live check now.
UCP Score 93/100 grade A · ready for UCP agents To fix 0 nothing to fix
Passed 15 checks
Checked 3 Nov 15:47 UTC · signed public requests

Findings

15 passed · 0 to fix · 1 note
Discovery
OK
HTTPS
https
Profile URL uses https://
https
OK
UCP profile reachable
/.well-known/ucp
HTTP 200
/.well-known/ucp
OK
AI bot access
robots.txt
robots.txt allows /.well-known/ucp
robots.txt
UCP profile
OK
Profile passes schema validation
ucp
No structural errors
ucp
OK
Protocol version present and well-formed
ucp.version
Version: 2026-08-25
ucp.version
OK
Public keys published
keys
Keys published at the top level
keys
OK
Spec & schema URLs resolve (6)
spec, schema
All 6 URLs resolved.
spec, schema
Services
Note
Confirm checkout-link redirect strategy
payment_handlers is present but empty — agents will not be able to complete purchases via tokenized payment flow. If this store uses checkout-link redirects, this is expected.
OK
Checkout capability
shopping.checkout
dev.ucp.shopping.checkout detected
shopping.checkout
OK
Transports declared
services
MCP
services
OK
MCP transport reachable
transport: mcp
tools/list returned a JSON-RPC response in 295ms
transport: mcp
Outside UCP
OK
llms.txt
/llms.txt
Found at /llms.txt
/llms.txt
OK
sitemap.xml
/sitemap.xml
Found at /sitemap.xml
/sitemap.xml
OK
Open Graph tags
og: meta
og:title and og:type/url present
og: meta
OK
Organization schema (JSON-LD)
JSON-LD
Organization-typed JSON-LD detected
JSON-LD
OK
Mobile viewport meta
meta viewport
<meta name="viewport"> present
meta viewport
Check trace

How bestill.itgrafisk.no answered our check

The five ways an agent can reach this store, what each one met, and every request we made.

2 of 5 open
6 requests · 3.23 s at the store · signed requests
  1. Finding the profile
    Open
  2. Acting for the buyer
    Not offered
  3. In the buyer's browser
    Not offered
  4. Calling its services
    Open
  5. Sending the buyer to the website
    Not declared
UCP CheckerUCPCheckerBot/1.0
  • Signed · Web Bot Auth
  • key K_DlV2MybP…
How to verify us ↗
  • Finding the profile/.well-known/ucp · 200
  • read from profileActing for the buyernot declared
  • read from profileIn the buyer's browsernot declared
  • Calling its servicesMCP · answered · 5 tools
  • read from profileSending to the websitenot declared
  • Outside UCPhomepage · /llms.txt
  • Checked its linksspec · schemas · handlers
Open
01 · Finding the profile2 requests
Served at /.well-known/ucp with 200 OK, 3.2 KB. robots.txt allows /.well-known/ucp.
Not offered
02 · Acting for the buyerread from profile
The profile doesn't declare identity linking, so an agent can't act for a signed-in buyer.
Not offered
03 · In the buyer's browserread from profile
No Embedded service is declared.
Open
04 · Calling its services1 request
The MCP service answered tools/list in 295 ms, 5 tools.
Not declared
05 · Sending the buyer to the websiteread from profile
No permalink declared. Whether error replies carry a continue_url shows only in an agent run.
01 · Finding the profile2 requests · 2 × 200 OK537 ms
GET /robots.txt 200 OK 73 B · text/plain 272 ms

Answered.

  • DNS 0 ms
  • Connect 90 ms
  • TLS 93 ms
  • Wait 88 ms
  • Download 0 ms
URL
https://bestill.itgrafisk.no/robots.txt
Server
209.42.31.115
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent accept
text/plain
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
Apache
Got content-type
text/plain; charset=utf-8
GET /.well-known/ucp 200 OK 3.2 KB · application/json 260 ms

Answered.

  • DNS 0 ms
  • Connect 85 ms
  • TLS 89 ms
  • Wait 85 ms
  • Download 0 ms
URL
https://bestill.itgrafisk.no/.well-known/ucp
Server
209.42.31.115
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent accept
application/json
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
Apache
Got content-type
application/json
Got cache-control
public, max-age=300
04 · Calling its services1 request · 200 OK295 ms
POST engine.gutenlex.com/ucp/it-grafisk/mcp 200 OK 2.6 KB · application/json 295 ms

Answered.

  • DNS 0 ms
  • Connect 83 ms
  • TLS 88 ms
  • Wait 122 ms
  • Download 0 ms
URL
https://engine.gutenlex.com/ucp/it-grafisk/mcp
Server
209.42.31.115
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent accept
application/json
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
Apache
Got content-type
application/json
Outside UCP · its other files3 requests · 3 × 200 OK726 ms
GET /llms.txt 200 OK 3.6 KB · text/plain 398 ms

Answered.

  • DNS 0 ms
  • Connect 186 ms
  • TLS 123 ms
  • Wait 87 ms
  • Download 0 ms
URL
https://bestill.itgrafisk.no/llms.txt
Server
209.42.31.115
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent accept
text/plain
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
Apache
Got content-type
text/plain; charset=utf-8
GET /sitemap.xml 200 OK 959 B · application/xml 419 ms

Answered.

  • DNS 0 ms
  • Connect 244 ms
  • TLS 89 ms
  • Wait 85 ms
  • Download 0 ms
URL
https://bestill.itgrafisk.no/sitemap.xml
Server
209.42.31.115
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent accept
application/xml,text/xml
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
Apache
Got content-type
application/xml
GET / 200 OK 228.2 KB · text/html 726 ms

Answered.

  • DNS 0 ms
  • Connect 137 ms
  • TLS 171 ms
  • Wait 84 ms
  • Download 333 ms
URL
https://bestill.itgrafisk.no/
Server
209.42.31.115
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
Apache
Got content-type
text/html; charset=utf-8
Got cache-control
public, max-age=300, must-revalidate
Links in the profile · spec, schemas, handlers6 requests · 6 × 200 OK604 ms
GET ucp.dev/2026-08-25/schemas/shopping/checkout.json 200 OK 4.8 KB · application/json 366 ms

Answered.

  • DNS 0 ms
  • Connect 58 ms
  • TLS 272 ms
  • Wait 35 ms
  • Download 0 ms
URL
https://ucp.dev/2026-08-25/schemas/shopping/checkout.json
Server
185.199.110.153
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent accept
application/json, application/schema+json, */*
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
GitHub.com
Got content-type
application/json; charset=utf-8
Got cache-control
max-age=600
GET ucp.dev/2026-08-25/services/shopping/mcp.openrpc.json 200 OK 12.6 KB · application/json 377 ms

Answered.

  • DNS 0 ms
  • Connect 273 ms
  • TLS 69 ms
  • Wait 34 ms
  • Download 0 ms
URL
https://ucp.dev/2026-08-25/services/shopping/mcp.openrpc.json
Server
185.199.110.153
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent accept
application/json, application/schema+json, */*
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
GitHub.com
Got content-type
application/json; charset=utf-8
Got cache-control
max-age=600
GET ucp.dev/2026-08-25/specification/checkout/ 200 OK 466 B · text/html 380 ms

Answered.

  • DNS 0 ms
  • Connect 3 ms
  • TLS 325 ms
  • Wait 51 ms
  • Download 0 ms
URL
https://ucp.dev/2026-08-25/specification/checkout/
Server
185.199.109.153
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent accept
application/json, application/schema+json, */*
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
GitHub.com
Got content-type
text/html; charset=utf-8
Got cache-control
max-age=600
GET ptpge.org/ucp/schemas/identity.json 200 OK 3.7 KB · application/json 435 ms

Answered.

  • DNS 0 ms
  • Connect 167 ms
  • TLS 169 ms
  • Wait 98 ms
  • Download 0 ms
URL
https://ptpge.org/ucp/schemas/identity.json
Server
190.92.183.66
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent accept
application/json, application/schema+json, */*
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
LiteSpeed
Got content-type
application/json
GET ptpge.org/ucp/identity 200 OK 13.7 KB · text/html 528 ms

Answered.

  • DNS 0 ms
  • Connect 113 ms
  • TLS 220 ms
  • Wait 99 ms
  • Download 95 ms
URL
https://ptpge.org/ucp/identity
Server
190.92.183.66
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent accept
application/json, application/schema+json, */*
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
LiteSpeed
Got content-type
text/html
Got cache-control
public, max-age=300, must-revalidate
GET ucp.dev/2026-08-25/specification/overview/ 200 OK 555.6 KB · text/html 602 ms

Answered.

  • DNS 0 ms
  • Connect 220 ms
  • TLS 119 ms
  • Wait 58 ms
  • Download 205 ms
URL
https://ucp.dev/2026-08-25/specification/overview/
Server
185.199.111.153
Sent user-agent
UCPCheckerBot/1.0 (+https://ucpchecker.com/methodology)
Sent accept
application/json, application/schema+json, */*
Sent signature-agent
"https://ucpchecker.com"
Sent signature
Web Bot Auth (RFC 9421)
Got server
GitHub.com
Got content-type
text/html; charset=utf-8
Got cache-control
max-age=600
  1. 01 PROFILEValid against the 2026-08-25 schema; keys published

How agents reach this store. bestill.itgrafisk.no's UCP profile (2026-08-25) declares one transport for dev.ucp.shopping: MCP. One panel per transport, in the spec's words.

Capabilities

2 declared
Org Ptpge Print Identityvendor 2026-10-19org.ptpge.print.identity
MCP
Checkout 2026-08-25dev.ucp.shopping.checkout
MCP

MCP

5 listed · 5 of 5 the spec defines
Endpointhttps://engine.gutenlex.com/ucp/it-grafisk/mcp

The tools the UCP spec defines for each capability in the profile, checked against what the store's MCP service listed when we asked (tools/list).

Checkoutdev.ucp.shopping.checkout
create_checkoutget_checkoutupdate_checkoutcomplete_checkoutcancel_checkout
Also declared, with no operations of their own
Org ptpge print identityorg.ptpge.print.identity
The platform's own capability, outside the UCP spec. Extends checkout.
UCP profile as served 3.2 KB as served · 92 lines
{
    "$comment": "GutenLex Storefront → UCP manifest, generated with the site. The ucp block follows the UCP manifest structure; org.ptpge.print.identity is a published vendor extension (spec at ptpge.org/ucp/identity). The ptpge block points at the vendor declaration (vendor-declaration/1) at /.well-known/ptpge/declaration.json on this domain.",
    "keys": [
        {
            "kid": "ucp-engine-2026-10",
            "kty": "EC",
            "crv": "P-256",
            "x": "rQwTorlowbiGCuncTKz4BeWbJegbRSFPcrjd8K0LVjk",
            "y": "JqMtJYNBv9KZA_p3fpVWiPSZ_OKKpEDIEwevuhkVJH0",
            "use": "sig",
            "alg": "ES256"
        }
    ],
    "ucp": {
        "version": "2026-08-25",
        "services": {
            "dev.ucp.shopping": [
                {
                    "version": "2026-08-25",
                    "spec": "https://ucp.dev/2026-08-25/specification/overview/",
                    "schema": "https://ucp.dev/2026-08-25/services/shopping/mcp.openrpc.json",
                    "transport": "mcp",
                    "endpoint": "https://engine.gutenlex.com/ucp/it-grafisk/mcp"
                }
            ]
        },
        "capabilities": {
            "dev.ucp.shopping.checkout": [
                {
                    "version": "2026-08-25",
                    "spec": "https://ucp.dev/2026-08-25/specification/checkout/",
                    "schema": "https://ucp.dev/2026-08-25/schemas/shopping/checkout.json"
                }
            ],
            "org.ptpge.print.identity": [
                {
                    "version": "2026-10-19",
                    "spec": "https://ptpge.org/ucp/identity",
                    "schema": "https://ptpge.org/ucp/schemas/identity.json",
                    "extends": [
                        "dev.ucp.shopping.checkout"
                    ]
                }
            ]
        },
        "payment_handlers": {}
    },
    "business": {
        "name": "It Grafisk",
        "legal_name": "It Grafisk AS",
        "org_number": "983 930 530 MVA",
        "website": "https://it-grafisk.gutenlex.store/",
        "country": "NO",
        "contact": "[email protected]",
        "linkedin": "https://www.linkedin.com/company/itgrafisk/",
        "google_business_profile": "https://maps.app.goo.gl/3G8ZVo5merJjrxxC8",
        "vendor_types": [
            "commercial-printer",
            "large-format-signage",
            "online-printer"
        ]
    },
    "extension_details": [
        {
            "name": "org.ptpge.print.identity",
            "spec_status": "published vendor extension — graduates into dev.ucp.print at the Q4 2026 UCP window",
            "spec": "https://ptpge.org/ucp/identity",
            "schema": "https://ptpge.org/ucp/schemas/identity.json",
            "vocabulary": "https://ptpge.org/v1/",
            "fingerprint": {
                "algorithm": "ptpge-cfs/1",
                "resolver": "https://ptpge.org/f/"
            }
        }
    ],
    "ptpge": {
        "identity": "https://ptpge.org/v1/vendors/it-grafisk",
        "declaration": "https://it-grafisk.gutenlex.store/.well-known/ptpge/declaration.json",
        "vocabulary": "https://ptpge.org/v1/",
        "fingerprint": {
            "algorithm": "ptpge-cfs/1",
            "resolver": "https://ptpge.org/f/"
        }
    },
    "generated_by": "GutenLex Storefront generator (build_storefront.py) · 2026-11-02",
    "profile_fingerprint": {
        "algorithm": "glx-vp/1",
        "short": "27a690f7bfb82ded",
        "sha256": "27a690f7bfb82dedf347f0f632050b960bfc9aadce3bb6dc989416868759c009",
        "verify": "https://api.gutenlex.com/v1/vendor-profiles/vp_eebfced7b31658b/fingerprint"
    }
}
/llms.txt as served 3.6 KB · mentions UCP
# It Grafisk

> It Grafisk (bestill.itgrafisk.no) — It Grafisk AS has over 100 years of experience and some of the most knowledgeable people in the trade. Big enough to print most things, small enough to look after every customer — one point of contact who answers fast, delivered in top quality on the agreed date. Competitive prices in small and large runs. Operational on UCP, MCP and WebMCP; built on the open PTPGE specification: every product is described in the specification's terms (term URIs https://ptpge.org/v1/… resolve to HTML or JSON-LD; open API at https://api.ptpge.org/v1/, MCP at https://mcp.ptpge.org, specification at https://ptpge.org), every configuration has a ptpge-cfs/1 fingerprint, and the shop is readable by agents through a UCP manifest and WebMCP tools.

## For agents
- UCP manifest: https://bestill.itgrafisk.no/.well-known/ucp (extension org.ptpge.print.identity)
- PTPGE declaration (open schema vendor-declaration/1, our identity in the open register): https://bestill.itgrafisk.no/.well-known/ptpge/declaration.json
- MCP: the open PTPGE MCP server https://mcp.ptpge.org (search/browse terms, validate a configuration, compute and expand the ptpge-cfs/1 fingerprint — same fingerprint as our product pages)
- REST (GutenLex platform APIs, no key for reads): GET https://api.gutenlex.com/v1/directory (our public card) · GET https://api.gutenlex.com/v1/vendor-profiles/vp_eebfced7b31658b/fingerprint (seal) · POST https://engine.gutenlex.com/v1/match | /v1/quote | /v1/intake (capable? · price · sandbox order)
- WebMCP tools on every page: org.ptpge.print.catalog, .validate, .fingerprint, .quote, .order (script: https://gutenlex.com/webmcp/v1.js)
- For people: https://bestill.itgrafisk.no/mapping/ — drop a print-ready PDF; what the file states (trim, pages, colours, spot inks) is bound at once, the rest is asked, and you get one identity and a quote
- For people: https://bestill.itgrafisk.no/prompt/ — describe (type, speak or drop a file) what you need; an agent resolves it to a specification with one identity and opens the quote
- Vendor identity: glx-vh/1 cffb88114a1d6cc5acf10f1af918730df37e3c3d2ebe794af86825165c9fe87f
- Profile seal: https://api.gutenlex.com/v1/vendor-profiles/vp_eebfced7b31658b/fingerprint

## What our PTPGE declaration says (vendor-declaration/1, at /.well-known/ptpge/declaration.json — the file is the source)
Identity: https://ptpge.org/v1/vendors/it-grafisk

### Production lines (capability)
- Komori Lithrone S29P — ; stock: Lessebo Scandia 2000
- Ricoh Pro C9500 — ; stock: Edixion
- Agfa Anapurna H3200i LED — ; stock: Composite Aluminium, Coated, Galerie Art Silk

### Offerings (what we sell, in the specification's terms)
- Business Cards on line «Ricoh Pro C9500»
- Booklets on line «Ricoh Pro C9500»
- Brochures on line «Ricoh Pro C9500»
- Posters on line «Agfa Anapurna H3200i LED»


## Products
- Visittkort EU (https://ptpge.org/v1/ordering/products/business-cards): https://bestill.itgrafisk.no/produkter/visittkort-eu/
- Hefter A4 stående (36 sider) fals og stift (https://ptpge.org/v1/ordering/products/booklets): https://bestill.itgrafisk.no/produkter/hefter-a4-st-ende-36-sider-fals-og-stift/
- Brosjyre 6-sider DL (99 x 210 mm) (https://ptpge.org/v1/ordering/products/brochures): https://bestill.itgrafisk.no/produkter/brosjyre-6-sider-dl-99-x-210-mm/
- Plakat 70 x 100 cm på papir (https://ptpge.org/v1/ordering/products/posters): https://bestill.itgrafisk.no/produkter/plakat-70-x-100-cm-p-papir/

## Pages
- https://bestill.itgrafisk.no/agent/ — how this shop is agent-readable, with live demos
- https://bestill.itgrafisk.no/om/ — about and contact
Is bestill.itgrafisk.no your store?
Claim it with one DNS record.

Status badge

Markdown ·
[![UCP Status](https://ucpchecker.com/badge/bestill.itgrafisk.no)](https://ucpchecker.com/status/bestill.itgrafisk.no)

Questions

Can UCP agents buy from bestill.itgrafisk.no?
Through its MCP service, an agent can start a checkout. The service answered our check. This is what the store declares and what our check reached; an observed agent run shows how far an agent actually gets.
Is bestill.itgrafisk.no ready for UCP agents?
bestill.itgrafisk.no publishes a valid UCP profile and scores 93/100 (grade A). Our check found nothing to fix.
What is a UCP profile?
The JSON file a store publishes at /.well-known/ucp to tell UCP agents which services it offers, how to call them and how it takes payment. The spec calls it the business profile. bestill.itgrafisk.no's is 3.2 KB, written for UCP 2026-08-25. What goes in a UCP profile.
How was bestill.itgrafisk.no checked?
With public requests on 3 Nov 2026: we read /.well-known/ucp and robots.txt, validated the profile against UCP 2026-08-25, checked that its spec and schema links resolve, and called its MCP service. No sign-in and no purchase. How we check.