99.88.247.49 (coffeemud.net)
CoffeeMud (coffeemud.net:23)
Connection Banner:
Server URLs
- Telnet: telnet://coffeemud.net
- Play in Browser: LociTerm
- Website: http://coffeemud.net:27744/
Server Info
Codebase: CoffeeMUD v5.11.0.3
Genre: Fantasy
Gameplay: Adventure, Social
Players online: 15 [1]
Uptime: 5 days
Created: 2001
Status: Live
Server Location: 🇺🇸 Texas (MSSP)
Language: English
Protocol Support
MUD-specific protocols detected via MSSP flags or Telnet negotiation.
MSSP: Yes (MSSP)
GMCP: Negotiated
MSDP: Negotiated
MCCP: Yes (MSSP)
MCCP2: Negotiated
MXP: Yes (MSSP)
MSP: Yes (MSSP)
MCP: Yes (MSSP)
ZMP: No
Telnet Fingerprint
This fingerprint is shared by 5 other servers.
Options offered by server: BINARY, GMCP, MCCP2, MSDP, MSP, MSSP, MXP
Options requested from client: GMCP, MCCP2, MSDP, MSP, MSSP, MXP, NEW_ENVIRON, TTYPE
The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.
Show JSON
{
"server-probe": {
"fingerprint": "a7f16e7eba19a9ae",
"fingerprint-data": {
"offered-options": [
"BINARY",
"GMCP",
"MCCP2",
"MSDP",
"MSP",
"MSSP",
"MXP"
],
"probed-protocol": "server",
"refused-options": [
"AARDWOLF",
"ATCP",
"CHARSET",
"COM_PORT",
"ECHO",
"EOR",
"MCCP3",
"SGA",
"STATUS",
"ZMP"
],
"requested-options": [
"GMCP",
"MCCP2",
"MSDP",
"MSP",
"MSSP",
"MXP",
"NEW_ENVIRON",
"TTYPE"
],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "\u001b[1;37m \u001b[0;37m\n\r\u001b[1;37m* Enter an existing name to log in.\u001b[0;37m\n\r\u001b[1;37m* Enter a new name to create an account.\u001b[0;37m\n\r\u001b[1;37m* Enter '*' to generate a random account name.\u001b[0;37m\n\r\n\rAccount name: ",
"banner_before_return": "\n\r#$#mcp version: 2.1 to: 2.1\n\r\n\rConnecting to CoffeeMud...\n\r\n\u001b[6z\n\u001b[6z<SUPPORT IMAGE IMAGE.URL>\n\n\u001b[6z\n\u001b[6z<SUPPORT>\n CCC OO FFFF FFFF EEEE EEEE M M U U DDD\r\n C O O F F E E MM MM U U D D\r\n C O O FFF FFF EEE EEE M M M U U D D\r\n C O O F F E E M M U U D D\r\n CCC OO F F EEEE EEEE M M UU DDD v5.10\r\n\r\n (C) 2000-2022 Bo Zimmerman\r\n\r\n (\r\n ) (\r\n ___...(-------)-....___\r\n .-"" ) ( ""-.\r\n .-''''|-._ ) _.-|\r\n / .--.| '""---...........---""' |\r\n / / | |\r\n | | | |\r\n \\ \\ | |\r\n '\\ '\\ | |\r\n '\\ '| |\r\n _/ /\\ /\r\n (__/ \\ /\r\n _..---""' \\ /'""---.._\r\n .-' \\ / '-.\r\n : '-.__ __.-' :\r\n : ) ""---...---"" ( :\r\n '._ '"--...___...--"' _.'\r\n jgs \\""--..__ __..--""/\r\n '._ """----.....______.....----""" \r\n _.'\r\n '""--..,,_____ _____,,..--""'\r\n '"""----"""'\r\n \r\nWelcome to CoffeeMud\r\n\n\rAccount name: ",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"mssp": {
"ANSI": "1",
"AREAS": "388",
"CHARSET": "iso-8859-1",
"CLASSES": "48",
"CODEBASE": "CoffeeMUD v5.11.0.3",
"CONTACT": "ZAC@COFFEEMUD.NET",
"CRAWL DELAY": "-1",
"CREATED": "2001",
"EMAIL": "ZAC@COFFEEMUD.NET",
"FAMILY": "CoffeeMUD",
"GAMEPLAY": [
"Adventure",
"Social"
],
"GAMESYSTEM": "Tick Based",
"GENRE": "Fantasy",
"HELPFILES": "5596",
"HOSTNAME": "coffeemud.net",
"ICON": "http://coffeemud.net:27744/images/cm.jpg",
"INTERMUD": [
"I3",
"Grapevine"
],
"LANGUAGE": "English",
"LOCATION": "Texas",
"MCCP": "1",
"MCP": "1",
"MOBILES": "151",
"MSP": "1",
"MXP": "1",
"NAME": "CoffeeMud",
"OBJECTS": "697",
"PLAYERS": "15",
"PORT": [
"2324",
"2330",
"2329",
"2328",
"2327",
"2326",
"2325",
"23",
"2323"
],
"RACES": "22",
"ROOMS": "31824",
"SKILLS": "2095",
"STATUS": "Live",
"UPTIME": "1775104450",
"VT100": "0",
"WEBSITE": "http://coffeemud.net:27744/",
"XTERM 256 COLORS": "1",
"XTERM TRUE COLORS": "1"
},
"option_states": {
"server_offered": {
"AARDWOLF": false,
"ATCP": false,
"ECHO": false,
"GMCP": true,
"MCCP2": true,
"MCCP3": false,
"MSDP": true,
"MSP": true,
"MSSP": true,
"MXP": true,
"NAWS": false,
"ZMP": false
},
"server_requested": {
"AARDWOLF": false,
"ATCP": false,
"GMCP": true,
"LINEMODE": false,
"MCCP2": true,
"MCCP3": false,
"MSDP": true,
"MSP": true,
"MSSP": true,
"MXP": true,
"NEW_ENVIRON": true,
"TTYPE": true,
"ZMP": false
}
},
"scan_type": "quick",
"timing": {
"probe": 0.1538538932800293,
"total": 12.16351318359375
}
}
},
"sessions": [
{
"connected": "2026-03-07T03:56:02.441915+00:00",
"host": "coffeemud.net",
"ip": "99.88.247.49",
"port": 23
},
{
"connected": "2026-04-07T06:51:49.791984+00:00",
"host": "coffeemud.net",
"ip": "99.88.247.49",
"port": 23
}
]
}
Connection Log
Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.
Generated by telnetlib3-fingerprint
telnetlib3-fingerprint --loglevel=debug coffeemud.net 23
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=coffeemud.net port=23
INFO client_base.py:190 Connected to <Peer 99.88.247.49 23>
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1024 send IAC WILL GMCP
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSSP
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC WILL AARDWOLF
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSDP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1024 send IAC DO GMCP
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSSP
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC DO AARDWOLF
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:1024 send IAC DO MSDP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:773 recv IAC DO GMCP
DEBUG stream_writer.py:1887 handle_do(GMCP)
DEBUG stream_writer.py:998 skip WILL GMCP; pending_option = True
DEBUG stream_writer.py:3384 local_option[GMCP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = False
DEBUG stream_writer.py:773 recv IAC DO MSSP
DEBUG stream_writer.py:1887 handle_do(MSSP)
DEBUG stream_writer.py:998 skip WILL MSSP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSSP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = False
DEBUG stream_writer.py:773 recv IAC DONT AARDWOLF
DEBUG stream_writer.py:2010 handle_dont(AARDWOLF)
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = False
DEBUG stream_writer.py:3384 local_option[AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC DONT ATCP
DEBUG stream_writer.py:2010 handle_dont(ATCP)
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = False
DEBUG stream_writer.py:3384 local_option[ATCP] = False
DEBUG stream_writer.py:773 recv IAC DONT ZMP
DEBUG stream_writer.py:2010 handle_dont(ZMP)
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = False
DEBUG stream_writer.py:3384 local_option[ZMP] = False
DEBUG stream_writer.py:773 recv IAC DO MXP
DEBUG stream_writer.py:1887 handle_do(MXP)
DEBUG stream_writer.py:998 skip WILL MXP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:773 recv IAC DO MSP
DEBUG stream_writer.py:1887 handle_do(MSP)
DEBUG stream_writer.py:998 skip WILL MSP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = False
DEBUG stream_writer.py:773 recv IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:1887 handle_do(MCCP2_COMPRESS)
DEBUG stream_writer.py:998 skip WILL MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 local_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DO MSDP
DEBUG stream_writer.py:1887 handle_do(MSDP)
DEBUG stream_writer.py:998 skip WILL MSDP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSDP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:773 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:754 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1796 MSSP: {'PORT': ['2324', '2330', '2329', '2328', '2327', '2326', '2325', '23', '2323'], 'XTERM TRUE
COLORS': '1', 'RACES': '22', 'VT100': '0', 'GAMESYSTEM': 'Tick Based', 'MCCP': '1', 'UPTIME': '1775104450', 'HELPFILES':
'5596', 'MSP': '1', 'CHARSET': 'iso-8859-1', 'STATUS': 'Live', 'WEBSITE': 'http://coffeemud.net:27744/', 'CRAWL DELAY': '-1',
'OBJECTS': '697', 'CREATED': '2001', 'HOSTNAME': 'coffeemud.net', 'LOCATION': 'Texas', 'GENRE': 'Fantasy', 'MCP': '1',
'CODEBASE': 'CoffeeMUD v5.11.0.3', 'LANGUAGE': 'English', 'GAMEPLAY': ['Adventure', 'Social'], 'MXP': '1', 'PLAYERS': '15',
'EMAIL': 'ZAC@COFFEEMUD.NET', 'ICON': 'http://coffeemud.net:27744/images/cm.jpg', 'NAME': 'CoffeeMud', 'INTERMUD': ['I3',
'Grapevine'], 'MOBILES': '151', 'CLASSES': '48', 'FAMILY': 'CoffeeMUD', 'CONTACT': 'ZAC@COFFEEMUD.NET', 'AREAS': '388',
'ANSI': '1', 'SKILLS': '2095', 'ROOMS': '31824', 'XTERM 256 COLORS': '1'}
DEBUG stream_writer.py:773 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2199 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3384 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC WONT ATCP
DEBUG stream_writer.py:2199 handle_wont(ATCP)
DEBUG stream_writer.py:3384 remote_option[ATCP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = False
DEBUG stream_writer.py:773 recv IAC WONT ZMP
DEBUG stream_writer.py:2199 handle_wont(ZMP)
DEBUG stream_writer.py:3384 remote_option[ZMP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:773 recv IAC WONT MCCP3_COMPRESS
DEBUG stream_writer.py:2199 handle_wont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 remote_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DO NEW_ENVIRON
DEBUG stream_writer.py:1887 handle_do(NEW_ENVIRON)
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = True
DEBUG stream_writer.py:1024 send IAC WILL NEW_ENVIRON
DEBUG stream_writer.py:3384 pending_option[SB + NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 local_option[NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = False
DEBUG stream_writer.py:773 recv IAC DO TTYPE
DEBUG stream_writer.py:1887 handle_do(TTYPE)
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:1024 send IAC WILL TTYPE
DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3384 local_option[TTYPE] = True
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = False
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:773 recv IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:2045 handle_will(MCCP2_COMPRESS)
DEBUG stream_writer.py:998 skip DO MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WILL MXP
DEBUG stream_writer.py:2045 handle_will(MXP)
DEBUG stream_writer.py:998 skip DO MXP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = False
DEBUG stream_writer.py:773 recv IAC WILL GMCP
DEBUG stream_writer.py:2045 handle_will(GMCP)
DEBUG stream_writer.py:998 skip DO GMCP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[GMCP] = True
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Hello IAC SE
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Supports.Set IAC SE
INFO client.py:201 GMCP handshake: Core.Hello + Core.Supports.Set ['Char 1', 'Char.Vitals 1', 'Char.Items 1', 'Room 1', 'Room.Info
1', 'Comm 1', 'Comm.Channel 1', 'Group 1']
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:773 recv IAC WILL MSP
DEBUG stream_writer.py:2045 handle_will(MSP)
DEBUG stream_writer.py:998 skip DO MSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = False
DEBUG stream_writer.py:773 recv IAC WILL MSDP
DEBUG stream_writer.py:2045 handle_will(MSDP)
DEBUG stream_writer.py:998 skip DO MSDP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSDP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:773 recv IAC WILL NAWS
DEBUG stream_writer.py:789 WILL NAWS unsolicited
DEBUG stream_writer.py:2045 handle_will(NAWS)
DEBUG stream_writer.py:2076 recv WILL NAWS on client end, refusing.
DEBUG stream_writer.py:3384 remote_option[NAWS] = False
DEBUG stream_writer.py:1024 send IAC DONT NAWS
DEBUG stream_writer.py:773 recv IAC WONT ECHO
DEBUG stream_writer.py:2199 handle_wont(ECHO)
DEBUG stream_writer.py:3384 remote_option[ECHO] = False
DEBUG stream_writer.py:3384 pending_option[DO + ECHO] = False
DEBUG stream_writer.py:773 recv IAC DO LINEMODE
DEBUG stream_writer.py:1887 handle_do(LINEMODE)
DEBUG stream_writer.py:3384 pending_option[WILL + LINEMODE] = True
DEBUG stream_writer.py:1024 send IAC WILL LINEMODE
DEBUG stream_writer.py:3384 pending_option[SB + LINEMODE] = True
DEBUG stream_writer.py:3384 local_option[LINEMODE] = True
DEBUG stream_writer.py:2816 slc_start: IAC SB LINEMODE SLC [..]
DEBUG stream_writer.py:2852 _slc_add (b'\x00', (^@, default))
DEBUG stream_writer.py:2805 send (slc_end): b'\x00\x03\x00'
DEBUG stream_writer.py:2811 slc_end: [..] IAC SE
DEBUG stream_writer.py:3384 pending_option[WILL + LINEMODE] = False
DEBUG stream_writer.py:773 recv IAC WILL MSSP
DEBUG stream_writer.py:2045 handle_will(MSSP)
DEBUG stream_writer.py:998 skip DO MSSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2238 [SB + TTYPE] unsolicited
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2238 [SB + TTYPE] unsolicited
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:773 recv IAC WONT NAWS
DEBUG stream_writer.py:2199 handle_wont(NAWS)
DEBUG stream_writer.py:3384 pending_option[DO + NAWS] = False
DEBUG stream_writer.py:773 recv IAC DONT LINEMODE
DEBUG stream_writer.py:2010 handle_dont(LINEMODE)
DEBUG stream_writer.py:3384 local_option[LINEMODE] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MCCP2_COMPRESS
DEBUG stream_writer.py:754 sub-negotiation cmd MCCP2_COMPRESS SE completion byte
DEBUG stream_writer.py:2238 [SB + MCCP2_COMPRESS] unsolicited
DEBUG stream_writer.py:3232 MCCP2 activated
DEBUG client_base.py:483 MCCP2 decompression started (server→client)
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'SB NEW_ENVIRON, SB LINEMODE'
DEBUG stream_writer.py:767 begin sub-negotiation SB GMCP
DEBUG stream_writer.py:754 sub-negotiation cmd GMCP SE completion byte
DEBUG stream_writer.py:2238 [SB + GMCP] unsolicited
DEBUG client.py:210 GMCP: comm.tick {}
DEBUG stream_writer.py:767 begin sub-negotiation SB GMCP
DEBUG stream_writer.py:754 sub-negotiation cmd GMCP SE completion byte
DEBUG stream_writer.py:2238 [SB + GMCP] unsolicited
DEBUG client.py:210 GMCP: char.status {'state': 1}
DEBUG stream_writer.py:1451 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:1451 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:1024 send IAC DO BINARY
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = True
DEBUG stream_writer.py:1024 send IAC DO SGA
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:1024 send IAC DO STATUS
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:1024 send IAC DO CHARSET
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = True
DEBUG stream_writer.py:1024 send IAC DO EOR
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:1024 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:773 recv IAC WILL BINARY
DEBUG stream_writer.py:2045 handle_will(BINARY)
DEBUG stream_writer.py:998 skip DO BINARY; pending_option = True
DEBUG stream_writer.py:3384 remote_option[BINARY] = True
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = False
DEBUG stream_writer.py:773 recv IAC WONT SGA
DEBUG stream_writer.py:2199 handle_wont(SGA)
DEBUG stream_writer.py:3384 remote_option[SGA] = False
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = False
DEBUG stream_writer.py:773 recv IAC WONT STATUS
DEBUG stream_writer.py:2199 handle_wont(STATUS)
DEBUG stream_writer.py:3384 remote_option[STATUS] = False
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = False
DEBUG stream_writer.py:773 recv IAC WONT CHARSET
DEBUG stream_writer.py:2199 handle_wont(CHARSET)
DEBUG stream_writer.py:3384 remote_option[CHARSET] = False
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:773 recv IAC WONT EOR
DEBUG stream_writer.py:2199 handle_wont(EOR)
DEBUG stream_writer.py:3384 remote_option[EOR] = False
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = False
DEBUG stream_writer.py:773 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2199 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3384 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = False
DEBUG fingerprinting.py:849 connection for server fingerprint a7f16e7eba19a9ae
INFO client_base.py:122 Connection closed to <Peer 99.88.247.49 23>
CoffeeMud PVP (coffeemud.net:2324)
Connection Banner:
Server URLs
- Telnet: telnet://coffeemud.net:2324
- Website: http://coffeemud.net:27744/
Server Info
Codebase: CoffeeMUD v5.11.0.3
Genre: Fantasy
Gameplay: Adventure, Social
Players online: 15 [2]
Uptime: 5 days
Created: 2001
Status: Live
Server Location: 🇺🇸 Texas (MSSP)
Language: English
Protocol Support
MUD-specific protocols detected via MSSP flags or Telnet negotiation.
MSSP: Yes (MSSP)
GMCP: Negotiated
MSDP: Negotiated
MCCP: Yes (MSSP)
MCCP2: Negotiated
MXP: Yes (MSSP)
MSP: Yes (MSSP)
MCP: Yes (MSSP)
ZMP: No
Telnet Fingerprint
This fingerprint is shared by 5 other servers.
Options offered by server: BINARY, GMCP, MCCP2, MSDP, MSP, MSSP, MXP
Options requested from client: GMCP, MCCP2, MSDP, MSP, MSSP, MXP, NEW_ENVIRON, TTYPE
The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.
Show JSON
{
"server-probe": {
"fingerprint": "a7f16e7eba19a9ae",
"fingerprint-data": {
"offered-options": [
"BINARY",
"GMCP",
"MCCP2",
"MSDP",
"MSP",
"MSSP",
"MXP"
],
"probed-protocol": "server",
"refused-options": [
"AARDWOLF",
"ATCP",
"CHARSET",
"COM_PORT",
"ECHO",
"EOR",
"MCCP3",
"SGA",
"STATUS",
"ZMP"
],
"requested-options": [
"GMCP",
"MCCP2",
"MSDP",
"MSP",
"MSSP",
"MXP",
"NEW_ENVIRON",
"TTYPE"
],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "\u001b[1;37m \u001b[0;37m\n\r\u001b[1;37m* Enter an existing name to log in.\u001b[0;37m\n\r\u001b[1;37m* Enter a new name to create an account.\u001b[0;37m\n\r\u001b[1;37m* Enter '*' to generate a random account name.\u001b[0;37m\n\r\n\rAccount name: ",
"banner_before_return": "\n\r#$#mcp version: 2.1 to: 2.1\n\r\n\rConnecting to CoffeeMud PVP...\n\r\n\u001b[6z\n\u001b[6z<SUPPORT IMAGE IMAGE.URL>\n\n\u001b[6z\n\u001b[6z<SUPPORT>\n CCC OO FFFF FFFF EEEE EEEE M M U U DDD\r\n C O O F F E E MM MM U U D D\r\n C O O FFF FFF EEE EEE M M M U U D D\r\n C O O F F E E M M U U D D\r\n CCC OO F F EEEE EEEE M M UU DDD v5.10\r\n\r\n (C) 2000-20XX Bo Zimmerman\r\n\r\n (\r\n ) (\r\n ___...(-------)-....___\r\n .-"" ) ( ""-.\r\n .-''''|-._ ) _.-|\r\n / .--.| '""---...........---""' |\r\n / / | |\r\n | | | |\r\n \\ \\ | |\r\n '\\ '\\ | |\r\n '\\ '| |\r\n _/ /\\ /\r\n (__/ \\ /\r\n _..---""' \\ /'""---.._\r\n .-' \\ / '-.\r\n : '-.__ __.-' :\r\n : ) ""---...---"" ( :\r\n '._ '"--...___...--"' _.'\r\n jgs \\""--..__ __..--""/\r\n '._ """----.....______.....----""" \r\n _.'\r\n '""--..,,_____ _____,,..--""'\r\n '"""----"""'\r\n \r\nWelcome to CoffeeMud PVP Port!\r\nAvoid your enemies. Beware of your friends.\r\n\n\rAccount name: ",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"mssp": {
"ANSI": "1",
"AREAS": "388",
"CHARSET": "iso-8859-1",
"CLASSES": "48",
"CODEBASE": "CoffeeMUD v5.11.0.3",
"CONTACT": "ZAC@COFFEEMUD.NET",
"CRAWL DELAY": "-1",
"CREATED": "2001",
"EMAIL": "ZAC@COFFEEMUD.NET",
"FAMILY": "CoffeeMUD",
"GAMEPLAY": [
"Adventure",
"Social"
],
"GAMESYSTEM": "Tick Based",
"GENRE": "Fantasy",
"HELPFILES": "5596",
"HOSTNAME": "coffeemud.net",
"ICON": "http://coffeemud.net:27744/images/cm.jpg",
"INTERMUD": [
"I3",
"Grapevine"
],
"LANGUAGE": "English",
"LOCATION": "Texas",
"MCCP": "1",
"MCP": "1",
"MOBILES": "151",
"MSP": "1",
"MXP": "1",
"NAME": "CoffeeMud PVP",
"OBJECTS": "697",
"PLAYERS": "15",
"PORT": [
"2324",
"2330",
"2329",
"2328",
"2327",
"2326",
"2325",
"23",
"2323"
],
"RACES": "22",
"ROOMS": "31824",
"SKILLS": "2095",
"STATUS": "Live",
"UPTIME": "1775104457",
"VT100": "0",
"WEBSITE": "http://coffeemud.net:27744/",
"XTERM 256 COLORS": "1",
"XTERM TRUE COLORS": "1"
},
"option_states": {
"server_offered": {
"AARDWOLF": false,
"ATCP": false,
"ECHO": false,
"GMCP": true,
"MCCP2": true,
"MCCP3": false,
"MSDP": true,
"MSP": true,
"MSSP": true,
"MXP": true,
"NAWS": false,
"ZMP": false
},
"server_requested": {
"AARDWOLF": false,
"ATCP": false,
"GMCP": true,
"LINEMODE": false,
"MCCP2": true,
"MCCP3": false,
"MSDP": true,
"MSP": true,
"MSSP": true,
"MXP": true,
"NEW_ENVIRON": true,
"TTYPE": true,
"ZMP": false
}
},
"scan_type": "quick",
"timing": {
"probe": 0.152512788772583,
"total": 12.159379005432129
}
}
},
"sessions": [
{
"connected": "2026-03-07T03:59:31.956894+00:00",
"host": "coffeemud.net",
"ip": "99.88.247.49",
"port": 2324
},
{
"connected": "2026-04-07T07:15:21.648908+00:00",
"host": "coffeemud.net",
"ip": "99.88.247.49",
"port": 2324
}
]
}
Connection Log
Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.
Generated by telnetlib3-fingerprint
telnetlib3-fingerprint --loglevel=debug coffeemud.net 2324
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=coffeemud.net port=2324
INFO client_base.py:190 Connected to <Peer 99.88.247.49 2324>
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1024 send IAC WILL GMCP
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSSP
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC WILL AARDWOLF
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSDP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1024 send IAC DO GMCP
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSSP
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC DO AARDWOLF
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:1024 send IAC DO MSDP
DEBUG stream_writer.py:773 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DO MXP
DEBUG stream_writer.py:1887 handle_do(MXP)
DEBUG stream_writer.py:998 skip WILL MXP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:773 recv IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:1887 handle_do(MCCP2_COMPRESS)
DEBUG stream_writer.py:998 skip WILL MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 local_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DO GMCP
DEBUG stream_writer.py:1887 handle_do(GMCP)
DEBUG stream_writer.py:998 skip WILL GMCP; pending_option = True
DEBUG stream_writer.py:3384 local_option[GMCP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = False
DEBUG stream_writer.py:773 recv IAC DONT ZMP
DEBUG stream_writer.py:2010 handle_dont(ZMP)
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = False
DEBUG stream_writer.py:3384 local_option[ZMP] = False
DEBUG stream_writer.py:773 recv IAC DONT ATCP
DEBUG stream_writer.py:2010 handle_dont(ATCP)
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = False
DEBUG stream_writer.py:3384 local_option[ATCP] = False
DEBUG stream_writer.py:773 recv IAC DO MSSP
DEBUG stream_writer.py:1887 handle_do(MSSP)
DEBUG stream_writer.py:998 skip WILL MSSP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSSP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = False
DEBUG stream_writer.py:773 recv IAC DO MSP
DEBUG stream_writer.py:1887 handle_do(MSP)
DEBUG stream_writer.py:998 skip WILL MSP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = False
DEBUG stream_writer.py:773 recv IAC DONT AARDWOLF
DEBUG stream_writer.py:2010 handle_dont(AARDWOLF)
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = False
DEBUG stream_writer.py:3384 local_option[AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC DO MSDP
DEBUG stream_writer.py:1887 handle_do(MSDP)
DEBUG stream_writer.py:998 skip WILL MSDP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSDP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:773 recv IAC WONT MCCP3_COMPRESS
DEBUG stream_writer.py:2199 handle_wont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 remote_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WONT ZMP
DEBUG stream_writer.py:2199 handle_wont(ZMP)
DEBUG stream_writer.py:3384 remote_option[ZMP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:773 recv IAC WONT ATCP
DEBUG stream_writer.py:2199 handle_wont(ATCP)
DEBUG stream_writer.py:3384 remote_option[ATCP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:754 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1796 MSSP: {'PORT': ['2324', '2330', '2329', '2328', '2327', '2326', '2325', '23', '2323'], 'XTERM TRUE
COLORS': '1', 'RACES': '22', 'VT100': '0', 'GAMESYSTEM': 'Tick Based', 'MCCP': '1', 'UPTIME': '1775104457', 'HELPFILES':
'5596', 'MSP': '1', 'CHARSET': 'iso-8859-1', 'STATUS': 'Live', 'WEBSITE': 'http://coffeemud.net:27744/', 'CRAWL DELAY': '-1',
'OBJECTS': '697', 'CREATED': '2001', 'HOSTNAME': 'coffeemud.net', 'LOCATION': 'Texas', 'GENRE': 'Fantasy', 'MCP': '1',
'CODEBASE': 'CoffeeMUD v5.11.0.3', 'LANGUAGE': 'English', 'GAMEPLAY': ['Adventure', 'Social'], 'MXP': '1', 'PLAYERS': '15',
'EMAIL': 'ZAC@COFFEEMUD.NET', 'ICON': 'http://coffeemud.net:27744/images/cm.jpg', 'NAME': 'CoffeeMud PVP', 'INTERMUD': ['I3',
'Grapevine'], 'MOBILES': '151', 'CLASSES': '48', 'FAMILY': 'CoffeeMUD', 'CONTACT': 'ZAC@COFFEEMUD.NET', 'AREAS': '388',
'ANSI': '1', 'SKILLS': '2095', 'ROOMS': '31824', 'XTERM 256 COLORS': '1'}
DEBUG stream_writer.py:773 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2199 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3384 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC DO NEW_ENVIRON
DEBUG stream_writer.py:1887 handle_do(NEW_ENVIRON)
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = True
DEBUG stream_writer.py:1024 send IAC WILL NEW_ENVIRON
DEBUG stream_writer.py:3384 pending_option[SB + NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 local_option[NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = False
DEBUG stream_writer.py:773 recv IAC DO TTYPE
DEBUG stream_writer.py:1887 handle_do(TTYPE)
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:1024 send IAC WILL TTYPE
DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3384 local_option[TTYPE] = True
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = False
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:773 recv IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:2045 handle_will(MCCP2_COMPRESS)
DEBUG stream_writer.py:998 skip DO MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WILL MXP
DEBUG stream_writer.py:2045 handle_will(MXP)
DEBUG stream_writer.py:998 skip DO MXP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = False
DEBUG stream_writer.py:773 recv IAC WILL GMCP
DEBUG stream_writer.py:2045 handle_will(GMCP)
DEBUG stream_writer.py:998 skip DO GMCP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[GMCP] = True
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Hello IAC SE
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Supports.Set IAC SE
INFO client.py:201 GMCP handshake: Core.Hello + Core.Supports.Set ['Char 1', 'Char.Vitals 1', 'Char.Items 1', 'Room 1', 'Room.Info
1', 'Comm 1', 'Comm.Channel 1', 'Group 1']
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:773 recv IAC WILL MSP
DEBUG stream_writer.py:2045 handle_will(MSP)
DEBUG stream_writer.py:998 skip DO MSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = False
DEBUG stream_writer.py:773 recv IAC WILL MSDP
DEBUG stream_writer.py:2045 handle_will(MSDP)
DEBUG stream_writer.py:998 skip DO MSDP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSDP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:773 recv IAC WILL NAWS
DEBUG stream_writer.py:789 WILL NAWS unsolicited
DEBUG stream_writer.py:2045 handle_will(NAWS)
DEBUG stream_writer.py:2076 recv WILL NAWS on client end, refusing.
DEBUG stream_writer.py:3384 remote_option[NAWS] = False
DEBUG stream_writer.py:1024 send IAC DONT NAWS
DEBUG stream_writer.py:773 recv IAC WONT ECHO
DEBUG stream_writer.py:2199 handle_wont(ECHO)
DEBUG stream_writer.py:3384 remote_option[ECHO] = False
DEBUG stream_writer.py:3384 pending_option[DO + ECHO] = False
DEBUG stream_writer.py:773 recv IAC DO LINEMODE
DEBUG stream_writer.py:1887 handle_do(LINEMODE)
DEBUG stream_writer.py:3384 pending_option[WILL + LINEMODE] = True
DEBUG stream_writer.py:1024 send IAC WILL LINEMODE
DEBUG stream_writer.py:3384 pending_option[SB + LINEMODE] = True
DEBUG stream_writer.py:3384 local_option[LINEMODE] = True
DEBUG stream_writer.py:2816 slc_start: IAC SB LINEMODE SLC [..]
DEBUG stream_writer.py:2852 _slc_add (b'\x00', (^@, default))
DEBUG stream_writer.py:2805 send (slc_end): b'\x00\x03\x00'
DEBUG stream_writer.py:2811 slc_end: [..] IAC SE
DEBUG stream_writer.py:3384 pending_option[WILL + LINEMODE] = False
DEBUG stream_writer.py:773 recv IAC WILL MSSP
DEBUG stream_writer.py:2045 handle_will(MSSP)
DEBUG stream_writer.py:998 skip DO MSSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2238 [SB + TTYPE] unsolicited
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2238 [SB + TTYPE] unsolicited
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:773 recv IAC WONT NAWS
DEBUG stream_writer.py:2199 handle_wont(NAWS)
DEBUG stream_writer.py:3384 pending_option[DO + NAWS] = False
DEBUG stream_writer.py:773 recv IAC DONT LINEMODE
DEBUG stream_writer.py:2010 handle_dont(LINEMODE)
DEBUG stream_writer.py:3384 local_option[LINEMODE] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MCCP2_COMPRESS
DEBUG stream_writer.py:754 sub-negotiation cmd MCCP2_COMPRESS SE completion byte
DEBUG stream_writer.py:2238 [SB + MCCP2_COMPRESS] unsolicited
DEBUG stream_writer.py:3232 MCCP2 activated
DEBUG client_base.py:483 MCCP2 decompression started (server→client)
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'SB NEW_ENVIRON, SB LINEMODE'
DEBUG stream_writer.py:767 begin sub-negotiation SB GMCP
DEBUG stream_writer.py:754 sub-negotiation cmd GMCP SE completion byte
DEBUG stream_writer.py:2238 [SB + GMCP] unsolicited
DEBUG client.py:210 GMCP: comm.tick {}
DEBUG stream_writer.py:767 begin sub-negotiation SB GMCP
DEBUG stream_writer.py:754 sub-negotiation cmd GMCP SE completion byte
DEBUG stream_writer.py:2238 [SB + GMCP] unsolicited
DEBUG client.py:210 GMCP: char.status {'state': 1}
DEBUG stream_writer.py:1451 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:1451 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:1024 send IAC DO BINARY
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = True
DEBUG stream_writer.py:1024 send IAC DO SGA
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:1024 send IAC DO STATUS
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:1024 send IAC DO CHARSET
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = True
DEBUG stream_writer.py:1024 send IAC DO EOR
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:1024 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:773 recv IAC WILL BINARY
DEBUG stream_writer.py:2045 handle_will(BINARY)
DEBUG stream_writer.py:998 skip DO BINARY; pending_option = True
DEBUG stream_writer.py:3384 remote_option[BINARY] = True
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = False
DEBUG stream_writer.py:773 recv IAC WONT SGA
DEBUG stream_writer.py:2199 handle_wont(SGA)
DEBUG stream_writer.py:3384 remote_option[SGA] = False
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = False
DEBUG stream_writer.py:773 recv IAC WONT STATUS
DEBUG stream_writer.py:2199 handle_wont(STATUS)
DEBUG stream_writer.py:3384 remote_option[STATUS] = False
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = False
DEBUG stream_writer.py:773 recv IAC WONT CHARSET
DEBUG stream_writer.py:2199 handle_wont(CHARSET)
DEBUG stream_writer.py:3384 remote_option[CHARSET] = False
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:773 recv IAC WONT EOR
DEBUG stream_writer.py:2199 handle_wont(EOR)
DEBUG stream_writer.py:3384 remote_option[EOR] = False
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = False
DEBUG stream_writer.py:773 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2199 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3384 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = False
DEBUG fingerprinting.py:849 connection for server fingerprint a7f16e7eba19a9ae
INFO client_base.py:122 Connection closed to <Peer 99.88.247.49 2324>
CoffeeMud HardCore (coffeemud.net:2325)
Connection Banner:
Server URLs
- Telnet: telnet://coffeemud.net:2325
- Website: http://coffeemud.net:27744/
Server Info
Codebase: CoffeeMUD v5.11.0.3
Genre: Fantasy
Gameplay: Adventure, Social
Players online: 15 [3]
Uptime: 5 days
Created: 2001
Status: Live
Server Location: 🇺🇸 Texas (MSSP)
Language: English
Protocol Support
MUD-specific protocols detected via MSSP flags or Telnet negotiation.
MSSP: Yes (MSSP)
GMCP: Negotiated
MSDP: Negotiated
MCCP: Yes (MSSP)
MCCP2: Negotiated
MXP: Yes (MSSP)
MSP: Yes (MSSP)
MCP: Yes (MSSP)
ZMP: No
Telnet Fingerprint
This fingerprint is shared by 5 other servers.
Options offered by server: BINARY, GMCP, MCCP2, MSDP, MSP, MSSP, MXP
Options requested from client: GMCP, MCCP2, MSDP, MSP, MSSP, MXP, NEW_ENVIRON, TTYPE
The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.
Show JSON
{
"server-probe": {
"fingerprint": "a7f16e7eba19a9ae",
"fingerprint-data": {
"offered-options": [
"BINARY",
"GMCP",
"MCCP2",
"MSDP",
"MSP",
"MSSP",
"MXP"
],
"probed-protocol": "server",
"refused-options": [
"AARDWOLF",
"ATCP",
"CHARSET",
"COM_PORT",
"ECHO",
"EOR",
"MCCP3",
"SGA",
"STATUS",
"ZMP"
],
"requested-options": [
"GMCP",
"MCCP2",
"MSDP",
"MSP",
"MSSP",
"MXP",
"NEW_ENVIRON",
"TTYPE"
],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "\u001b[1;37m \u001b[0;37m\n\r\u001b[1;37m* Enter an existing name to log in.\u001b[0;37m\n\r\u001b[1;37m* Enter a new name to create an account.\u001b[0;37m\n\r\u001b[1;37m* Enter '*' to generate a random account name.\u001b[0;37m\n\r\n\rAccount name: ",
"banner_before_return": "\n\r#$#mcp version: 2.1 to: 2.1\n\r\n\rConnecting to CoffeeMud HardCore...\n\r\n\u001b[6z\n\u001b[6z<SUPPORT IMAGE IMAGE.URL>\n\n\u001b[6z\n\u001b[6z<SUPPORT>\n CCC OO FFFF FFFF EEEE EEEE M M U U DDD\r\n C O O F F E E MM MM U U D D\r\n C O O FFF FFF EEE EEE M M M U U D D\r\n C O O F F E E M M U U D D\r\n CCC OO F F EEEE EEEE M M UU DDD v5.10\r\n\r\n (C) 2000-202X Bo Zimmerman\r\n\r\n (\r\n ) (\r\n ___...(-------)-....___\r\n .-"" ) ( ""-.\r\n .-''''|-._ ) _.-|\r\n / .--.| '""---...........---""' |\r\n / / | |\r\n | | | |\r\n \\ \\ | |\r\n '\\ '\\ | |\r\n '\\ '| |\r\n _/ /\\ /\r\n (__/ \\ /\r\n _..---""' \\ /'""---.._\r\n .-' \\ / '-.\r\n : '-.__ __.-' :\r\n : ) ""---...---"" ( :\r\n '._ '"--...___...--"' _.'\r\n jgs \\""--..__ __..--""/\r\n '._ """----.....______.....----""" \r\n _.'\r\n '""--..,,_____ _____,,..--""'\r\n '"""----"""'\r\n \r\nWelcome to CoffeeMud HardCore Port:\r\nAll character deaths here are Final!\r\nAccounts here are unique only to this port.\r\n\r\n\n\rAccount name: ",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"mssp": {
"ANSI": "1",
"AREAS": "388",
"CHARSET": "iso-8859-1",
"CLASSES": "48",
"CODEBASE": "CoffeeMUD v5.11.0.3",
"CONTACT": "ZAC@COFFEEMUD.NET",
"CRAWL DELAY": "-1",
"CREATED": "2001",
"EMAIL": "ZAC@COFFEEMUD.NET",
"FAMILY": "CoffeeMUD",
"GAMEPLAY": [
"Adventure",
"Social"
],
"GAMESYSTEM": "Tick Based",
"GENRE": "Fantasy",
"HELPFILES": "5596",
"HOSTNAME": "coffeemud.net",
"ICON": "http://coffeemud.net:27744/images/cm.jpg",
"INTERMUD": [
"I3",
"Grapevine"
],
"LANGUAGE": "English",
"LOCATION": "Texas",
"MCCP": "1",
"MCP": "1",
"MOBILES": "151",
"MSP": "1",
"MXP": "1",
"NAME": "CoffeeMud HardCore",
"OBJECTS": "697",
"PLAYERS": "15",
"PORT": [
"2324",
"2330",
"2329",
"2328",
"2327",
"2326",
"2325",
"23",
"2323"
],
"RACES": "22",
"ROOMS": "31824",
"SKILLS": "2095",
"STATUS": "Live",
"UPTIME": "1775104456",
"VT100": "0",
"WEBSITE": "http://coffeemud.net:27744/",
"XTERM 256 COLORS": "1",
"XTERM TRUE COLORS": "1"
},
"option_states": {
"server_offered": {
"AARDWOLF": false,
"ATCP": false,
"ECHO": false,
"GMCP": true,
"MCCP2": true,
"MCCP3": false,
"MSDP": true,
"MSP": true,
"MSSP": true,
"MXP": true,
"NAWS": false,
"ZMP": false
},
"server_requested": {
"AARDWOLF": false,
"ATCP": false,
"GMCP": true,
"LINEMODE": false,
"MCCP2": true,
"MCCP3": false,
"MSDP": true,
"MSP": true,
"MSSP": true,
"MXP": true,
"NEW_ENVIRON": true,
"TTYPE": true,
"ZMP": false
}
},
"scan_type": "quick",
"timing": {
"probe": 0.15381455421447754,
"total": 12.15193510055542
}
}
},
"sessions": [
{
"connected": "2026-03-07T04:01:48.176453+00:00",
"host": "coffeemud.net",
"ip": "99.88.247.49",
"port": 2325
},
{
"connected": "2026-04-07T07:07:33.746249+00:00",
"host": "coffeemud.net",
"ip": "99.88.247.49",
"port": 2325
}
]
}
Connection Log
Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.
Generated by telnetlib3-fingerprint
telnetlib3-fingerprint --loglevel=debug coffeemud.net 2325
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=coffeemud.net port=2325
INFO client_base.py:190 Connected to <Peer 99.88.247.49 2325>
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1024 send IAC WILL GMCP
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSDP
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSSP
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC WILL AARDWOLF
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1024 send IAC DO GMCP
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:1024 send IAC DO MSDP
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSSP
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC DO AARDWOLF
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:773 recv IAC DO GMCP
DEBUG stream_writer.py:1887 handle_do(GMCP)
DEBUG stream_writer.py:998 skip WILL GMCP; pending_option = True
DEBUG stream_writer.py:3384 local_option[GMCP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = False
DEBUG stream_writer.py:773 recv IAC DO MSP
DEBUG stream_writer.py:1887 handle_do(MSP)
DEBUG stream_writer.py:998 skip WILL MSP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = False
DEBUG stream_writer.py:773 recv IAC DO MSDP
DEBUG stream_writer.py:1887 handle_do(MSDP)
DEBUG stream_writer.py:998 skip WILL MSDP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSDP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:773 recv IAC DONT ZMP
DEBUG stream_writer.py:2010 handle_dont(ZMP)
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = False
DEBUG stream_writer.py:3384 local_option[ZMP] = False
DEBUG stream_writer.py:773 recv IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:1887 handle_do(MCCP2_COMPRESS)
DEBUG stream_writer.py:998 skip WILL MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 local_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DO MSSP
DEBUG stream_writer.py:1887 handle_do(MSSP)
DEBUG stream_writer.py:998 skip WILL MSSP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSSP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = False
DEBUG stream_writer.py:773 recv IAC DO MXP
DEBUG stream_writer.py:1887 handle_do(MXP)
DEBUG stream_writer.py:998 skip WILL MXP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:773 recv IAC DONT ATCP
DEBUG stream_writer.py:2010 handle_dont(ATCP)
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = False
DEBUG stream_writer.py:3384 local_option[ATCP] = False
DEBUG stream_writer.py:773 recv IAC DONT AARDWOLF
DEBUG stream_writer.py:2010 handle_dont(AARDWOLF)
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = False
DEBUG stream_writer.py:3384 local_option[AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WONT ZMP
DEBUG stream_writer.py:2199 handle_wont(ZMP)
DEBUG stream_writer.py:3384 remote_option[ZMP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:754 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1796 MSSP: {'PORT': ['2324', '2330', '2329', '2328', '2327', '2326', '2325', '23', '2323'], 'XTERM TRUE
COLORS': '1', 'RACES': '22', 'VT100': '0', 'GAMESYSTEM': 'Tick Based', 'MCCP': '1', 'UPTIME': '1775104456', 'HELPFILES':
'5596', 'MSP': '1', 'CHARSET': 'iso-8859-1', 'STATUS': 'Live', 'WEBSITE': 'http://coffeemud.net:27744/', 'CRAWL DELAY': '-1',
'OBJECTS': '697', 'CREATED': '2001', 'HOSTNAME': 'coffeemud.net', 'LOCATION': 'Texas', 'GENRE': 'Fantasy', 'MCP': '1',
'CODEBASE': 'CoffeeMUD v5.11.0.3', 'LANGUAGE': 'English', 'GAMEPLAY': ['Adventure', 'Social'], 'MXP': '1', 'PLAYERS': '15',
'EMAIL': 'ZAC@COFFEEMUD.NET', 'ICON': 'http://coffeemud.net:27744/images/cm.jpg', 'NAME': 'CoffeeMud HardCore', 'INTERMUD':
['I3', 'Grapevine'], 'MOBILES': '151', 'CLASSES': '48', 'FAMILY': 'CoffeeMUD', 'CONTACT': 'ZAC@COFFEEMUD.NET', 'AREAS': '388',
'ANSI': '1', 'SKILLS': '2095', 'ROOMS': '31824', 'XTERM 256 COLORS': '1'}
DEBUG stream_writer.py:773 recv IAC WONT ATCP
DEBUG stream_writer.py:2199 handle_wont(ATCP)
DEBUG stream_writer.py:3384 remote_option[ATCP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = False
DEBUG stream_writer.py:773 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2199 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3384 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC WONT MCCP3_COMPRESS
DEBUG stream_writer.py:2199 handle_wont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 remote_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DO NEW_ENVIRON
DEBUG stream_writer.py:1887 handle_do(NEW_ENVIRON)
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = True
DEBUG stream_writer.py:1024 send IAC WILL NEW_ENVIRON
DEBUG stream_writer.py:3384 pending_option[SB + NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 local_option[NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = False
DEBUG stream_writer.py:773 recv IAC DO TTYPE
DEBUG stream_writer.py:1887 handle_do(TTYPE)
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:1024 send IAC WILL TTYPE
DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3384 local_option[TTYPE] = True
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = False
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:773 recv IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:2045 handle_will(MCCP2_COMPRESS)
DEBUG stream_writer.py:998 skip DO MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WILL MXP
DEBUG stream_writer.py:2045 handle_will(MXP)
DEBUG stream_writer.py:998 skip DO MXP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = False
DEBUG stream_writer.py:773 recv IAC WILL GMCP
DEBUG stream_writer.py:2045 handle_will(GMCP)
DEBUG stream_writer.py:998 skip DO GMCP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[GMCP] = True
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Hello IAC SE
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Supports.Set IAC SE
INFO client.py:201 GMCP handshake: Core.Hello + Core.Supports.Set ['Char 1', 'Char.Vitals 1', 'Char.Items 1', 'Room 1', 'Room.Info
1', 'Comm 1', 'Comm.Channel 1', 'Group 1']
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:773 recv IAC WILL MSP
DEBUG stream_writer.py:2045 handle_will(MSP)
DEBUG stream_writer.py:998 skip DO MSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = False
DEBUG stream_writer.py:773 recv IAC WILL MSDP
DEBUG stream_writer.py:2045 handle_will(MSDP)
DEBUG stream_writer.py:998 skip DO MSDP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSDP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:773 recv IAC WILL NAWS
DEBUG stream_writer.py:789 WILL NAWS unsolicited
DEBUG stream_writer.py:2045 handle_will(NAWS)
DEBUG stream_writer.py:2076 recv WILL NAWS on client end, refusing.
DEBUG stream_writer.py:3384 remote_option[NAWS] = False
DEBUG stream_writer.py:1024 send IAC DONT NAWS
DEBUG stream_writer.py:773 recv IAC WONT ECHO
DEBUG stream_writer.py:2199 handle_wont(ECHO)
DEBUG stream_writer.py:3384 remote_option[ECHO] = False
DEBUG stream_writer.py:3384 pending_option[DO + ECHO] = False
DEBUG stream_writer.py:773 recv IAC DO LINEMODE
DEBUG stream_writer.py:1887 handle_do(LINEMODE)
DEBUG stream_writer.py:3384 pending_option[WILL + LINEMODE] = True
DEBUG stream_writer.py:1024 send IAC WILL LINEMODE
DEBUG stream_writer.py:3384 pending_option[SB + LINEMODE] = True
DEBUG stream_writer.py:3384 local_option[LINEMODE] = True
DEBUG stream_writer.py:2816 slc_start: IAC SB LINEMODE SLC [..]
DEBUG stream_writer.py:2852 _slc_add (b'\x00', (^@, default))
DEBUG stream_writer.py:2805 send (slc_end): b'\x00\x03\x00'
DEBUG stream_writer.py:2811 slc_end: [..] IAC SE
DEBUG stream_writer.py:3384 pending_option[WILL + LINEMODE] = False
DEBUG stream_writer.py:773 recv IAC WILL MSSP
DEBUG stream_writer.py:2045 handle_will(MSSP)
DEBUG stream_writer.py:998 skip DO MSSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2238 [SB + TTYPE] unsolicited
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2238 [SB + TTYPE] unsolicited
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:773 recv IAC WONT NAWS
DEBUG stream_writer.py:2199 handle_wont(NAWS)
DEBUG stream_writer.py:3384 pending_option[DO + NAWS] = False
DEBUG stream_writer.py:773 recv IAC DONT LINEMODE
DEBUG stream_writer.py:2010 handle_dont(LINEMODE)
DEBUG stream_writer.py:3384 local_option[LINEMODE] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MCCP2_COMPRESS
DEBUG stream_writer.py:754 sub-negotiation cmd MCCP2_COMPRESS SE completion byte
DEBUG stream_writer.py:2238 [SB + MCCP2_COMPRESS] unsolicited
DEBUG stream_writer.py:3232 MCCP2 activated
DEBUG client_base.py:483 MCCP2 decompression started (server→client)
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'SB NEW_ENVIRON, SB LINEMODE'
DEBUG stream_writer.py:767 begin sub-negotiation SB GMCP
DEBUG stream_writer.py:754 sub-negotiation cmd GMCP SE completion byte
DEBUG stream_writer.py:2238 [SB + GMCP] unsolicited
DEBUG client.py:210 GMCP: comm.tick {}
DEBUG stream_writer.py:767 begin sub-negotiation SB GMCP
DEBUG stream_writer.py:754 sub-negotiation cmd GMCP SE completion byte
DEBUG stream_writer.py:2238 [SB + GMCP] unsolicited
DEBUG client.py:210 GMCP: char.status {'state': 1}
DEBUG stream_writer.py:1451 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:1451 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:1024 send IAC DO BINARY
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = True
DEBUG stream_writer.py:1024 send IAC DO SGA
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:1024 send IAC DO STATUS
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:1024 send IAC DO CHARSET
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = True
DEBUG stream_writer.py:1024 send IAC DO EOR
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:1024 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:773 recv IAC WILL BINARY
DEBUG stream_writer.py:2045 handle_will(BINARY)
DEBUG stream_writer.py:998 skip DO BINARY; pending_option = True
DEBUG stream_writer.py:3384 remote_option[BINARY] = True
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = False
DEBUG stream_writer.py:773 recv IAC WONT SGA
DEBUG stream_writer.py:2199 handle_wont(SGA)
DEBUG stream_writer.py:3384 remote_option[SGA] = False
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = False
DEBUG stream_writer.py:773 recv IAC WONT STATUS
DEBUG stream_writer.py:2199 handle_wont(STATUS)
DEBUG stream_writer.py:3384 remote_option[STATUS] = False
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = False
DEBUG stream_writer.py:773 recv IAC WONT CHARSET
DEBUG stream_writer.py:2199 handle_wont(CHARSET)
DEBUG stream_writer.py:3384 remote_option[CHARSET] = False
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:773 recv IAC WONT EOR
DEBUG stream_writer.py:2199 handle_wont(EOR)
DEBUG stream_writer.py:3384 remote_option[EOR] = False
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = False
DEBUG stream_writer.py:773 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2199 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3384 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = False
DEBUG fingerprinting.py:849 connection for server fingerprint a7f16e7eba19a9ae
INFO client_base.py:122 Connection closed to <Peer 99.88.247.49 2325>
CoffeeMud Classic (coffeemud.net:2327)
Connection Banner:
Server URLs
- Telnet: telnet://coffeemud.net:2327
- Website: http://coffeemud.net:27744/
Server Info
Codebase: CoffeeMUD v5.11.0.3
Genre: Fantasy
Gameplay: Adventure, Social
Players online: 15 [4]
Uptime: 5 days
Created: 2001
Status: Live
Server Location: 🇺🇸 Texas (MSSP)
Language: English
Protocol Support
MUD-specific protocols detected via MSSP flags or Telnet negotiation.
MSSP: Yes (MSSP)
GMCP: Negotiated
MSDP: Negotiated
MCCP: Yes (MSSP)
MCCP2: Negotiated
MXP: Yes (MSSP)
MSP: Yes (MSSP)
MCP: Yes (MSSP)
ZMP: No
Telnet Fingerprint
This fingerprint is shared by 5 other servers.
Options offered by server: BINARY, GMCP, MCCP2, MSDP, MSP, MSSP, MXP
Options requested from client: GMCP, MCCP2, MSDP, MSP, MSSP, MXP, NEW_ENVIRON, TTYPE
The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.
Show JSON
{
"server-probe": {
"fingerprint": "a7f16e7eba19a9ae",
"fingerprint-data": {
"offered-options": [
"BINARY",
"GMCP",
"MCCP2",
"MSDP",
"MSP",
"MSSP",
"MXP"
],
"probed-protocol": "server",
"refused-options": [
"AARDWOLF",
"ATCP",
"CHARSET",
"COM_PORT",
"ECHO",
"EOR",
"MCCP3",
"SGA",
"STATUS",
"ZMP"
],
"requested-options": [
"GMCP",
"MCCP2",
"MSDP",
"MSP",
"MSSP",
"MXP",
"NEW_ENVIRON",
"TTYPE"
],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "\u001b[1;37m \u001b[0;37m\n\r\u001b[1;37m* Enter an existing name to log in.\u001b[0;37m\n\r\u001b[1;37m* Enter a new name to create a character.\u001b[0;37m\n\r\u001b[1;37m* Enter '*' to generate a random character name.\u001b[0;37m\n\r\n\rName: ",
"banner_before_return": "\n\r#$#mcp version: 2.1 to: 2.1\n\r\n\rConnecting to CoffeeMud Classic...\n\r\n\u001b[6z\n\u001b[6z<SUPPORT IMAGE IMAGE.URL>\n\n\u001b[6z\n\u001b[6z<SUPPORT>\n CCC OO FFFF FFFF EEEE EEEE M M U U DDD\r\n C O O F F E E MM MM U U D D\r\n C O O FFF FFF EEE EEE M M M U U D D\r\n C O O F F E E M M U U D D\r\n CCC OO F F EEEE EEEE M M UU DDD v4.1\r\n\r\n *** C L A S S I C ***\r\n\r\n (C) 2000-2005 Bo Zimmerman\r\n\r\n (\r\n ) (\r\n ___...(-------)-....___\r\n .-"" ) ( ""-.\r\n .-''''|-._ ) _.-|\r\n / .--.| '""---...........---""' |\r\n / / | |\r\n | | | |\r\n \\ \\ | |\r\n '\\ '\\ | |\r\n '\\ '| |\r\n _/ /\\ /\r\n (__/ \\ /\r\n _..---""' \\ /'""---.._\r\n .-' \\ / '-.\r\n : '-.__ __.-' :\r\n : ) ""---...---"" ( :\r\n '._ '"--...___...--"' _.'\r\n jgs \\""--..__ __..--""/\r\n '._ """----.....______.....----""" \r\n _.'\r\n '""--..,,_____ _____,,..--""'\r\n '"""----"""'\r\n \r\nWelcome to CoffeeMud Classic !!!\r\n\r\n\n\rName: ",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"mssp": {
"ANSI": "1",
"AREAS": "388",
"CHARSET": "iso-8859-1",
"CLASSES": "41",
"CODEBASE": "CoffeeMUD v5.11.0.3",
"CONTACT": "ZAC@COFFEEMUD.NET",
"CRAWL DELAY": "-1",
"CREATED": "2001",
"EMAIL": "ZAC@COFFEEMUD.NET",
"FAMILY": "CoffeeMUD",
"GAMEPLAY": [
"Adventure",
"Social"
],
"GAMESYSTEM": "Tick Based",
"GENRE": "Fantasy",
"HELPFILES": "5596",
"HOSTNAME": "coffeemud.net",
"ICON": "http://coffeemud.net:27744/images/cm.jpg",
"INTERMUD": [
"I3",
"Grapevine"
],
"LANGUAGE": "English",
"LOCATION": "Texas",
"MCCP": "1",
"MCP": "1",
"MOBILES": "151",
"MSP": "1",
"MXP": "1",
"NAME": "CoffeeMud Classic",
"OBJECTS": "697",
"PLAYERS": "15",
"PORT": [
"2324",
"2330",
"2329",
"2328",
"2327",
"2326",
"2325",
"23",
"2323"
],
"RACES": "7",
"ROOMS": "31824",
"SKILLS": "2095",
"STATUS": "Live",
"UPTIME": "1775104457",
"VT100": "0",
"WEBSITE": "http://coffeemud.net:27744/",
"XTERM 256 COLORS": "1",
"XTERM TRUE COLORS": "1"
},
"option_states": {
"server_offered": {
"AARDWOLF": false,
"ATCP": false,
"ECHO": false,
"GMCP": true,
"MCCP2": true,
"MCCP3": false,
"MSDP": true,
"MSP": true,
"MSSP": true,
"MXP": true,
"NAWS": false,
"ZMP": false
},
"server_requested": {
"AARDWOLF": false,
"ATCP": false,
"GMCP": true,
"LINEMODE": false,
"MCCP2": true,
"MCCP3": false,
"MSDP": true,
"MSP": true,
"MSSP": true,
"MXP": true,
"NEW_ENVIRON": true,
"TTYPE": true,
"ZMP": false
}
},
"scan_type": "quick",
"timing": {
"probe": 0.15292716026306152,
"total": 12.118306159973145
}
}
},
"sessions": [
{
"connected": "2026-03-07T04:03:47.565882+00:00",
"host": "coffeemud.net",
"ip": "99.88.247.49",
"port": 2327
},
{
"connected": "2026-04-07T06:53:53.434101+00:00",
"host": "coffeemud.net",
"ip": "99.88.247.49",
"port": 2327
}
]
}
Connection Log
Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.
Generated by telnetlib3-fingerprint
telnetlib3-fingerprint --loglevel=debug coffeemud.net 2327
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=coffeemud.net port=2327
INFO client_base.py:190 Connected to <Peer 99.88.247.49 2327>
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSDP
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1024 send IAC WILL GMCP
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC WILL AARDWOLF
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSSP
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:1024 send IAC DO MSDP
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1024 send IAC DO GMCP
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC DO AARDWOLF
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSSP
DEBUG stream_writer.py:773 recv IAC DO MSDP
DEBUG stream_writer.py:1887 handle_do(MSDP)
DEBUG stream_writer.py:998 skip WILL MSDP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSDP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:773 recv IAC DONT ATCP
DEBUG stream_writer.py:2010 handle_dont(ATCP)
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = False
DEBUG stream_writer.py:3384 local_option[ATCP] = False
DEBUG stream_writer.py:773 recv IAC DO GMCP
DEBUG stream_writer.py:1887 handle_do(GMCP)
DEBUG stream_writer.py:998 skip WILL GMCP; pending_option = True
DEBUG stream_writer.py:3384 local_option[GMCP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = False
DEBUG stream_writer.py:773 recv IAC DO MSP
DEBUG stream_writer.py:1887 handle_do(MSP)
DEBUG stream_writer.py:998 skip WILL MSP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = False
DEBUG stream_writer.py:773 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:2010 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DONT AARDWOLF
DEBUG stream_writer.py:2010 handle_dont(AARDWOLF)
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = False
DEBUG stream_writer.py:3384 local_option[AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC DO MXP
DEBUG stream_writer.py:1887 handle_do(MXP)
DEBUG stream_writer.py:998 skip WILL MXP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:773 recv IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:1887 handle_do(MCCP2_COMPRESS)
DEBUG stream_writer.py:998 skip WILL MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 local_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC DONT ZMP
DEBUG stream_writer.py:2010 handle_dont(ZMP)
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = False
DEBUG stream_writer.py:3384 local_option[ZMP] = False
DEBUG stream_writer.py:773 recv IAC DO MSSP
DEBUG stream_writer.py:1887 handle_do(MSSP)
DEBUG stream_writer.py:998 skip WILL MSSP; pending_option = True
DEBUG stream_writer.py:3384 local_option[MSSP] = True
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = False
DEBUG stream_writer.py:773 recv IAC WONT ATCP
DEBUG stream_writer.py:2199 handle_wont(ATCP)
DEBUG stream_writer.py:3384 remote_option[ATCP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = False
DEBUG stream_writer.py:773 recv IAC WONT MCCP3_COMPRESS
DEBUG stream_writer.py:2199 handle_wont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3384 remote_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2199 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3384 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:773 recv IAC WONT ZMP
DEBUG stream_writer.py:2199 handle_wont(ZMP)
DEBUG stream_writer.py:3384 remote_option[ZMP] = False
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:754 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2238 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1796 MSSP: {'PORT': ['2324', '2330', '2329', '2328', '2327', '2326', '2325', '23', '2323'], 'XTERM TRUE
COLORS': '1', 'RACES': '7', 'VT100': '0', 'GAMESYSTEM': 'Tick Based', 'MCCP': '1', 'UPTIME': '1775104457', 'HELPFILES':
'5596', 'MSP': '1', 'CHARSET': 'iso-8859-1', 'STATUS': 'Live', 'WEBSITE': 'http://coffeemud.net:27744/', 'CRAWL DELAY': '-1',
'OBJECTS': '697', 'CREATED': '2001', 'HOSTNAME': 'coffeemud.net', 'LOCATION': 'Texas', 'GENRE': 'Fantasy', 'MCP': '1',
'CODEBASE': 'CoffeeMUD v5.11.0.3', 'LANGUAGE': 'English', 'GAMEPLAY': ['Adventure', 'Social'], 'MXP': '1', 'PLAYERS': '15',
'EMAIL': 'ZAC@COFFEEMUD.NET', 'ICON': 'http://coffeemud.net:27744/images/cm.jpg', 'NAME': 'CoffeeMud Classic', 'INTERMUD':
['I3', 'Grapevine'], 'MOBILES': '151', 'CLASSES': '41', 'FAMILY': 'CoffeeMUD', 'CONTACT': 'ZAC@COFFEEMUD.NET', 'AREAS': '388',
'ANSI': '1', 'SKILLS': '2095', 'ROOMS': '31824', 'XTERM 256 COLORS': '1'}
DEBUG stream_writer.py:773 recv IAC DO NEW_ENVIRON
DEBUG stream_writer.py:1887 handle_do(NEW_ENVIRON)
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = True
DEBUG stream_writer.py:1024 send IAC WILL NEW_ENVIRON
DEBUG stream_writer.py:3384 pending_option[SB + NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 local_option[NEW_ENVIRON] = True
DEBUG stream_writer.py:3384 pending_option[WILL + NEW_ENVIRON] = False
DEBUG stream_writer.py:773 recv IAC DO TTYPE
DEBUG stream_writer.py:1887 handle_do(TTYPE)
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:1024 send IAC WILL TTYPE
DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3384 local_option[TTYPE] = True
DEBUG stream_writer.py:3384 pending_option[WILL + TTYPE] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:3384 pending_option[SB + TTYPE] = False
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:773 recv IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:2045 handle_will(MCCP2_COMPRESS)
DEBUG stream_writer.py:998 skip DO MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:773 recv IAC WILL MXP
DEBUG stream_writer.py:2045 handle_will(MXP)
DEBUG stream_writer.py:998 skip DO MXP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MXP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = False
DEBUG stream_writer.py:773 recv IAC WILL GMCP
DEBUG stream_writer.py:2045 handle_will(GMCP)
DEBUG stream_writer.py:998 skip DO GMCP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[GMCP] = True
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Hello IAC SE
DEBUG stream_writer.py:1072 send IAC SB GMCP Core.Supports.Set IAC SE
INFO client.py:201 GMCP handshake: Core.Hello + Core.Supports.Set ['Char 1', 'Char.Vitals 1', 'Char.Items 1', 'Room 1', 'Room.Info
1', 'Comm 1', 'Comm.Channel 1', 'Group 1']
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:773 recv IAC WILL MSP
DEBUG stream_writer.py:2045 handle_will(MSP)
DEBUG stream_writer.py:998 skip DO MSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = False
DEBUG stream_writer.py:773 recv IAC WILL MSDP
DEBUG stream_writer.py:2045 handle_will(MSDP)
DEBUG stream_writer.py:998 skip DO MSDP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSDP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:773 recv IAC WILL NAWS
DEBUG stream_writer.py:789 WILL NAWS unsolicited
DEBUG stream_writer.py:2045 handle_will(NAWS)
DEBUG stream_writer.py:2076 recv WILL NAWS on client end, refusing.
DEBUG stream_writer.py:3384 remote_option[NAWS] = False
DEBUG stream_writer.py:1024 send IAC DONT NAWS
DEBUG stream_writer.py:773 recv IAC WONT ECHO
DEBUG stream_writer.py:2199 handle_wont(ECHO)
DEBUG stream_writer.py:3384 remote_option[ECHO] = False
DEBUG stream_writer.py:3384 pending_option[DO + ECHO] = False
DEBUG stream_writer.py:773 recv IAC DO LINEMODE
DEBUG stream_writer.py:1887 handle_do(LINEMODE)
DEBUG stream_writer.py:3384 pending_option[WILL + LINEMODE] = True
DEBUG stream_writer.py:1024 send IAC WILL LINEMODE
DEBUG stream_writer.py:3384 pending_option[SB + LINEMODE] = True
DEBUG stream_writer.py:3384 local_option[LINEMODE] = True
DEBUG stream_writer.py:2816 slc_start: IAC SB LINEMODE SLC [..]
DEBUG stream_writer.py:2852 _slc_add (b'\x00', (^@, default))
DEBUG stream_writer.py:2805 send (slc_end): b'\x00\x03\x00'
DEBUG stream_writer.py:2811 slc_end: [..] IAC SE
DEBUG stream_writer.py:3384 pending_option[WILL + LINEMODE] = False
DEBUG stream_writer.py:773 recv IAC WILL MSSP
DEBUG stream_writer.py:2045 handle_will(MSSP)
DEBUG stream_writer.py:998 skip DO MSSP; pending_option = True
DEBUG stream_writer.py:3384 remote_option[MSSP] = True
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2238 [SB + TTYPE] unsolicited
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:767 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:754 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2238 [SB + TTYPE] unsolicited
DEBUG stream_writer.py:2404 recv TTYPE SEND: b''
DEBUG stream_writer.py:2416 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:773 recv IAC WONT NAWS
DEBUG stream_writer.py:2199 handle_wont(NAWS)
DEBUG stream_writer.py:3384 pending_option[DO + NAWS] = False
DEBUG stream_writer.py:773 recv IAC DONT LINEMODE
DEBUG stream_writer.py:2010 handle_dont(LINEMODE)
DEBUG stream_writer.py:3384 local_option[LINEMODE] = False
DEBUG stream_writer.py:767 begin sub-negotiation SB MCCP2_COMPRESS
DEBUG stream_writer.py:754 sub-negotiation cmd MCCP2_COMPRESS SE completion byte
DEBUG stream_writer.py:2238 [SB + MCCP2_COMPRESS] unsolicited
DEBUG stream_writer.py:3232 MCCP2 activated
DEBUG client_base.py:483 MCCP2 decompression started (server→client)
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'SB NEW_ENVIRON, SB LINEMODE'
DEBUG stream_writer.py:767 begin sub-negotiation SB GMCP
DEBUG stream_writer.py:754 sub-negotiation cmd GMCP SE completion byte
DEBUG stream_writer.py:2238 [SB + GMCP] unsolicited
DEBUG client.py:210 GMCP: comm.tick {}
DEBUG stream_writer.py:767 begin sub-negotiation SB GMCP
DEBUG stream_writer.py:754 sub-negotiation cmd GMCP SE completion byte
DEBUG stream_writer.py:2238 [SB + GMCP] unsolicited
DEBUG client.py:210 GMCP: char.status {'state': 1}
DEBUG stream_writer.py:1451 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:1451 IAC GA: Go-Ahead (unhandled).
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:1024 send IAC DO BINARY
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = True
DEBUG stream_writer.py:1024 send IAC DO SGA
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:1024 send IAC DO STATUS
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:1024 send IAC DO CHARSET
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = True
DEBUG stream_writer.py:1024 send IAC DO EOR
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:1024 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:773 recv IAC WILL BINARY
DEBUG stream_writer.py:2045 handle_will(BINARY)
DEBUG stream_writer.py:998 skip DO BINARY; pending_option = True
DEBUG stream_writer.py:3384 remote_option[BINARY] = True
DEBUG stream_writer.py:3384 pending_option[DO + BINARY] = False
DEBUG stream_writer.py:773 recv IAC WONT SGA
DEBUG stream_writer.py:2199 handle_wont(SGA)
DEBUG stream_writer.py:3384 remote_option[SGA] = False
DEBUG stream_writer.py:3384 pending_option[DO + SGA] = False
DEBUG stream_writer.py:773 recv IAC WONT STATUS
DEBUG stream_writer.py:2199 handle_wont(STATUS)
DEBUG stream_writer.py:3384 remote_option[STATUS] = False
DEBUG stream_writer.py:3384 pending_option[DO + STATUS] = False
DEBUG stream_writer.py:773 recv IAC WONT CHARSET
DEBUG stream_writer.py:2199 handle_wont(CHARSET)
DEBUG stream_writer.py:3384 remote_option[CHARSET] = False
DEBUG stream_writer.py:3384 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:773 recv IAC WONT EOR
DEBUG stream_writer.py:2199 handle_wont(EOR)
DEBUG stream_writer.py:3384 remote_option[EOR] = False
DEBUG stream_writer.py:3384 pending_option[DO + EOR] = False
DEBUG stream_writer.py:773 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2199 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3384 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3384 pending_option[DO + COM_PORT_OPTION] = False
DEBUG fingerprinting.py:849 connection for server fingerprint a7f16e7eba19a9ae
INFO client_base.py:122 Connection closed to <Peer 99.88.247.49 2327>
coffeemud.net:6502
Connection Banner:
Server URLs
- Telnet: telnet://coffeemud.net:6502
Server Info
Server Location: 🇺🇸 United States (GeoIP)
Telnet Fingerprint
This fingerprint is shared by 111 other servers.
The complete JSON record collected during the scan, including Telnet negotiation results and any MSSP metadata.
Show JSON
{
"server-probe": {
"fingerprint": "c2dd7d4e76383b41",
"fingerprint-data": {
"offered-options": [],
"probed-protocol": "server",
"refused-options": [],
"requested-options": [],
"scan-type": "quick"
},
"session_data": {
"banner_after_return": "\udcc7\udcc7\udcc7\udcc7\udcc7\udcc7\r\n[UNDEF'D STATEMENT] LINE 50090\r\nSTANDBY, RECORDING...\r\nELITE SOFTWARE\r\n1991 - 1993 RIP\r\nTUCSON, AZ 85741\r\n\r\n+++",
"banner_before_return": "\r\n\r\n\r\n\r\nCONNECTION!!!!!!\r\n\r\n\r\n\r\n\r\n\r\nHIT RETURN:",
"dsr_replies": 0,
"dsr_requests": 0,
"encoding": "ascii",
"option_states": {
"server_offered": {},
"server_requested": {}
},
"scan_type": "quick",
"timing": {
"probe": 0.0,
"total": 23.549176454544067
}
}
},
"sessions": [
{
"connected": "2026-04-07T07:05:47.043788+00:00",
"host": "coffeemud.net",
"ip": "99.88.247.49",
"port": 6502
}
]
}
Connection Log
Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.
Generated by telnetlib3-fingerprint
telnetlib3-fingerprint --loglevel=debug coffeemud.net 6502
Show Logfile
DEBUG client.py:1200 Fingerprint client: host=coffeemud.net port=6502
INFO client_base.py:190 Connected to <Peer 99.88.247.49 6502>
DEBUG stream_writer.py:3384 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:1024 send IAC WILL MXP
DEBUG stream_writer.py:3384 pending_option[WILL + ZMP] = True
DEBUG stream_writer.py:1024 send IAC WILL ZMP
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1024 send IAC WILL GMCP
DEBUG stream_writer.py:3384 pending_option[WILL + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC WILL AARDWOLF
DEBUG stream_writer.py:3384 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1024 send IAC WILL ATCP
DEBUG stream_writer.py:3384 pending_option[WILL + MSDP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSDP
DEBUG stream_writer.py:3384 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSSP
DEBUG stream_writer.py:3384 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1024 send IAC WILL MSP
DEBUG stream_writer.py:3384 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1024 send IAC DO MXP
DEBUG stream_writer.py:3384 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:1024 send IAC DO ZMP
DEBUG stream_writer.py:3384 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1024 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3384 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1024 send IAC DO GMCP
DEBUG stream_writer.py:3384 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1024 send IAC DO AARDWOLF
DEBUG stream_writer.py:3384 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1024 send IAC DO ATCP
DEBUG stream_writer.py:3384 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:1024 send IAC DO MSDP
DEBUG stream_writer.py:3384 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSSP
DEBUG stream_writer.py:3384 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1024 send IAC DO MSP
DEBUG client_base.py:534 negotiation failed after 4.00s.
DEBUG client_base.py:540 failed-reply: 'WILL MXP, WILL ZMP, WILL MCCP2_COMPRESS, WILL MCCP3_COMPRESS, WILL GMCP, WILL AARDWOLF,
WILL ATCP, WILL MSDP, WILL MSSP, WILL MSP, DO MXP, DO ZMP, DO MCCP2_COMPRESS, DO MCCP3_COMPRESS, DO GMCP, DO AARDWOLF, DO
ATCP, DO MSDP, DO MSSP, DO MSP'
DEBUG client_base.py:93 EOF from server, closing.
INFO client_base.py:122 Connection closed to <Peer 99.88.247.49 6502>
DEBUG fingerprinting.py:849 connection for server fingerprint c2dd7d4e76383b41